文章分类 -  spring

摘要:spring-context:应用上下文(可以将IOC和AOP核心依赖引入进来) spring-aspects:AOP切面(标记组件为切面) druid:数据源 / 也可以用c3p0代替 orm:Spring在执行持久化操作,与持久化层技术进行整合过程中,需要使用orm,jdbc,tx三个jar包 阅读全文
posted @ 2022-11-27 22:00 zjw_rp 阅读(149) 评论(0) 推荐(0) 编辑
摘要:基于注解的声明式事务 模拟场景:用户买书 具体操作:先把价格查出来,在更新图书的库存,最后更新用户的余额, 也有可能库存不够的情况,或者余额不足,通过余额不够的情况测试声明式事务。 如果库存或余额不够的话,数据库层面不会报错,所以不符合业务逻辑, 所以得库存或者余额不够就不能让买,这就符合了。提交或 阅读全文
posted @ 2022-11-26 20:09 zjw_rp 阅读(189) 评论(0) 推荐(0) 编辑
摘要:声明式事务 1 . 编程式事务 事务功能的相关操作全部通过自己编写代码来实现: Connection conn = ...;try { // 开启事务:关闭事务的自动提交 conn.setAutoCommit(false); // 核心操作 // 提交事务 conn.commit();}catch( 阅读全文
posted @ 2022-11-24 21:09 zjw_rp 阅读(36) 评论(0) 推荐(0) 编辑
摘要:JdbcTeplate Spring 框架对 JDBC 进行封装,使用 JdbcTemplate 方便实现对数据库操作。 准备工作: 引入相关依赖 <!-- Spring 持久化层支持jar包 --> <!-- Spring 在执行持久化层操作、与持久化层技术进行整合过程中,需要使用orm、jdbc 阅读全文
posted @ 2022-11-23 22:47 zjw_rp 阅读(144) 评论(0) 推荐(0) 编辑
摘要:注解的AOP切入点表达式和重用以及获取连接点的信息 1 . 准备工作 ① 添加依赖 在ioc所需依赖基础上再加入下面依赖即可: 就是所实现的aop也是在ioc容器的基础上实现的。 所以spring最重要的核心就是ioc。 <!-- https://mvnrepository.com/artifact 阅读全文
posted @ 2022-11-19 22:34 zjw_rp 阅读(167) 评论(0) 推荐(0) 编辑
摘要:AOP概念及相关术语 AOP是一种设计思想,是软件设计领域中的面向切面编程,是面向对象编程的一种补充和完善。 1 . AOP的作用 下面两点是同一件事的两面,一枚硬币的两面: 代码简化:把方法中固定位置的重复的代码抽取出来,让被抽取的方法更专注于自己的核心功能,提高内聚性。 代码增强:把特定的功能封 阅读全文
posted @ 2022-11-19 20:39 zjw_rp 阅读(329) 评论(0) 推荐(0) 编辑
摘要:动态代理 不需要手动创建动态代理类,而是通过jdk中提供的API然后动态的为某个目标类创建所对应动态代理类。 jdk提供的API带代码运行的过程中动态的创建每一个目标类所对应的动态代理类。 JDK本身就支持动态代理,这是反射技术的一部分。 下面创建一个代理类(生产代理对象的工厂类): package 阅读全文
posted @ 2022-11-18 22:33 zjw_rp 阅读(124) 评论(0) 推荐(0) 编辑
摘要:代理模式 什么是代理模式:对目标对象去创建一个所对应的代理类(对象) ,每次访问目标对象的时候是通过代理对象间接的访问目标对象, 然后在代理对象中会直接调用目标对象实现功能的过程,这时候就可以在代理对象中来控制目标对象方法的执行。 就可以在目标方法执行的前后或者执行过程中加入一些额外的代码(操作:功 阅读全文
posted @ 2022-11-17 22:46 zjw_rp 阅读(142) 评论(0) 推荐(0) 编辑
摘要:注解的自动装配@Autowired注解 自动装配就是让应用程序上下文为你找出依赖项的过程。 说的通俗一点,就是Spring会在上下文中自动查找,并自动给bean装配与其关联的属性! Spring自动装配解决了Spring时代项目配置繁琐的问题,简化配置。 (自动装配是使用spring满足bean依赖 阅读全文
posted @ 2022-11-16 17:19 zjw_rp 阅读(68) 评论(0) 推荐(0) 编辑
摘要:注解管理bean功能分析 标记与扫描 注解的作用 ①注解 和 XML 配置文件一样,注解本身并不能执行, 注解本身仅仅只是做一个标记,具体的功能是框架检测到注解标记的位置, 然后针对这个位置按照注解标记的功能来执行具体操作。 本质上:所有一切的操作都是 Java 代码来完成的,XML 和注解只是告诉 阅读全文
posted @ 2022-11-15 21:18 zjw_rp 阅读(66) 评论(0) 推荐(0) 编辑
摘要:基于xml自动装配 自动装配(autowire)相互协作的 Bean 之间的关联关系,将一个 Bean 注入其他 Bean 的 Property 中。 自动装配就是让应用程序上下文为你找出依赖项的过程。 说的通俗一点,就是Spring会在上下文中自动查找,并自动给bean装配与其关联的属性! 场景模 阅读全文
posted @ 2022-11-13 22:23 zjw_rp 阅读(42) 评论(0) 推荐(0) 编辑
摘要:FactoryBean IOC实现的时候,BeanFactory:bean工厂,是ioc最基本的实现,作用是帮助我们管理bean (默认) FactoryBean:这个就叫工厂bean 专门作为一个bean交给IOC容器管理。 结论: 配置一个bean,如果没有实现FactoryBean接口:配置什 阅读全文
posted @ 2022-11-13 20:49 zjw_rp 阅读(30) 评论(0) 推荐(0) 编辑
摘要:bean作用域 单例和多例 1 . 什么是单例和多例 单例 (singleton):所有请求用同一个对象来处理。通过单例模式,可以保证系统中一个类只有一个实例。 多例 (prototype):每个请求用一个新的对象来处理。 如果一个bean被声明为单例的时候,在处理多次请求的时候, 在spring容 阅读全文
posted @ 2022-11-13 18:29 zjw_rp 阅读(126) 评论(0) 推荐(0) 编辑
摘要:管理数据源和引入外部属性文件 1 . 加入依赖 <!-- MySQL驱动 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.29</version> 阅读全文
posted @ 2022-11-13 13:39 zjw_rp 阅读(23) 评论(0) 推荐(0) 编辑
摘要:数组类型的属性赋值 public class Student { private Integer sid; private String sname; private String gender; private String[] hobby; ...} <bean id="studentFive" 阅读全文
posted @ 2022-11-13 11:07 zjw_rp 阅读(114) 评论(0) 推荐(0) 编辑
摘要:为类类型的属性赋值 第一种方式:引用外部bean package com.atguigu.spring.pojo;​public class Clazz { private Integer cid; private String cname; ...} package com.atguigu.spr 阅读全文
posted @ 2022-11-12 21:25 zjw_rp 阅读(141) 评论(0) 推荐(0) 编辑
摘要:依赖注入特殊处理 1 . null值 <property name="commonValue"> <!-- null标签:将一个属性值明确设置为null --> <null/> </property> 2 . XML实体 <!-- 实验九 给bean的属性赋值:特殊值处理 --><bean id=" 阅读全文
posted @ 2022-11-12 21:23 zjw_rp 阅读(13) 评论(0) 推荐(0) 编辑
摘要:依赖注入之setter注入(常用) 依赖注入:就是为当前实体(类) 中的属性进行赋值过程就叫做依赖注入 setter注入:设置property就会在底层为set方法为当前属性赋值,调用哪个给哪个赋值 package com.atguigu.spring.pojo;​public class Stud 阅读全文
posted @ 2022-11-11 21:14 zjw_rp 阅读(17) 评论(0) 推荐(0) 编辑
摘要:获取bean的三种方式和注意事项 1 . 根据id获取 由于 id 属性指定了 bean 的唯一标识, 所以根据 bean 标签的 id 属性可以精确获取到一个组件对象。 2 . 根据类型获取 ①指定类型的 bean 唯一 : 能够正常获取到。 package com.atguigu.spring. 阅读全文
posted @ 2022-11-11 20:27 zjw_rp 阅读(273) 评论(0) 推荐(0) 编辑
摘要:IOC容器创建对象的方式 /**​• 涉及到反射,大部分通过反射创建实例化用的都是无惨构造• 错误:NoSuchMethodException;• */ 是怎么实例化的:IOC管理对象的时候,是通过工厂模式和反射来实现创建的对象 通过反射创建的对象时候,默认使用的是无惨构造。 <!-- spring 阅读全文
posted @ 2022-11-10 20:55 zjw_rp 阅读(11) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示