
Spring
Spring
结构化思维wz
敬他人,即是敬自己;靠自己,胜于靠他人。
展开
-
Spring生命周期详解 + 应用实例
Spring Bean的生命周期在工作中非常重要,本文通过图和例子来讲明白Spring Bean的生命周期。原创 2022-02-16 14:14:15 · 913 阅读 · 0 评论 -
spring中的事务
Spring的事务处理1. 什么是事务?保证业务操作完整性的一种数据库机制事务的4特点: A C I D1. A 原子性2. C 一致性3. I 隔离性4. D 持久性2. 如何控制事务JDBC: Connection.setAutoCommit(false); Connection.commit(); Connection.rollback();Mybatis: Mybatis自动开启事务 sqlSession(Connection原创 2021-05-31 22:21:13 · 279 阅读 · 2 评论 -
spring注解开发最全总结!(学springboot前看一下手撕源码!)
github地址,不要吝啬☆(可以下载PDF)优快云下载地址对springboot开发有很大帮助!!对比总结!!参考suns最强spring教学!文章目录spring注解开发总结1.搭建开发环境用到的注解1.@ComponentScan--相关注解扫描2.@Configuration---替换spring配置文件 spring注解开发总结1.搭建开发环境用到的注解1.@ComponentScan–相关注解扫描@Configuration@ComponentScan(basePackages原创 2021-05-06 21:45:31 · 384 阅读 · 1 评论 -
AOP(动态代理)底层实现原理(重点!!!)
AOP底层实现原理1.Aop解决的两个核心问题1.Aop如何创建动态代理类?(动态字节码技术)2.Spring工厂如何加工创建代理对象?2.动态代理类的创建2.1 JDK的动态代理编码 //1 创建原始对象 UserService userService = new UserServiceImpl(); //2 JDK创建动态代理 /* */ InvocationHandler handler = ne原创 2021-04-19 19:58:39 · 630 阅读 · 0 评论 -
Spring的动态代理开发
1.spring动态代理的概念概念:通过代理类为原始类增加额外功能好处:利于原始类(目标类)的维护2.搭建开发环境<dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>5.1.14.RELEASE</version></dependency><原创 2021-04-16 16:55:17 · 122 阅读 · 0 评论 -
AOP前言篇----静态代理设计模式
1.为什么需要代理设计模式1.1问题在javaEE分层开发中,那个层次对我们来讲最重要DAO-----> Service ---> ControllerjavaEE分层开发中,最为重要的是service层service层中包含了那些代码?service层中= 核心功能 +额外功能(附加功能)1.核心功能:业务运算 DAO调用2.额外功能:不属于业务 可有可无 代码量很小事务、日志、性能...额外功能书写在service层中好不好?service层调用者的角度:需要在原创 2021-04-16 15:39:23 · 120 阅读 · 0 评论 -
后置处理Bean
BeanPostProcessor作用:对spring工厂所创建的对象,进行再加工。AOP底层实现:注意:BeanPostProcessor接口xxx(){}后置处理Bean的运行原理分析程序员实现BeanPostProcessor规定的接口中的方法:Object postProcessBeforeInitiallization(Object bean String beanName)作用:spring创建完对象,并进行注入后,可以运行Befor方法进行加工获得spring创建好的对象:原创 2021-04-16 15:10:52 · 226 阅读 · 1 评论 -
配置文件参数化
把Spring配置文件中需要经常修改的字符串信息,转移到一个更小的配置文件中1. Spring的配置文件中存在需要经常修改的字符串? 存在 以数据库连接相关的参数 代表2. 经常变化字符串,在Spring的配置文件中,直接修改 不利于项目维护(修改)3. 转移到一个小的配置文件(.properties) 利于维护(修改) 配置文件参数化:利于Spring配置文件的维护(修改)1. 配置文件参数的开发步骤提供一个小的配置文件(.properities)名字:随便原创 2021-04-14 13:29:57 · 331 阅读 · 0 评论 -
对象的生命周期
1.什么是对象的生命周期?指的是一个对象的创建,存活,消亡的一个完整过程2.为什么要学习对象的生命周期由spring负责对象的创建,存活,销毁,了解生命周期,有利于我们更好的使用spring为我们创建的对象3.生命周期的3个阶段1.创建阶段spring工厂如何创建对象??scope="singleton"Spring工厂建立的同时,对象的创建注意:设置scope=singleton这种情况下也需要获取对象的同时,创建对象<bean lazy-init="true"/>原创 2021-04-14 13:24:09 · 781 阅读 · 0 评论 -
控制spring工厂创建对象的次数
1.如何控制简单对象的创建次数<bean id="account" scope="sigleton|prototype" class="xxxxx"/>sigleton:只会创建一次简单对象 默认值prototype:每一次都会创建新的对象2.如何控制复杂对象的创建次数FactoryBean{isSingleton(){return true; //只会创建一次return false; //每一次都会创建新的}}如果没有isssingleton方法 ,还是通过s原创 2021-04-14 11:45:59 · 180 阅读 · 0 评论 -
spring工厂创建复杂对象
1.什么是复杂对象??复杂对象:指的就是不能直接通过new构造方法创建的对象 Connection SqlSessionFactroy2.spring工厂创建复杂对象的3种方式2.1 FactroyBean 接口开发步骤1.实现FactroryBean接口2.spring配置文件的配置 # 如果Class中指定的类型 是FactoryBean接口的实现 类,那么通过id值获得的是这个类所创建的复杂对象 Connection<bean id="conn" c.原创 2021-04-11 11:44:32 · 200 阅读 · 0 评论 -
IOC 与 DI
1.反转控制(IOC Inverse of Control)控制:对于成员变量赋值的控制权反转控制:把对于成员变量赋值的控制权,从代码中反转到spring工厂和配置文件中完成好处:解耦合底层实现:工厂设计模式2.依赖注入(Dependency Injection)注入:通过spring的工厂及配置文件,为对象(bean,组件)的成员变量赋值依赖注入:当一个类需要另一个类时,就意味着依赖,一旦出现依赖,就可以把另一个类作为本类的成员变量,最终通过spring配置文件进行注入(赋值)好处:解原创 2021-04-09 14:58:15 · 137 阅读 · 0 评论 -
构造注入
注入:通过Spring的配置文件,为成员变量赋值Set注入:Spring调用Set方法 通过配置文件 为成员变量赋值构造注入:Spring调用构造方法 通过配置文件 为成员变量赋值1. 开发步骤提供有参构造方法public class Customer implements Serializable { private String name; private int age; public Customer(String name, int age) {原创 2021-04-09 14:50:39 · 143 阅读 · 0 评论 -
set注入详解
针对不同类型的成员变量,在<property>标签,需要嵌套其他标签<property> xxxxx </property>1. JDK内置类型1.1 string+8种基本类型<value>wangze</value>1.2 数组<list> <value>数组的第一项</value> <value>数组的第二项</value> <value>数组原创 2021-04-08 22:35:46 · 586 阅读 · 0 评论 -
注入(Injection)
1.什么是注入通过Spring工厂及配置文件,为所创建的成员变量赋值1.1为什么需要注入通过编码的方式,为成员变量进行赋值,存在耦合(get set)1.2如何进行注入 1. 类的成员变量提供set get方法 2. 配置spring的配置文件 3. <bean id="***" class="*******"> <property name="成员变量的名字"> <value>成员变量的值</value>原创 2021-04-08 22:07:09 · 711 阅读 · 0 评论 -
Spring与日志框架的整合
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码原创 2021-04-08 21:51:33 · 196 阅读 · 0 评论 -
Spring的第一个程序
1.环境搭建Spring的jar包#设置pom 依赖<!-- https://mvnrepository.com/artifact/org.springframework/spring-context --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version&原创 2021-04-03 16:43:23 · 173 阅读 · 0 评论 -
学Spring前必学——工厂设计模式
设计模式:1. 广义概念面向对象设计中,解决特定问题的经典代码2. 狭义概念GOF4人帮定义的23种设计模式:工厂、适配器、装饰器、门面、代理、模板...工厂设计模式:1. 概念:通过工厂类,创建对象 Object ret = BeanFactory.getBean("key")2. 好处:解耦合 耦合:指定是代码间的强关联关系,一方的改变会影响到另一方 问题:不利于代码维护 简单:把接口的实现类,硬编码在程序中 UserService u原创 2021-04-02 11:40:47 · 775 阅读 · 4 评论