spring
水下鱼
这个作者很懒,什么都没留下…
展开
-
spring-12.事务
1.处理事务,需要怎么做,做什么 spring处理事务的模型,使用的步骤都是固定的,把事务使用的信息提供给spring就可以了 1.事务内部提交,回滚事务,使用的事务管理器对象,代替你完成commit,rollback。事务管理器是一个接口和他的众多实现类。 接口:PlatformTransactionManager,定义了事务重要方法commit,rollback 实现类:spring把每一种数据库访问技术对应的事务处理类都创建好了 mybatis访问数据库—spring创建的是DataSourceTr原创 2020-09-15 15:12:22 · 166 阅读 · 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接口和实现类,属性是dao 7.创建spring的配置文件:声明mybatis的对象原创 2020-09-15 10:20:00 · 105 阅读 · 0 评论 -
spring-10.切入点表达式
1.execution切入点表达式 execution(访问权限 方法返回值 方法申明(参数) 异常类型) 参数各部分用空格分隔开来,其中访问权限和异常类型可以省略 切入点表达式要匹配的对象为目标方法的方法名 * 表示0至多个任意字符 .. 用在方法参数中,表示任意多个参数,用在包名后,表示当前包及其子包路径 + 用在类名后,表示当前类及其子类,用在接口后表示当前接口及其实现类 2.使用aspectj实现aop的基本步骤 1.新建maven项目 2.加入依赖 1)spring依赖 2)aspec原创 2020-09-11 16:01:59 · 312 阅读 · 0 评论 -
spring-09.AOP
1.AOP(Aspect Orient Programming)面向切面编程 Aspect:切面,给你的目标类增加的功能就是切面,如日志、事务都是切面,切面的特点,一般都是非业务方法,独立使用的 Orient:面向,对着 Programming:编程 2.怎么理解面向切面编程: 需要在分析项目功能时,找出切面 合理的安排切面的执行时间(在目标方法前,还是在目标方法后) 合理的安全切面执行的位置,在哪个类,哪个方法增加增强功能 3.术语 Aspect:切面,表示增强的功能,就是一堆代码,完成某个功能,非业务原创 2020-09-10 11:54:55 · 81 阅读 · 0 评论 -
spring-08.动态代理实例
动态代理:可以在程序的执行过程中,创建代理对象 通过代理对象执行方法,给目标类的方法增加额外的功能 jdk动态代理实现步骤: 1.创建目标类,SomeServiceImpl目标类,给它的doSome,doOther增加输出时间、事务 2.创建InvocationHandler接口的实现类,在这个类实现给目标方法增加功能。 3.使用jdk中类Proxy,创建代理对象,实现创建对象的能力 创建接口,创建目标类实现接口 public interface SomeService { public voi原创 2020-09-09 19:02:45 · 191 阅读 · 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 · 91 阅读 · 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 · 98 阅读 · 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 · 177 阅读 · 0 评论 -
spring-07.动态代理
1.使用代理模式的作用 功能增强:在你原有的功能上,增加了额外的功能,新增的功能,叫做功能增强 控制访问:代理类不让你访问目标,例如商家不让用户访问厂家 2.静态代理 模拟一个用户购买U盘的行为 用户是客户端类 商家:代理,代理某个品牌的u盘 厂家:目标类 三者的关系:用户(客户端)–商家(代理)–厂家(目标) 实现步骤: 创建一个接口,定义卖U盘的方法,表示你的厂家和商家做的事情 创建厂家类,实现1步骤的接口 创建商家,就是代理,也需要实现1步骤的接口 创建客户端类,调用商家的方法买U盘 具体实现原创 2020-09-09 17:04:49 · 568 阅读 · 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 · 109 阅读 · 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 · 109 阅读 · 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 · 125 阅读 · 0 评论