spring学习
R...
这个作者很懒,什么都没留下…
展开
-
使用 AspectJ 的 AOP 配置管理事务
1.在pom.xml中加入aspectJ依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.a原创 2021-05-24 16:26:18 · 228 阅读 · 0 评论 -
使用spring的事务注解管理事务
待补充原创 2021-05-24 11:53:31 · 236 阅读 · 0 评论 -
Spring事务环境搭建
ch08-spring-trans: 做事务的环境项目实现步骤:1.新建maven项目2.加入maven的依赖 1)spring依赖 2)mybatis依赖 3)mysql驱动 4)spring的事务的依赖 5)mybatis和spring集成的依赖: mybatis官方体用的,用来在spring项目中创建mybatis 的SqlSesissonFactory,dao对象的3.创建实体类 Sale, Goods4.创建dao接口和mapper文件 Sale.原创 2021-05-24 11:32:43 · 91 阅读 · 0 评论 -
Spring和mybatis整合
ch07-spring-mybatis:spring和mybatis的集成步骤:1.新建maven项目2.加入maven的依赖 1)spring依赖 2)mybatis依赖 3)mysql驱动 4)spring的事务的依赖 5)mybatis和spring集成的依赖: mybatis官方提供的,用来在spring项目中创建mybatis 的SqlSesissonFactory,dao对象的3.创建实体类4.创建dao接口和mapper文件5.创建mybatis主.原创 2021-05-21 11:32:56 · 106 阅读 · 0 评论 -
cglib接口
(1)目标类没有接口,使用cglib动态代理,spring框架会自动应用cglibtest类package com.bjpowernode;import com.bjpowernode.ba07.SomeServiceImpl;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXm原创 2021-05-20 15:03:41 · 301 阅读 · 2 评论 -
@PointCut
package com.bjpowernode.ba06;import org.aspectj.lang.annotation.After;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Before;import org.aspectj.lang.annotation.Pointcut;/** * @Aspect : 是aspectj框架中的注解。 * 作用:表示当前.原创 2021-05-20 11:51:52 · 489 阅读 · 0 评论 -
MyBatis
MyBatis 解决的主要问题 减轻使用 JDBC 的复杂性,不用编写重复的创建 Connetion , Statement ; 不用编写关闭资源代码。 直接使用 java 对象,表示结果数据。让开发者专注 SQL 的处理。 其他分心的工作由 MyBatis 代劳。MyBatis 可以完成 1. 注册数据库的驱动,例如 Class.forName(“com.mysql.jdbc.Driver”)) 2. 创建 JDBC 中必须使用的 Connection , St...原创 2021-05-19 16:19:46 · 140 阅读 · 0 评论 -
SSM框架
SSM框架:Spring+SpringMVC+MyBatis1.1、Spring Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由RodJohnson在其著作ExpertOne-On-OneJ2EEDevelopmentandDesign中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端...原创 2021-05-19 16:09:03 · 114 阅读 · 0 评论 -
最终通知
1.重新定义SomeService接口和SomeServiceImpl类package com.bjpowernode.ba05;public interface SomeService { void doSome(String name,Integer age); String doOther(String name,Integer age); String doFirst(String name,Integer age); void doSecond()原创 2021-05-19 12:00:43 · 144 阅读 · 0 评论 -
异常通知
1.写SomeService接口和SomeServiceImpl类package com.bjpowernode.ba04;public interface SomeService { void doSome(String name,Integer age); String doOther(String name,Integer age); String doFirst(String name,Integer age); void doSecond();}原创 2021-05-19 11:35:15 · 109 阅读 · 0 评论 -
环绕通知
待补充原创 2021-05-19 11:21:23 · 830 阅读 · 0 评论 -
JointPoint
/** * 指定通知方法中的参数 : JoinPoint * JoinPoint:业务方法,要加入切面功能的业务方法 * 作用是:可以在通知方法中获取方法执行时的信息, 例如方法名称,方法的实参。 * 如果你的切面功能中需要用到方法的信息,就加入JoinPoint. * 这个JoinPoint参数的值是由框架赋予, 必须是第一个位置的参数 */ @Before(value = "execution(void *..Som.原创 2021-05-19 10:48:47 · 527 阅读 · 0 评论 -
后置通知
1.创建接口类和它的实现类package com.bjpowernode.ba02;public interface SomeService { void doSome(String name,Integer age); String doOther(String name,Integer age);}package com.bjpowernode.ba02;//目标类public class SomeServiceImpl implements SomeSer原创 2021-05-18 10:46:52 · 269 阅读 · 0 评论 -
使用aspectj实现aop的基本步骤(前置通知)
ch06-aop-aspectj: 使用aspectj框架实现aop。使用aop:目的是给已经存在的一些类和方法,增加额外的功能。 前提是不改变原来的类的代码。使用aspectj实现aop的基本步骤:1.新建maven项目2.加入依赖 1)spring依赖 2)aspectj依赖 3)junit单元测试3.创建目标类:接口和他的实现类。 要做的是给类中的方法增加功能4.创建切面类:普通类 1)在类的上面加入 @Aspect 2)在类中定义方法, 方法就是切面要.原创 2021-05-17 17:06:15 · 394 阅读 · 0 评论 -
AOP面向切面编程
原创 2021-05-17 09:48:58 · 59 阅读 · 0 评论 -
动态代理
原创 2021-05-13 16:20:58 · 58 阅读 · 0 评论 -
动态代理的实现
动态代理: 可以在程序的执行过程中,创建代理对象。通过代理对象执行方法,给目标类的方法增加额外的功能(功能增强)jdk动态代理实现步骤:1.创建目标类, SomeServiceImpl目标类,给它的doSome, doOther增加 输出时间, 事务。2.创建InvocationHandler接口的实现类, 在这个类实现给目标方法增加功能。3.使用jdk中 类Proxy,创建代理对象。 实现创建对象的能力。1.创建SomeService类和它的实现类package com.b..原创 2021-05-13 16:20:23 · 253 阅读 · 0 评论 -
XML和注解之间的对比
原创 2021-05-13 09:49:32 · 133 阅读 · 0 评论 -
基于注解的DI
原创 2021-05-13 09:42:47 · 66 阅读 · 0 评论 -
基于注解的DI
ch04-di-anno: 通过spring的注解完成java对象的创建,属性。代替xml文件实现步骤:1.加入依赖2.创建类,在类中加入注解3.创建spring的配置文件 声明组件扫描器的标签,指名注解在你的项目的中的位置。4.使用注解创建对象, 创建容器ApplicationContext遇到的问题和解决方法:https://blog.csdn.net/qq_44980029/article/details/1084555311.新建模块和配置文件,加入依赖<..原创 2021-05-13 09:38:35 · 75 阅读 · 0 评论 -
基于XML的DI
原创 2021-05-12 20:08:01 · 48 阅读 · 0 评论 -
如何使用Spring
原创 2021-05-12 20:01:25 · 70 阅读 · 0 评论 -
为应用指定多个Spring配置文件
1.新建包和文件2.配置文件spring-school.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springfram原创 2021-05-12 10:57:00 · 130 阅读 · 0 评论 -
基于XML的DI(引用类型属性自动注入)
1.byName方式自动注入java类中引用类型的属性名和spring容器中(配置文件)<bean>的id名称一样,且数据类型是一致的,这样的容器中的bean,spring能够赋值给引用类型。2.byType自动注入java类中引用类型的数据类型和spring容器中(配置文件)<bean>的class属性是同源关系的,这样的bean能够赋值给引用类型(1)java类中引用类型的数据类型和bean的class的值是一样的(2)java类中引用类型的数原创 2021-05-12 10:40:30 · 143 阅读 · 0 评论 -
基于xml的DI(set注入和构造注入)
1.新建模块ch02-di-xml2.新建类Student和配置applicationContext.xmlpackage com.bjpowernode.ba01;public class Student { private String name; private int age; public void setName(String name) { this.name = name; } public void setAge(原创 2021-05-12 09:56:47 · 161 阅读 · 0 评论 -
单元测试junit
1.加入junit依赖2.创建测试作用的类,叫做测试类 src/test/java目录中创建类3.创建测试方法(1)public方法(2)没有返回值 void(3)方法名称自定义,建议名称是test+你要测试的方法名称(4)方法没有参数(5)方法上面加入@Test,这样的方法是可以单独执行的,不用使用main方法package com.bjpowernode;import com.bjpowernode.ba01.Student;impo...原创 2021-05-10 09:57:38 · 70 阅读 · 0 评论 -
Spring的第一个程序
ch01-hello-spring: 使用的ioc, 由spring创建对象实现步骤1.创建maven项目2.加入maven的依赖 spring的依赖,版本5.2.5版本 junit依赖,为了测试3.创建类(接口和他的实现类) 和没有使用框架一样, 就是普通的类。4.创建spring需要使用的配置文件 声明类的信息,这些类由spring创建和管理5.测试spring创建的。1.新建工程spring-course2.新建模块,选择从骨架中创建3.配置模块的.原创 2021-05-08 16:30:26 · 94 阅读 · 0 评论 -
Spring的IOC
待补充原创 2021-05-08 11:27:28 · 58 阅读 · 0 评论 -
什么是Spring
原创 2021-05-08 10:41:09 · 87 阅读 · 0 评论