spring自定义注解

Spring Boot shiro+cas单点登录

夙愿已清 提交于 2020-02-16 23:27:53
Spring Boot shiro+cas单点登录 搭建Cas服务器 客户端 pom.xml 继承CasRealm application.yml UrlBean ShiroConfig 遗留问题??? 项目架构 2.1.11.RELEASE 项目源码 https://github.com/jsong93/Spring-Boot-shiro-cas-sso.git 根据SpringMVC项目改写 SpringMVC shiro+cas 单点登录 搭建Cas服务器 cas服务器搭建 md5+盐加密 客户端 pom.xml <?xml version="1.0" encoding="UTF-8"?> < project xmlns = " http://maven.apache.org/POM/4.0.0 " xmlns: xsi = " http://www.w3.org/2001/XMLSchema-instance " xsi: schemaLocation = " http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd " > < modelVersion > 4.0.0 </ modelVersion > < groupId > com.jsong.wiki </

Spring常用注解

吃可爱长大的小学妹 提交于 2020-02-14 04:57:16
参考: https://www.cnblogs.com/xdp-gacl/p/3495887.html 使用注解来构造IoC容器 用注解来向 Spring 容器注册 Bean 。需要在 applicationContext.xml 中注册 <context:component-scan base-package=”pagkage1[,pagkage2,…,pagkageN]”/> 。 如:在base-package指明一个包 1 <context:component-scan base-package="cn.gacl.java"/> 表明 cn.gacl.java 包及其子包中,如果某个类的头上带有特定的注解【@Component/@Repository/@Service/@Controller】,就会将这个对象作为Bean注册进Spring容器。也可以在<context:component-scan base-package=” ”/>中指定多个包,如: 1 <context:component-scan base-package="cn.gacl.dao.impl,cn.gacl.service.impl,cn.gacl.action"/> 多个包逗号隔开。 1、@Component @Component 是所有受 Spring 管理组件的通用形式,

Spring的生命周期

烈酒焚心 提交于 2020-02-13 11:33:26
文章目录 1. 什么是Bean的生命周期 2.生命周期--初始化与销毁1(正规军) 单例: 多例: 3. 生命周期—初始化与销毁2 4. 生命周期---初始化与销毁3 5. 生命周期-BeanPostProcessors 6. 六种销毁创建同时定义的情况 1. 什么是Bean的生命周期 Bean的生命周期是指Bean创建–》初始化–》销毁的过程 我们可以自定义Bean的初始化和销毁方法 容器在bean进行到当前生命周期的时候,来调用自定义的初始化和销毁方法 2.生命周期–初始化与销毁1(正规军) 指定初始化init-method方法 指定销毁destory-method方法 public class Bike { public Bike ( ) { System . out . println ( "Bike constructor..............." ) ; } public void init ( ) { System . out . println ( "Bike...........init........." ) ; } public void destroy ( ) { System . out . println ( "Bike....... destroy........." ) ; } } 单例: @Configuration public class

JavaEE与Spring

只谈情不闲聊 提交于 2020-02-13 10:47:01
JavaEE与Spring 在 Java 社区中,Spring与 Java EE 之争是个永恒的话题。在这场争论中,来自两个阵营的布道师、 架构 师 与铁杆粉丝都在不遗余力地捍卫着本方的尊严,并试图说服对方加入到自己的阵营当中,但结果却是双方都很难说服对方,每一方都有充分的理由表明自己的选择是 正确的。参与到这场争论的有一些架构师,他们负责着平台的选择。那么对于普通开发者来说该如何思考这场旷日持久的Spring与Java EE之争呢? Siva是一位充满激情的Java开发者、开源布道师、知名博主,擅长Java、Struts、 hibernate 、 Spring等各项技术与框架。Siva既使用过Spring,也使用过Java EE,但他既不是Spring的铁杆粉丝,也不是Java EE的忠实追求者。相反,他对于Spring与Java EE有着自己的理解和认识,并且在项目当中会根据具体需求选择适合的技术。近日,Siva 分享 了他对于Spring与Java EE的一些认识和理解,希望能对各位读者起到帮助作用。 业务方面 在很多组织中,技术选择并不完全是由开发者决定的。具体来说,如果你工作在一家大型的企业组织中,那么极有可能会有一个专门的架构师团队负责决定在项目中该使用什么平台、框架与库。除此之外,大型企业在选择技术平台时还会考虑如下几个方面: 平台、语言、框架与库的成熟度 商业支持

第三章 最小化SpringXml 配置

左心房为你撑大大i 提交于 2020-02-13 07:37:37
自动装配(autowiring):有助于减少甚至消除<property>元素和<constructor-arg>元素,让spring自动识别如何装配Bean的依赖关系。 自动检测(autodiscovery):比自动装配更进一步,让spring能够自动识别哪些类需要被装配成sping Bean ,从而减少对<bean>元素的使用。 3.1 自动装配Bean属性 3.1.1 4种类型的自动装配   byName——把与Bean的属性具有相同的名字(或者ID)的其他Bean自动装配到Bean对应的属性中。如果没有跟属性的名字像匹配的Bean,则该属性不进行装配。   byType——把与Bean的属性具有相同类型的其他Bean自动装配到Bean的对应属性中,若果没有跟属性的类型相匹配的bean,则该属性不被装配。   constructor——把与Bean的构造器入参具有相同类型的其他Bean自动装配到Bean构造器的对应参数中。   autodetect——首先尝试使用constructor进行自动装配,如果失败,再尝试使用byType进行自动装配。   byName自动装配: 1 <!-- byName自动装配 2 缺点:若是有多个音乐家需要装配instrument属性,则他们就会公用一个Saxopbone(即多个bean的属性被同一个bean赋值) 3 --> 4 <!--

