![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring
水下鱼
这个作者很懒,什么都没留下…
展开
-
spring-12.事务
1.处理事务,需要怎么做,做什么spring处理事务的模型,使用的步骤都是固定的,把事务使用的信息提供给spring就可以了1.事务内部提交,回滚事务,使用的事务管理器对象,代替你完成commit,rollback。事务管理器是一个接口和他的众多实现类。接口:PlatformTransactionManager,定义了事务重要方法commit,rollback实现类:spring把每一种数据库访问技术对应的事务处理类都创建好了mybatis访问数据库—spring创建的是DataSourceTr原创 2020-09-15 15:12:22 · 157 阅读 · 0 评论 -
spring-11.整合mybatis
1.步骤1.新建maven项目2.加入maven依赖1)spring依赖2)mybatis依赖3)mysql驱动4)spring的事务的依赖5)mybatis和spring集成的依赖:mybatis官方体用的,用来在spring项目中创建mybatis的SQLSessionFactory,dao对象3.创建实体类4.创建dao接口和mapper文件5.创建mybatis主配置文件6.创建Service接口和实现类,属性是dao7.创建spring的配置文件:声明mybatis的对象原创 2020-09-15 10:20:00 · 98 阅读 · 0 评论 -
spring-10.切入点表达式
1.execution切入点表达式execution(访问权限 方法返回值 方法申明(参数) 异常类型)参数各部分用空格分隔开来,其中访问权限和异常类型可以省略切入点表达式要匹配的对象为目标方法的方法名 * 表示0至多个任意字符 .. 用在方法参数中,表示任意多个参数,用在包名后,表示当前包及其子包路径 + 用在类名后,表示当前类及其子类,用在接口后表示当前接口及其实现类2.使用aspectj实现aop的基本步骤1.新建maven项目2.加入依赖1)spring依赖2)aspec原创 2020-09-11 16:01:59 · 301 阅读 · 0 评论 -
spring-09.AOP
1.AOP(Aspect Orient Programming)面向切面编程Aspect:切面,给你的目标类增加的功能就是切面,如日志、事务都是切面,切面的特点,一般都是非业务方法,独立使用的Orient:面向,对着Programming:编程2.怎么理解面向切面编程:需要在分析项目功能时,找出切面合理的安排切面的执行时间(在目标方法前,还是在目标方法后)合理的安全切面执行的位置,在哪个类,哪个方法增加增强功能3.术语Aspect:切面,表示增强的功能,就是一堆代码,完成某个功能,非业务原创 2020-09-10 11:54:55 · 72 阅读 · 0 评论 -
spring-08.动态代理实例
动态代理:可以在程序的执行过程中,创建代理对象通过代理对象执行方法,给目标类的方法增加额外的功能jdk动态代理实现步骤:1.创建目标类,SomeServiceImpl目标类,给它的doSome,doOther增加输出时间、事务2.创建InvocationHandler接口的实现类,在这个类实现给目标方法增加功能。3.使用jdk中类Proxy,创建代理对象,实现创建对象的能力创建接口,创建目标类实现接口public interface SomeService { public voi原创 2020-09-09 19:02:45 · 178 阅读 · 0 评论 -
spring-05.配置文件
1.多个配置文件优势每个文件的大小比一个文件要小很多,效率高避免多人竞争带来的冲突如果项目中有多个模块(相关功能在一起),一个模块一个配置文件2.多文件的分配方式:按功能模块,一个模块一个配置文件按类的功能,数据库相关的配置一个配置文件,做事务的功能一个配置文件,做servlet功能的一个配置文件等3.实现步骤新建student的配置文件,spring-student.xml <bean id="myStudent" class="com.chongqing.ba06.S原创 2020-09-08 11:45:56 · 81 阅读 · 0 评论 -
spring-04.自动注入
1.byname(按名称注入):java类中引用类型的属性名和spring容器中(配置文件)的id名称一样,且数据类型是一致的,这样的容器中的bean,spring能够赋值给引用类型。 <bean id="myStudent" class="com.chongqing.ba04.Student" autowire="byName"> <property name="name" value="张三"/> <property name="age" va原创 2020-09-08 11:09:38 · 86 阅读 · 0 评论 -
spring-06.注解
基于注解的di:通过注解完成java对象创建,属性赋值使用注解的步骤:1.加入maven的依赖,spring-context,在加入spring-context的同时,间接加入spring-aop的依赖使用注解必须使用spring-aop依赖2.在类中加入spring的注解(多个)3.在spring的配置文件中,加入一个组件扫描器的标签,说明注解在你项目中的位置要学习的注解@Component@Respotory@Service@Controller@Value@Autowored@原创 2020-09-08 18:01:30 · 161 阅读 · 0 评论 -
spring-07.动态代理
1.使用代理模式的作用功能增强:在你原有的功能上,增加了额外的功能,新增的功能,叫做功能增强控制访问:代理类不让你访问目标,例如商家不让用户访问厂家2.静态代理模拟一个用户购买U盘的行为用户是客户端类商家:代理,代理某个品牌的u盘厂家:目标类三者的关系:用户(客户端)–商家(代理)–厂家(目标)实现步骤:创建一个接口,定义卖U盘的方法,表示你的厂家和商家做的事情创建厂家类,实现1步骤的接口创建商家,就是代理,也需要实现1步骤的接口创建客户端类,调用商家的方法买U盘具体实现原创 2020-09-09 17:04:49 · 560 阅读 · 0 评论 -
spring-01.ioc的技术实现di
1.容器:是一个服务器软件,一个框架(spring)2.为什么要使用ioc:目的是减少对代码的改动,也能实现不同的功能,实现解耦合3.java创建对象有哪些方式:构造方法反射序列化克隆ioc,容器创建对象动态代理4.ioc的体现以servlet为例创建类继承HttpServlet在web.xml注册servlet<servlet-name>helloServlet</servlet-name><servlet-cl原创 2020-09-07 10:32:47 · 93 阅读 · 0 评论 -
spring-02.创建对象
实现步骤:创建maven项目加入maven的依赖;spring的依赖,Junit依赖spring依赖 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.5.RELEASE</version> </dependen原创 2020-09-07 14:35:32 · 96 阅读 · 0 评论 -
spring-03.di注入实现
1.di:依赖注入,表示创建对象,给属性赋值2.di的实现有两种:在spring的配置文件中,使用标签和属性完成,叫做基于xml的di实现使用spring中的注解,完成属性赋值,叫做基于注解的di实现3.di的语法分类:set注入(设置注入):spring调用类的set方法,在set方法可以实现属性的赋值,80%左右使用的set注入构造注入,spring调用类的有参数构造方法,创建对象,在构造方法中完成赋值4.set基本类型赋值创建Student类public class S原创 2020-09-07 16:42:42 · 116 阅读 · 0 评论