随笔分类 - spring框架
摘要:Spring事务处理方式 方式1:注解式事务 使用@Transactional注解完成事务控制,此注解可添加到类上,则对类中所有方法执行事务的设定,注解添加到方法上,则对该方法执行事务处理 @Transactional(...)注解参数说明: propagation = Propagation.RE
阅读全文
摘要:实体类 Account实体类 package com.example.pojo; public class Account { private Integer aid; private String aname; private String acontent; //getter,setter,无参
阅读全文
摘要:SM整合步骤 预期项目结构 新建数据库和数据表 springuser.sql脚本如下 create database ssm; use ssm; create table users( userid int primary key, uname varchar(20), upass varchar(
阅读全文
摘要:@After 作用 最终通知,不论程序前期执行成功还是失败,最后都要执行最终通知的切面功能 业务接口 package com.example.s04; /** * 业务接口 */ public interface SomeService { default String order(int orde
阅读全文
摘要:@Around 图示 环绕通知的切面参数就是目标方法本身 环绕通知的返回值就是目标方法的返回值,如果目标方法有返回值的话,可以对该返回值进行修改 不论目标方法的返回值是基本类型(8 + 1),还是引用类型,环绕通知对该返回值的修改都可以真正影响到目标方法的返回值 业务接口 package com.e
阅读全文
摘要:@AfterReturning 图解 后置通知的方法参数可以是目标方法的返回值,如果目标方法有返回值则可以获得该返回值 后置通知在获取到目标方法的返回值后,是否可以修改该返回值,从而真正影响到目标方法的返回值? 如果目标方法的返回值是基本数据类型(8 + 1),则影响不起作用 如果目标方法的返回值是
阅读全文
摘要:AspectJ框架 概述 AspectJ是一个优秀的面向切面编程的框架,他扩展了java语言,提供了强大的切面实现 本身是java语言开发的,可以对java语言面向切面编程进行无缝扩展 AOP常见术语分析 切面:那些重复的,公共的,通用的功能被称为切面,例如,日志,事务,权限等功能 连接点:实际就是
阅读全文
摘要:常见Spring内置AOP接口 Before通知 在目标方法被调用前调用, 切面需要实现的接口:org.springframework.aop.MethodBeforeAdvice After通知 在目标方法被调用后调用 切面需要实现的接口:org.springframework.aop.After
阅读全文
摘要:核心解读 AOP:Aspect Oriented Programming,面向切面编程 核心1:将公共的,通用的,重复的代码单独开发,在需要时反织回去 核心2:面向接口编程,即设置接口类型的变量,传入接口类型的参数,返回接口类型的返回值,调用接口类型的变量自身的实现方法 图示 图示分析:例如,在开发
阅读全文
摘要:为了方便复习与交流,整理了前6篇Spring博客(Spring 01 ~ Spring 06)主要内容的思维导图
阅读全文
摘要:优化基于xml的Spring项目配置文件 说明 对Spring博客集里(指Spring 02)基于xml的Spring接管下的三层项目构建进行优化改造,实现配置文件的拆分和整合 Spring中xml文件的头文件信息和beans标签内容如下,不再赘述,之后只说明核心标签的内容 <?xml versio
阅读全文
摘要:背景 用注解改造前面Spring博客集里(指 Spring 02)基于xml的Spring接管下的三层项目架构 对前面Spring博客集里(指 Spring 04)@Controller + @Service + @Repository 3个注解的用法进行演示 实现类 数据访问层 数据访问层的实现类
阅读全文
摘要:Spring中的IOC 一种思想,两种实现方式 IOC (Inversion of Control):控制反转,是一种概念和思想,指由Spring容器完成对象创建和依赖注入 核心业务:(a)对象的创建 (b)依赖的注入 2种实现方式 基于xml实现IOC 基于注解实现IOC 基于xml的IOC在前3
阅读全文
摘要:注入方式 具体有3种注入方式:通过构造方法的 a.参数名称注入 b.参数下标注入 c.默认参数顺序注入 参数名称注入 School实体类 package com.example.pojo03; public class School { private String name; private St
阅读全文
摘要:业务背景 需求:使用三层架构开发,将用户信息导入到数据库中 目标:初步熟悉三层架构开发 核心操作:开发两套项目,对比Spring接管下的三层项目构建和传统三层项目构建的区别 注意:本例中的数据访问层,先不连接数据库,只是进行简单数据模拟 非Spring接管下的三层项目构建 实体类 + 各访问层 实体
阅读全文
摘要:简介 Spring框架是一个容器,是整合其他框架的框架 他的核心是IOC(控制反转)和AOP(面向切面编程),由20多个模块构成,在很多领域都提供了优秀的问题解决方案 特点 轻量级:由20多个模块构成,每个jar包都很小,小于1M,核心包也就3M左右 代码污染小:Spring框架对程序员开发时的条条
阅读全文