SSM-Spring-Spring装配Bean-通过注解装配Bean-使用@Component装配Bean

SSM-Spring-Spring装配Bean-通过注解装配Bean-使用@Component装配Bean​ 使用这种方式可以减少XML的配置,注解功能更加强大,可以实现XML的功能,还有自动装配的功能。​ 在Spring 中,提供两种方式让Spring IoC发现Bean:组件扫描:定义资源的方法,让容器扫描对应的包,从而把Bean装配进来。自动装配:通过注解定义,使得一些依赖可以通过注解完成现在主流的方式是:以注解为主,XML方式为辅使用@Component装配Bean@Compon
分类: 其他 发布时间: 04-03 10:24 阅读次数: 0

SSM-Spring-Spring装配Bean-通过注解装配Bean-自动装配@Autowired

SSM-Spring-Spring装配Bean-通过注解装配Bean-自动装配@Autowired​ 自动装配是由Spring自己发现对应的Bean,自动完成装配工作的方式, 用到一个十分常用的注解@Autowired,Spring会根据类型去寻找定义的Bean然后将其注入。接口:public interface RoleService2 { public void printRoleInfo();}实现类:@Component("RoleService2")public class
分类: 其他 发布时间: 04-03 10:24 阅读次数: 0

SSM-Spring-Spring装配Bean-通过注解装配Bean-自动装配的歧义性(@Primary和@Qualifie)

