Spring
文章平均质量分 54
记录Spring的学习
「已注销」
这个作者很懒,什么都没留下…
展开
-
学习博客:【Spring】事务
声明式事务 一组业务 --> 一个业务 要么都成功,要么都失败 涉及到数据一致性问题 确保完整性和一致性 事务ACID原则 原子性:要么都成功,要么都失败 一致性:事务前后数据完整性一致 隔离性:多个用户可能操作同一个资源,防止数据损坏 持久性:一旦提交则不可逆,持久化到数据库中 Spring中的事务管理 声明式事务:AOP <!--配置声明式事务--> <bean id="transactionManager" class="org.springframew原创 2022-05-22 18:35:57 · 101 阅读 · 0 评论 -
学习博客:【Spring】整合MyBatis
整合MyBatis 步骤 导入 jar 包 junit mybatis mysql spring aop mybatis-spring <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.1</version>原创 2022-05-22 18:35:18 · 186 阅读 · 0 评论 -
学习博客:【Spring】AOP面向切面
AOP 面向切面编程 在Spring中,提供声明式事务,允许自定义切面 横切关注点:跨越app多个模块的方法或功能,与业务逻辑无关(日志、安全、缓存、事务等等) 切面:横切关注点被模块化的特殊对象,类 通知:切面必须完成的工作,类中的方法 日志:被通知的对象 代理:向目标对象应用通知之后创建的对象 切入点:切面通知执行的“地点”的定义 连接点:与切入点匹配的执行点 使用Spring 实现 AOP 导包 <!-- https://mvnrepository.com/artifact/org.aspe原创 2022-05-22 18:33:40 · 208 阅读 · 0 评论 -
学习博客:【Spring】代理模式
代理模式 Spring AOP的底层 SpringAOP SpringMVC 1. 静态代理 抽象角色:接口、抽象类 真实角色:被代理的绝色 代理角色:代理真实角色 客户:访问代理对象 步骤 接口 //租房 public interface Rent { public void rent(); } 真实角色 //房东 public class Host implements Rent{ public void rent() { System.原创 2022-05-22 18:32:51 · 170 阅读 · 0 评论 -
学习博客:【Spring】用Java的方式配置Spring
使用Java的方式配置Spring 完全不使用Spring的xml配置,全由java处理 JavaConfig 是 Spring 的一个子项目,在Spring 4 之后,成为核心功能 实体类 @Component public class User { private String name; public String getName() { return name; } @Value("杨杨") public void setName(Str原创 2022-05-22 18:31:51 · 257 阅读 · 0 评论 -
学习博客:【Spring】注解开发
使用注解开发 Spring 之后,导入 aop 的包才可以使用注解开发 约束 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.原创 2022-05-22 18:30:57 · 128 阅读 · 0 评论 -
学习博客:【Spring】bean的自动装配
bean的自动装配 自动装配是 Spring 满足 bean 依赖的一种方式 Spring 会在上下文中自动寻找,并自动给 bean 装配属性 在 Spring 中有三种装配方式 在xml中显式配置 在java中显式配置 隐式自动装配 1. 测试 环境搭建 public class Bired { public void behavior(){ System.out.println("fly"); } } public class Tiger { publi原创 2022-05-22 18:30:15 · 133 阅读 · 0 评论 -
学习博客:【Spring】依赖注入
DI 依赖注入 1. 构造器注入 2. Set方式注入(重点) 依赖注入:Set注入 依赖:bean 对象的创建依赖于容器 注入:bean 对象的所有属性由容器注入 搭建环境 复杂类型 public class Address { private String address; public String getAddress() { return address; } public void setAddress(String addres原创 2022-05-22 18:29:30 · 142 阅读 · 0 评论 -
学习博客:【Spring】配置
Spring 配置 1. 别名 <!--别名 也可以通过别名获取对象--> <alias name="user" alias="admin"/> 2. Bean的配置 <!-- id: bean的唯一标识符 相当于变量名 class: bean对象所对应的全限定名(包名+类名) name: 别名 可同时取多个别名 autowire: 自动导入 scope: 作用域 --> <bean id="user3" class原创 2022-05-22 18:27:31 · 136 阅读 · 0 评论 -
学习博客:【Spring】IOC创建对象
IOC 创建对象的方式 默认使用无参构造创建对象 若使用有参构造创建对象 下标赋值 <!--index 下标赋值--> <bean id="user" class="com.yl.pojo.User"> <constructor-arg index="0" value="上海"/> </bean> 类型匹配(不推荐) <!--type 类型匹配--> <bean id="user" class="com.y原创 2022-05-22 18:26:23 · 227 阅读 · 0 评论 -
学习博客:【Spring】IOC思想
原来的业务逻辑:用户调用业务层,不接触 dao 层 UserDao 接口 UserDaoImpl 实现类 UserService 业务接口 UserServiceImpl 业务实现类 用户需求的改变,会导致我们根据用户的需求修改原代码,在代码量很大的情况下,代价很大,此时控制权在码农这里 定义一个 Set 接口 //set动态实现值的注入 public void setUserDao(UserDao userDao) { this.userDao = userDao; } 通过 Set 注入原创 2022-05-18 23:57:36 · 278 阅读 · 0 评论