![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring学习笔记
hanaii
这个作者很懒,什么都没留下…
展开
-
Spring_08_DI之Setter注入
DI Deoendence inject,依赖注入。 把对象的依赖关系全部交给Spring容器处理。 DI之Setter注入 BeanObject @Setter@ToString public class BeanObject implements IBeanObject { /* 简单值 */ private long sn; private Stri...原创 2018-09-08 11:06:03 · 189 阅读 · 0 评论 -
Spring_13_AOP_基本概念和xml配置
AOP是什么? Aspect Oriented Programming,即面向切面编程。 AOP把软件系统分为两个部分:核心关注点和横切关注点。 业务处理的主要流程是核心关注点,与之关系不大的部分是横切关注点。 横切关注点的一个特点是,他们经常发生在核心关注点的多处,而各处基本相似,比如权限认证、日志、事务。 AOP的作用在于分离系统中的各种关注点,将核心关注点和横切关注点分离开来。 ...原创 2018-09-15 10:21:57 · 172 阅读 · 0 评论 -
Spring_12_AOP的引出_装饰设计模式与代理机制
问题的引出 一些伪代码: public class AccountServiceImpl implements IAccountService{ /* 转账操作 */ public void transfer() { try{ // 开启事务 // 具体的转账业务操作 // 提交事务 }catch(Exception e){ /...原创 2018-09-13 15:39:49 · 142 阅读 · 0 评论 -
Spring_小结_IoC部分
IoC:inverse of control,控制反转。 简单来说,就是将对象的实例化工作交给容器来完成。 · xml方式 Spring_01_概述与Hello world Spring_02_配置文件_import和name Spring_03_Spring中的单元测试 Spring_04_提供的容器_BeanFactory与ApplicationContext Spring...原创 2018-09-07 16:35:28 · 93 阅读 · 0 评论 -
Spring_07_init-method与destroy-method
需求 在创建bean对象后,调用一个初始化方法完成bean的初始化工作。 在Spring正常销毁前,调用一个结束/销毁方法做一些清理工作。 配置<bean>的init-method和destroy-method属性 · 默认情况下,在对应属性下,分别配置初始化方法名和结束方法名即可。 BeanObject public class BeanObject implem...原创 2018-09-07 16:25:00 · 134 阅读 · 0 评论 -
Spring_06_对象的scope
需求 在Web应用中,持久层和业务层的对象一般都是单例的。 在Struct2中,每次请求的Action都是全新的对象。 <bean>中的scope属性中,可配置对象的生命范围。(在什么范围内拿到的bean对象是相同的) scope · singleton 在整个应用中,拿到的bean对象是单例的。 singleton是scope属性的默认值。 配置文件 &l...原创 2018-09-07 15:32:04 · 108 阅读 · 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 · 134 阅读 · 0 评论 -
Spring_对事务的支持
前文:Spring_基于Spring的JDBC 事务应该在哪一层? 前文中,我们知道Spring的JDBC会帮我们管理事务。 在这种情况下,会出现什么问题呢? 一些伪代码: public class AccountDaoImpl implements IAccountDao{ /* 转入 */ public void transin(Long inId,...原创 2018-09-17 14:26:56 · 156 阅读 · 0 评论 -
Spring_10_DI_基于注解注入
基于注解的注入,又称自动装配。 Spring提供的装配标签:@Autowired与@Qualifier 让Spring将属性需要的对象,从Spring容器中找出来,并注入给该属性。 · 配置 在测试环境中,可以不做任何配置,直接使用@Autowired。(在Spring3.0前必须配置) 非测试环境中,需进行配置: 1、新增命名空间,配置schema位置。 2、在&l...原创 2018-09-12 15:42:50 · 127 阅读 · 0 评论 -
Spring_基于Spring的JDBC
Spring的JDBC的有什么用? (打X表示要做的事) 使用了Spring的JDBC,我们只需要负责:配置数据库连接参数,定义SQL(包含设置参数),处理结果集。 Spring的JDBC大大简化了开发人员对数据库的操作,使得开发人员可以从繁琐的数据库操作中解脱出来, 从而将更多的精力投入到编写业务逻辑中。 Spring对ORM框架的支持 Sp...原创 2018-09-16 16:36:32 · 153 阅读 · 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 · 199 阅读 · 0 评论 -
Spring_04_提供的容器_BeanFactory与ApplicationContext
BeanFactory BeanFactory是Spring中提供的最简单、最基本的容器。 该容器只提供了IoC/DI的功能。 一般使用的是ApplicationContext。 ApplicationContext 是Spring提供的功能更加全面的的容器。 ApplicationContext接口继承了BeanFactory接口。 所以,ApplicationCOntext实...原创 2018-09-05 21:37:41 · 90 阅读 · 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 · 122 阅读 · 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 · 125 阅读 · 0 评论 -
Spring_01_概述与Hello world
概述 企业开发中,表现层和持久层中可替换的技术有很多。而在业务层中,基本都是使用Spring。 Spring 是轻量级的框架。 轻量级与重量级 1、轻量级是相对于重量级而言的。 轻量级一般就是非入侵性的、所依赖的东西、资源占用非常少、部署简单。 即较容易使用,而重量级正好相反。 2、相比传统的JavaEE项目。(即真正意义上的JavaEE规范,如EJB3.0,JPA,JMX,JMS,J...原创 2018-09-05 15:42:07 · 88 阅读 · 0 评论 -
Spring_小结_DI部分
DI:Dependence Inject 依赖注入,把对象的依赖关系全部交给容器处理。 Spring_08_DI之Setter注入 Spring_09_DI之构造器注入 Spring_10_DI_基于注解注入 使用XML配置文件注入的方式 · 使用构造方法注入 如果依赖的对象过多,构造方法的参数过长。 能保证构造方法中的参数都注入。 · 使用setter注入。 依赖对象过...原创 2018-09-08 13:04:47 · 117 阅读 · 0 评论 -
Spring_09_DI之构造器注入
前文:Spring_08_DI之Setter注入 DI之构造器注入 通过构造器的参数进行注入,Spring提供三种方式来匹配参数。 在<bean>的<constructor-arg>中,有下列三个属性。 name:通过参数名。 type:通过参数类型。 index:通过参数位置。(0开始) 即使在配置文件中,所配置的参数标签和构造器参数位置不一致,...原创 2018-09-08 11:50:19 · 152 阅读 · 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 · 193 阅读 · 0 评论