SSM-Spring-Spring装配Bean-通过注解装配Bean-自动装配的歧义性(@Primary和@Qualifie)注解@Primary​ 代表首要的,让容器通过一个接口或者抽象类注入对象,由于存在多个实现类或具体类,倒是无法判断。该注解告诉容器,优先使用该类注入@Component("roleService3")@Primarypublic class RoleServiceImpl3 implements RoleService{ //...}​ 代表了,如果存在多个
分类: 其他 发布时间: 04-03 10:24 阅读次数: 0

SSM-Spring-Spring装配Bean-通过注解装配Bean-装载带有参数构造方法类

SSM-Spring-Spring装配Bean-通过注解装配Bean-装载带有参数构造方法类​ 对于一些带参数的构造方法,允许通过注解进行注入:@Componentpublic class RoleController2{ private RoleService roleSercice=null; public RoleController2( @Autowired RoleService roleService){ this.roleSercice=roleServi
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-通过注解装配Bean-使用@Bean装配Bean

SSM-Spring-Spring装配Bean-通过注解装配Bean-使用@Bean装配Bean​ @Component 和 @Bean 是两种使用注解来定义bean的方式。@Component只能注解到类上,不能注解到方法上。大部分的开发都要引入第三方的包,且没有源码,这时候无法使用@Component注解。​ Spring给予一个注解@Bean,它可以注解到方法上,并且将方法返回的对象作为Spring的Bean存放在IOC容器中。@Bean(name="dataSource")public Da
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-通过注解装配Bean-注解自定义Bean的初始化和销毁方法

SSM-Spring-Spring装配Bean-通过注解装配Bean-注解自定义Bean的初始化和销毁方法​ 主要运用注解@Bean的配置,注解@Bean不能使用在类的标注上,它主要使用在方法上,@Bean配置包含4个项:name:是一个字符串数组,允许配置多个BeanNameautowire:标志是否是一个引用的Bean对象,默认值是Autowire.NOinitMethod:自定义初始化方法destroyMethod:自定义销毁方法​ 这样一个Spring Bean就可以注册到容器中,
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-装配混合使用-使用Profile

SSM-Spring-Spring装配Bean-装配混合使用-使用Profile​ 解决在不同环境中进行切换的需求,如开发人员与测试人员使用两套不一样的环境使用注解@Profile配置​ 使用@Profile配置两个数据库连接池,一个用于开发,一个用于测试@Componentpublic class ProfileDataSource { //开发环境 @Bean(name="devDataSource") @Profile("dev") public Data
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-装配混合使用

SSM-Spring-Spring装配Bean-装配混合使用​ Spring 同时支持两种方式的装配,可以自由选择,无论是注解还是XML方式,目的都是将Bean装配到Spring容器中,通过Spring容器去管理他们。​ 例如数据库池,DBCP数据库连接池是第三方定义的,我们没有办法给第三方加入注解,但可以选用XML方式<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property n
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-加载属性(properties)文件

SSM-Spring-Spring装配Bean-加载属性(properties)文件​ 使用properties属性文件可以减少硬编码,比如修改环境只需要修改配置文件就可以了,有效提高开发人员的便利性,在Spring中可以通过注解或者XML的方法进行加载属性文件使用注解的方式加载属性文件​ Spring 提供注解@PropertySource来加载属性文件,他的配置项:name:字符串,配置这次属性配置的名称value:字符串数组,配置多个属性文件ignoreResourceNotFound
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-条件化装配Bean

SSM-Spring-Spring装配Bean-条件化装配BeanSpring中提供了@Conditional注解实现条件化是否装配bean,这样可以根据条件动态的装配bean;要判定@Conditional 注解是否该装配bean还需要Condition 接口配合,我们只须实现 Condition 接口,重写matches 方法;根据matches方法返回的布尔值进行判定@Conditional是否需要装配bean//实现接口Conditionpublic class DataSourceC
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-Bean的作用域

SSM-Spring-Spring装配Bean-Bean的作用域Spring提供了4种作用域:单例(singleton):默认选项,在整个应用中,Spring只为其生成一个Bean的实例原型(prototype ):每次注入,或通过Spring IOC容器获取Bean时,Spring都会为它创建一个新对象会话(session):在WEB应用中使用,在会话过程中spring创建一个实例请求(request ):在WEB应用中使用,在一次请求中Spring会创建一个实例...
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring装配Bean-使用Spring表达式(Spring EL)

SSM-Spring-Spring装配Bean-使用Spring表达式(Spring EL)​ Spring EL功能:使用Bean的id引用Bean调用指定对象的方法和指定对象的属性进行运算提供正则表达式进行匹配集合配置Spring EL相关类ExpressionParser接口:一个表达式解析接口Spring EL还支持变量解析,需要用到一个接口EvaluationContext,他有一个实现类StandardEvaluationContextBean的属性和方法​ 使用
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spirng-面向切面编程-SpringAop基本概念

SSM-Spirng-面向切面编程-SpringAop基本概念​ Aop是通过动态代理模式,管控各个对象操作切面环境,管理包括日志,数据库事务等操作面向切面编程的术语切面(Aspect):能在被代理对象的方法之前,之后,产生异常或者返回正常值之后切入代码,甚至代替原来被代理对象的方法,在动态代理中可以理解成一个拦截器通知(Adice):是切面开启后,切面的方法。根据在代理对象真实方法调用前,后的顺序和逻辑区分。前置通知(before):在动态代理反射原有对象方法或执行围绕通知前执行的通知功能
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spirng-面向切面编程-使用@AspectJ注解开发SpringAoP

SSM-Spirng-面向切面编程-使用@AspectJ注解开发SpringAoP​ 使用@AspectJ注解的方式已经成为了主流。选择切点​ spring是方法级别的AOP框架,主要是以某个类的某个方法作为切入点,用动态代理的理论就是,要拦截哪个方法植入对应的AOP通知//创建一个接口public interface RoleService { public void printRole(Role role);}//实现类public class RoleServiceImpl
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spirng-面向切面编程-使用XML配置开发SpringAOP

SSM-Spirng-面向切面编程-使用XML配置开发SpringAOP​ XML需要引入AOP命名空间,AOP可配置元素:AOP 配置元素用途备注aop:advisor定义AOP的通知器老方式,少用aop:aspect定义一个切面aop:before定义前置通知aop:after定义后置通知aop:around定义环绕通知aop:after-retuming定义返回通知aop:after-throwing定义异常通知
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring和数据库编程-配置数据库资源

SSM-Spring-Spring和数据库编程-配置数据库资源使用简单的数据库配置​ Spring提供一个类SimpleDriverDataSource,它不支持数据库连接池,可以通过XML配置的方式配置它 <bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource"> <property name="driver" value="com.mys
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-Spring和数据库编程-JDBC代码时空的解决方案

SSM-Spring-Spring和数据库编程-JDBC代码时空的解决方案-jdbcTemplate​ jdbcTemplate是Spring针对JDBC代码失控提供的解决方案,在这个方案中体现了Spring框架的主导思想:给予常用技术提供模板化的编程,减少开发者的工作量配置: <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="d
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-MyBatisSpring项目-配置SqlSessionFactoryBean

SSM-Spring-MyBatisSpring项目-配置SqlSessionFactoryBean​ 从SqlSessionFactoryBean类中可以得出,它几乎可以配置所有有关Mybatis的组件,且提供对应setter方法让Spring去设置它,如下: <bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource"> <property name="url" value="jd
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-MyBatisSpring项目-配置SqlSessionTemplate组件

SSM-Spring-MyBatisSpring项目-配置SqlSessionTemplate组件​ 是一个线程安全的类,确保每个线程使用的SqlSession唯一且不冲突。提供一系列增删改查功能,使用前需要配置: <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg ref="SqlSesstionFactory">&lt
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0

SSM-Spring-MybatisSpring项目-配置MapperFactoryBean

SSM-Spring-MybatisSpring项目-配置MapperFactoryBean​ MapperFactoryBean可以通过配置来实现需要的Mapper,使用Mapper接口编程方式可以有效的在你的逻辑代码中擦除SqlSessionTemplate,这样代码就能按照面向对象的规范进行编写了。<bean id="roleMapper" class="org.mybatis.spring.mapper.MapperFactoryBean"> <!--RoleMappe
分类: 其他 发布时间: 04-03 10:23 阅读次数: 0