
Spring学习笔记
hanaii
这个作者很懒,什么都没留下…
展开
-
Spring_08_DI之Setter注入
DIDeoendence inject,依赖注入。把对象的依赖关系全部交给Spring容器处理。 DI之Setter注入BeanObject@Setter@ToStringpublic class BeanObject implements IBeanObject { /* 简单值 */ private long sn; private Stri...原创 2018-09-08 11:06:03 · 236 阅读 · 0 评论 -
Spring_13_AOP_基本概念和xml配置
AOP是什么?Aspect Oriented Programming,即面向切面编程。AOP把软件系统分为两个部分:核心关注点和横切关注点。业务处理的主要流程是核心关注点,与之关系不大的部分是横切关注点。横切关注点的一个特点是,他们经常发生在核心关注点的多处,而各处基本相似,比如权限认证、日志、事务。AOP的作用在于分离系统中的各种关注点,将核心关注点和横切关注点分离开来。...原创 2018-09-15 10:21:57 · 206 阅读 · 0 评论 -
Spring_12_AOP的引出_装饰设计模式与代理机制
问题的引出一些伪代码:public class AccountServiceImpl implements IAccountService{ /* 转账操作 */ public void transfer() { try{ // 开启事务 // 具体的转账业务操作 // 提交事务 }catch(Exception e){ /...原创 2018-09-13 15:39:49 · 168 阅读 · 0 评论 -
Spring_小结_IoC部分
IoC:inverse of control,控制反转。简单来说,就是将对象的实例化工作交给容器来完成。 · xml方式Spring_01_概述与Hello worldSpring_02_配置文件_import和nameSpring_03_Spring中的单元测试Spring_04_提供的容器_BeanFactory与ApplicationContextSpring...原创 2018-09-07 16:35:28 · 114 阅读 · 0 评论 -
Spring_07_init-method与destroy-method
需求在创建bean对象后,调用一个初始化方法完成bean的初始化工作。在Spring正常销毁前,调用一个结束/销毁方法做一些清理工作。 配置<bean>的init-method和destroy-method属性· 默认情况下,在对应属性下,分别配置初始化方法名和结束方法名即可。BeanObjectpublic class BeanObject implem...原创 2018-09-07 16:25:00 · 165 阅读 · 0 评论 -
Spring_06_对象的scope
需求在Web应用中,持久层和业务层的对象一般都是单例的。在Struct2中,每次请求的Action都是全新的对象。<bean>中的scope属性中,可配置对象的生命范围。(在什么范围内拿到的bean对象是相同的) scope· singleton在整个应用中,拿到的bean对象是单例的。singleton是scope属性的默认值。配置文件 &l...原创 2018-09-07 15:32:04 · 138 阅读 · 0 评论 -
Spring_11_使用注解简化IoC
使用注解简化IoC的相关配置使用注解来完成IoC,必须配置相关的解析器。· 必须的配置1、需要新增名字为context的命名空间,配置schema的位置。 2、配置解析器配置<context:component-scan>中的base-package属性。<context:component-scan>告诉Spring需要扫描使用注解管理的b...原创 2018-09-13 09:32:17 · 158 阅读 · 0 评论 -
Spring_对事务的支持
前文:Spring_基于Spring的JDBC 事务应该在哪一层?前文中,我们知道Spring的JDBC会帮我们管理事务。在这种情况下,会出现什么问题呢?一些伪代码:public class AccountDaoImpl implements IAccountDao{ /* 转入 */ public void transin(Long inId,...原创 2018-09-17 14:26:56 · 202 阅读 · 0 评论 -
Spring_10_DI_基于注解注入
基于注解的注入,又称自动装配。 Spring提供的装配标签:@Autowired与@Qualifier让Spring将属性需要的对象,从Spring容器中找出来,并注入给该属性。 · 配置在测试环境中,可以不做任何配置,直接使用@Autowired。(在Spring3.0前必须配置)非测试环境中,需进行配置:1、新增命名空间,配置schema位置。2、在&l...原创 2018-09-12 15:42:50 · 159 阅读 · 0 评论 -
Spring_基于Spring的JDBC
Spring的JDBC的有什么用?(打X表示要做的事)使用了Spring的JDBC,我们只需要负责:配置数据库连接参数,定义SQL(包含设置参数),处理结果集。 Spring的JDBC大大简化了开发人员对数据库的操作,使得开发人员可以从繁琐的数据库操作中解脱出来,从而将更多的精力投入到编写业务逻辑中。 Spring对ORM框架的支持 Sp...原创 2018-09-16 16:36:32 · 198 阅读 · 0 评论 -
Spring_05_实例化的时机与方式
实例化的时机容器在什么时候实例化bean?存在一个Bean对象public class BeanObject implements IBeanObject { public BeanObject(){ System.out.println("new BeanObject"); }} · 对于BeanFactory在容器启动后,要使用到be...原创 2018-09-06 09:15:04 · 238 阅读 · 0 评论 -
Spring_04_提供的容器_BeanFactory与ApplicationContext
BeanFactoryBeanFactory是Spring中提供的最简单、最基本的容器。该容器只提供了IoC/DI的功能。一般使用的是ApplicationContext。 ApplicationContext是Spring提供的功能更加全面的的容器。ApplicationContext接口继承了BeanFactory接口。所以,ApplicationCOntext实...原创 2018-09-05 21:37:41 · 114 阅读 · 0 评论 -
Spring_03_Spring中的单元测试
Spring在传统的单元测试下的问题1、需要手动的启动Spring容器。2、没有正确的关闭Spring容器。3、每运行一个测试用例(测试方法),相当于要重启一次Spring。4、Junit在管理Spring(与我们的目的相反)。 推荐基于Spring的测试相关jar包test、context、expression、aop注解配置1、在测试类上标注@RunWith...原创 2018-09-05 19:25:49 · 156 阅读 · 0 评论 -
Spring_02_配置文件_import和name
前文:Spring_概述与Hello world import为方便管理配置文件,推荐使用import来规划配置文件。在applicationContext.xml中,通过配置<import>的resource来导入配置文件。1、默认情况下,是使用相对路径来寻找配置文件。(相对于applicationContext.xml)2、Spring提供了前缀标记用于...原创 2018-09-05 16:07:09 · 151 阅读 · 0 评论 -
Spring_01_概述与Hello world
概述企业开发中,表现层和持久层中可替换的技术有很多。而在业务层中,基本都是使用Spring。Spring 是轻量级的框架。轻量级与重量级1、轻量级是相对于重量级而言的。轻量级一般就是非入侵性的、所依赖的东西、资源占用非常少、部署简单。即较容易使用,而重量级正好相反。2、相比传统的JavaEE项目。(即真正意义上的JavaEE规范,如EJB3.0,JPA,JMX,JMS,J...原创 2018-09-05 15:42:07 · 111 阅读 · 0 评论 -
Spring_小结_DI部分
DI:Dependence Inject依赖注入,把对象的依赖关系全部交给容器处理。Spring_08_DI之Setter注入Spring_09_DI之构造器注入Spring_10_DI_基于注解注入 使用XML配置文件注入的方式· 使用构造方法注入如果依赖的对象过多,构造方法的参数过长。能保证构造方法中的参数都注入。· 使用setter注入。依赖对象过...原创 2018-09-08 13:04:47 · 150 阅读 · 0 评论 -
Spring_09_DI之构造器注入
前文:Spring_08_DI之Setter注入 DI之构造器注入通过构造器的参数进行注入,Spring提供三种方式来匹配参数。在<bean>的<constructor-arg>中,有下列三个属性。name:通过参数名。type:通过参数类型。index:通过参数位置。(0开始) 即使在配置文件中,所配置的参数标签和构造器参数位置不一致,...原创 2018-09-08 11:50:19 · 182 阅读 · 0 评论 -
Spring_14_AOP_注解配置
前文:Spring_13_AOP_基本概念和xml配置 xml配置文件中配置AOP的自动代理<aop:aspectj-autoproxy /> AOP相关注解· @Aspect标注在类上。声明该类为切面。即增强类。该类必须有对应的bean配置。相当于<aop:aspect ref = "bean id"> · @...原创 2018-09-15 11:07:45 · 221 阅读 · 0 评论