----Spring
syrdbt
这个作者很懒,什么都没留下…
展开
-
Spring 事务失效的情况
1. 数据库引擎不支持事务以 MySQL 为例,MyISAM存储引擎不支持事务, InnoDB 引擎支持事务。2. @Transactional 注解修饰的方法为非public类型修饰的方法为非public类型时,IDEA 会提示有错误。3. 异常被catch执行以下测试方法,数据成功插入,没有回滚。 @Override @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED原创 2021-05-05 21:31:09 · 413 阅读 · 0 评论 -
Spring IoC(控制反转)、DI(依赖注入)
1. IoCIoC(Inversion of Control,控制反转) 面向对象的一种设计思想,很多语言的框架都使用了IoC这个设计思想,并非特属于Spring,其实现为将实例对象交给第三方容器管理,创建实例对象的时候,注入这些实例对象所依赖的实例对象,而不是在内部创建。所谓的内部创建如下所示,连接数据库的示例所示:/** * @author syrdbt * @date 2020-11-15 */public class DateSource { private String da原创 2020-11-15 13:39:30 · 298 阅读 · 0 评论 -
Spring 基于 xml 配置的声明式事务
1.测试一个没有事务的insert语句首先测试一个没有事务的insert语句,测试插入一条数据,测试成功,如下图所示,大家可以随便找一个之前的SSM来进行插入测试,这里测试的是 private ClassService classService;的insert方法。分析一下日志,如下所示,日志的全部分析见附录。--- 创建了数据库连接池DEBUG [...原创 2019-06-28 22:26:34 · 1444 阅读 · 0 评论 -
在 C/S 项目中使用 Spring + MyBatis
记录在 C/S 项目中使用 Spring +MyBatis 。1.在 C/S 项目中使用 Spring + MyBatis用了Spring + MyBatis之后就再也不想回到从前(未使用框架的)的时候,感谢开发这些框架的大神。进入正题,我们先回想一下B/S项目中使用SSM ,从网页输入信息,SpringMVC接受信息(Controller层),然后调用ser...原创 2019-06-28 18:20:53 · 832 阅读 · 0 评论 -
Spring 中控制反转 和 依赖注入 的区别和关系
控制反转 (IOC),面向对象的一种设计原则,目的是降低耦合度。依赖注入(DI)是实现控制反转的常见方式,控制反转的另外一种实现方式是依赖查找。控制反转中的控制指的是自己控制(创建)自己的成员变量,反转指的是由通过自己去控制(创建)成员变量变成由第三方来传递给自身,也就是第三方将自己的依赖(所需的成员变量)注入到自身。1.控制反转先描述一个场景:一个对象A要引用另外一个对象B,那...原创 2019-06-26 16:29:21 · 1469 阅读 · 0 评论 -
Spring中对Controller进行AOP切面编程无效问题解决
1.问题描述对Controller类进行切面编程,没有warning,没有error,一直无效。。。2.问题原因怀疑切点表达式错误(其实没错),切入点表达式如下所示: // 定义切点表达式 @Pointcut("execution(* com.wslxxy.controller.*.*(..))") private void myPointCut()...原创 2019-05-29 23:35:45 · 3517 阅读 · 0 评论 -
Spring的事务管理
1.事务概述1.1 事务的四个特性ACID 原子性(Automic): 事务作为一个整体被执行,包含在事务中对数据库的操作,要么全部被执行,要么全部不被执行。 一致性(Consistency): 事务应该保证数据库从一个一致状态转变为另外一个状态。 隔离性(Isolation): 多个事务并发执行时,一个事务的执行不应影响其他事务的执行。 持久性 (...原创 2019-05-29 21:12:23 · 165 阅读 · 0 评论 -
Spring五个事务隔离级别和七个事务传播行为
原文地址:https://yq.aliyun.com/articles/488931.脏读:脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。2.不可重复读:是指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两 次读数据之间,由于第...转载 2019-05-29 18:22:16 · 226 阅读 · 0 评论 -
BeanCreationException: Error creating bean with name 'org.springframework.aop.support.DefaultBeanFac
1. 错误信息如下所示在使用Spring的切面编程时发生错误:Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#0': Cannot resolve reference to bean 'txPointcut' while原创 2019-05-28 23:11:04 · 2483 阅读 · 2 评论 -
Spring AOP(面向切面编程)
1. 为什么需要切面编程如果要重复通用功能的话,最常见的面向对象的技术就是继承或委托。继承的缺点:整个工程中都是用相同的基类,会导致一个脆弱的对象体系。脆弱的简单例子,你修改基类中的方法名,则需要在每一个派生类中去修改调用。委托的缺点:可能需要对委托对象进行复杂的调用。切面提供了一种更加清晰简洁重复通用功能的功能。例:有几个类都需要在一个点执行一个相同的方法,可以把这个方法抽象成...原创 2019-04-21 15:15:15 · 266 阅读 · 0 评论 -
org.springframework.beans.factory.BeanCreationException:Error creating bean with name
1. 错误描述错误描述,运行测试类,测试Service类的时候报错:错误原因:错误具体描述如下:使用注解装配 bean时发生错误。 @Resource private TaskService taskService;2. 错误分析与解决错误分析:犯了一个很低级的错误,TaskServiceImpl没有去实现TaskService接口,如下图所示...原创 2019-05-02 11:49:13 · 100434 阅读 · 7 评论 -
Spring使用注解(Annotation)进行bean的装配总结+实例
1. 常用的注解常用的注解有如下几种:@Component、 @Repository 、@Service、 @Controller 、@Autowired 、@Resource 、@Qualifier。下面列出一个表格,详细的介绍一下它们。注解名称 注解描述 @Component 可以使用这个注解去描述Spring中的Bean,是一个泛化的概念,标注于Java类上,表示该...原创 2019-03-30 17:45:40 · 6845 阅读 · 2 评论 -
IntelliJ IDEA 创建 第一个 Spring 项目 (入门实例)
1.创建新工程先进入创建工程页面,点击File -> New -> Project,如图所示。 开始创建Spring工程,如下图所示,按次序点击,如图所示。 工程命名为spring01,点击Finish,点击完finish之后idea开始自动...原创 2019-02-17 22:44:30 · 6935 阅读 · 3 评论