springboot-自动装配

主宰稳场 提交于 2020-02-12 17:42:35
Spring 模式注解 模式注解是一种用于声明在应用中扮演“组件”角色的注解。如 Spring Framework 中的 @Repository 标注在任何类上 ,用 于扮演仓储角色的模式注解。 @Component 作为一种由 Spring 容器托管的通用模式组件,任何被 @Component 标注的组件均为组件扫描的候选对象。凡是被 @Component 元标注的注解标注时,如 @Service ,也被视作组件扫 描的候选对象。 装配方式 @ComponentScan 方式 @ ComponentScan ( basePackages = "com.dive.in.spring.boot" ) public class SpringConfiguration { ... } Spring @Enable 模块装配 Spring Framework 3.1 开始支持”@Enable 模块驱动“。所谓“模块”是指具备相同领域的功能组件集合, 组合所形成一个独立 的单元。比如 Web MVC 模块(@EnableWebMvc)、AspectJ代理模块(@EnableAspectJAutoProxy) 等。 自定义 @Enable 模块 HelloWorldConfiguration: public class HelloWorldConfiguration { @Bean

spring自定义注解及其处理

可紊 提交于 2020-02-12 12:28:25
第一步定义一个注解。 第二步处理被注解的类,在处理时,可以实现两个类ApplicationListener, ApplicationContextAware: @Configuration public class CreateIndex implements ApplicationListener, ApplicationContextAware { @Autowired ElasticsearchIndex elasticsearchIndex; private Logger logger = LoggerFactory.getLogger(this.getClass()); private ApplicationContext applicationContext; /** * 扫描ESMetaData注解的类,并自动创建索引mapping * @param event */ @Override public void onApplicationEvent(ApplicationEvent event) { Map<String, Object> beansWithAnnotationMap = this.applicationContext.getBeansWithAnnotation(ESMetaData.class); beansWithAnnotationMap

Spring的事物实现方式

一笑奈何 提交于 2020-02-12 11:50:51
Spring事务的实现方式主要有以下4种: 1)编程式事务:代码中显式调用beginTransaction()、commit()、rollback()等事务管理相关的方法; 2)基于 TransactionProxyFactoryBean的声明式事务管理; 3)基于 @Transactional 的声明式事务管理; 4)基于Aspectj AOP配置事务。 举例说明事务的不同实现: 说明:编程式事务基本已经淘汰。 /** * 账户对象 * */ public class Account { private int accountid; private String name; private String balance; public int getAccountid() { return accountid; } public void setAccountid(int accountid) { this.accountid = accountid; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getBalance() { return balance; } public void

Spring(03)Spring IOC 概述

南楼画角 提交于 2020-02-11 22:30:43
目录 Spring(03)Spring IOC 概述 1. Spring IoC 依赖查找 1.1 根据 Bean 名称查找 1.2 根据 Bean 类型查找 1.3 根据 Bean 名称 + 类型查找 1.4 根据 Java 注解查找 2. Spring IoC 依赖注入 2.1 根据 Bean 名称注入 2.2 根据 Bean 类型注入 2.3 注入容器內建 Bean 对象 2.4 注入非 Bean 对象 2.5 注入类型 2.6 注入模式 3. Spring IoC 依赖来源 4. Spring IoC 配置元信息 5. Spring IoC 容器 6. Spring 应用上下文 7. Spring IoC 容器生命周期 8. 面试题精选 Spring(03)Spring IOC 概述 Spring 核心编程思想目录: https://www.cnblogs.com/binarylei/p/12290153.html 1. Spring IoC 依赖查找 1.1 根据 Bean 名称查找 实时查找 User user = (User) beanFactory.getBean("user"); 延迟查找 bean 配置如下: <bean id="user1" class="com.binarylei.spring.ioc.bean.User" lazy-init="true"/

Spring(04)Spring Bean 基础

风格不统一 提交于 2020-02-11 22:30:29
目录 Spring(04)Spring Bean 基础 1. 定义 Spring Bean 2. BeanDefinition 元信息 3. 命名 Spring Bean 3.1 Bean 的名称 3.2 Bean 名称生成器(BeanNameGenerator) 4. Spring Bean 的别名 5. 注册Spring Bean 5.1 BeanDefinition 注册 5.2 外部单例对象注册 6. 实例化 Spring Bean 7. 初始化 Spring Bean 8. 延迟初始化 Spring Bean 9. 销毁 Spring Bean 10. 垃圾回收 Spring Bean 11. 面试题精选 Spring(04)Spring Bean 基础 Spring 核心编程思想目录: https://www.cnblogs.com/binarylei/p/12290153.html 1. 定义 Spring Bean BeanDefinition 是 Spring Framework 中定义 Bean 的配置元信息接口,包含: Bean 的类名 Bean 行为配置元素,如作用域、自动绑定的模式,生命周期回调等 其他 Bean 引用,又可称作合作者(collaborators)或者依赖(dependencies) 配置设置,比如 Bean 属性(Properties)