spring
spring
白光一
这个作者很懒,什么都没留下…
展开
-
spring-210730-03---Spring5新功能-Webflux-响应式编程-Reactor实现&操作符
spring-210730-03—Spring5新功能-Webflux-响应式编程-Reactor实现&操作符Reactor有两个核心类,Mono和Flux操作符Reactor演示引入依赖TestReactor.javaReactor有两个核心类,Mono和Flux响应式编程操作中,Reactor是满足Reactive规范框架。Reactor有两个核心类,Mono和Flux,这两个类实现了接口Publisher,提供了丰富的操作符。 1) Flux对原创 2021-07-30 16:28:00 · 302 阅读 · 0 评论 -
spring-210730-02---Spring5新功能-Webflux-响应式编程-Java实现
spring-210730-02—Spring5新功能-Webflux-响应式编程-Java实现什么是响应式编程观察者模式(演示)ObserverTest.java尚硅谷视频给的例子Flow.javaMain.java什么是响应式编程什么是响应式编程: 简称RP(Reactive Programming) 响应式编程是一种面向数据流和变化传播的编程范式。这意味着可以在编程语言中很方便地表达静态或动态的数据流, 而相关的计算模型会自动将变化的值通过数据流进行传播。例原创 2021-07-30 16:27:28 · 180 阅读 · 1 评论 -
spring-210730-01---Spring5新功能-Webflux-基本概念
spring-210730-01—Spring5新功能-Webflux-基本概念SpringWebFlux介绍异步非阻塞解释WebFlux特点比较SpringMVCSpringWebFlux介绍WebFlux官方文档说明地址: https://docs.spring.io/spring-framework/docs/current/reference/html/web-reactive.htmlSpringWebFlux介绍: 1)是Spring5中新添加的模块,用于web开发,功原创 2021-07-30 16:26:50 · 124 阅读 · 0 评论 -
spring-210729-03---Spring5新功能-整合JUnit5单元测试
spring-210729-03—Spring5新功能-整合JUnit5单元测试测试Junit4测试Junit5Spring5支持整合JUnit5 第一步:引入Spring相关的依赖 第二步:创建测试类,使用注解方式完成测试Junit4TestJunit4.javaimport com.bgy.spring.service.UserService02;import org.junit.Test;import org.junit.runner.RunWith;import o原创 2021-07-29 22:43:06 · 177 阅读 · 0 评论 -
spring-210729-02---Spring5新功能-Nullable注解&函数式注册对象
spring-210729-02—Spring5新功能-Nullable注解&函数式注册对象演示支持函数式风格User.javaTestUser04.javaSpring5框架核心容器支持@Nullable注解 @Nullable可以使用在方法、属性、参数上面, 表示方法返回值可以为空、属性值可以为空、参数值可以为空Spring5框架核心容器支持函数式风格GenericApplicationContext/AnnotationConfigApplicationContext原创 2021-07-29 22:42:16 · 168 阅读 · 0 评论 -
spring-210729-01---Spring5新功能-整合日志框架
spring-210729-01—Spring5新功能-整合日志框架log4j2.xml日志手动输出Spring5新功能特性地址:https://www.cntofu.com/book/95/33-what-new-in-the-spring-framework.md特点: 整个Spring5框架基于Java8, 运行时兼容JDK9, 许多不建议使用的类和方法在代码库中删除 Spring 5.0框架自带了通用的日志封装 Spring5已经移除了Log4jConfigListe原创 2021-07-29 22:40:58 · 80 阅读 · 0 评论 -
spring-210729-06---事务操作-Spring声明式事务管理-完全注解式开发
spring-210729-06—事务操作-Spring声明式事务管理-完全注解式开发TxConfig.javapackage com.bgy.spring.config;import com.alibaba.druid.pool.DruidDataSource;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.ComponentScan;im原创 2021-07-29 22:40:05 · 98 阅读 · 0 评论 -
spring-210729-05---事务操作-Spring声明式事务管理-xml方式
spring-210729-05—事务操作-Spring声明式事务管理-xml方式演示UserDao03.javaUserDao03.javaUserService03.javabean03.xmlTestUser03.java在Spring配置文件中进行配置 1)配置事务管理器 2)配置通知 3)配置切入点和切面演示UserDao03.javapackage com.bgy.spring.dao;public interface UserDao03 { //原创 2021-07-29 22:39:22 · 73 阅读 · 0 评论 -
spring-210729-04---事务操作-Spring声明式事务管理-事务参数
spring-210729-04—事务操作-Spring声明式事务管理-事务参数事务的传播行为事务隔离级别在service类上面添加注解@Transactional,可以在注解里面配置事务先关的参数。@Transactional(propagation = Propagation.REQUIRED,isolation = Isolation.REPEATABLE_READ,timeout = -1,readOnly = false,) // 事务注解propagation: 事务的原创 2021-07-29 22:38:31 · 91 阅读 · 0 评论 -
spring-210729-03---事务操作-Spring声明式事务管理-注解方式
spring-210729-03—事务操作-Spring声明式事务管理-注解方式演示UserDao02.javaUserDao02.javaUserService02.java(在这儿开启事务)bean02.xml(配置事务)TestUser02.java1. 在Spring配置文件,配置事务管理器2. 在Spring配置文件,开启事务注解 引入名称空间 xmlns:tx="http://www.springframework.org/schema/tx" 开启事务注解3. 在s原创 2021-07-29 22:37:40 · 87 阅读 · 0 评论 -
spring-210729-02---事务管理
spring-210729-02—事务管理事务操作(Spring中事务管理介绍): 1. 事务添加到javaee三层结构中service层(业务逻辑层) 2. 在Spring中进行事务管理操作,有两种方式: 1) 编程式事务管理 2) 声明式事务管理声明式事务管理: 1) 基于注解方式 2) 基于xml配置文件方式 在Spring进行声明式事务管理时,底层使用AOP原理。Spring事务管理API: 提供了一个接口,PlatformTransactionManag原创 2021-07-29 22:37:07 · 71 阅读 · 0 评论 -
spring-210729-01---了解事务&转账实例
spring-210729-01—了解事务&转账实例了解事务转账实例UserDao.javaUserDaoImpl.javaUserService.javabean01.xmlTestUser01.java了解事务什么是事务: 事务是数据库操作最基本的单元,逻辑上的一组操作,要么都成功,如果有一个失败所有操作都失败。事务的特性(ACID): 原子性 一致性 隔离性 持久性转账实例people_A 和 people_B 之间进行转账在service原创 2021-07-29 22:36:39 · 90 阅读 · 0 评论 -
spring-210728-04---JdbcTemplate操作数据库-批量添加&修改&删除
spring-210728-04—JdbcTemplate操作数据库-批量添加&修改&删除演示UserDao.java(dao层接口)UserDaoImpl.java(这里实现DML操作)UserService.java(这里调用dao)TestUser01.java(测试)bean01.xml(Spring配置文件)User.java(实体类)演示UserDao03.java(dao层接口)package com.bgy.spring.dao;import j原创 2021-07-28 23:58:01 · 110 阅读 · 0 评论 -
spring-210728-03---JdbcTemplate操作数据库-查询功能
spring-210728-03—JdbcTemplate操作数据库-查询功能演示UserDao.java(dao层接口)UserDaoImpl.java(这里实现DQL操作)UserService.java(这里调用dao)TestUser01.java(测试)bean01.xml(Spring配置文件)User.java(实体类)演示UserDao02.java(dao层接口)package com.bgy.spring.dao;import com.bgy.spring.e原创 2021-07-28 23:57:27 · 125 阅读 · 0 评论 -
spring-210728-02---JdbcTemplate操作数据库-添加&修改&删除功能
spring-210728-02—JdbcTemplate操作数据库-添加&修改&删除功能演示UserDao.java(dao层接口)UserDaoImpl.java(这里实现DML操作)UserService.java(这里调用dao)TestUser01.java(测试)bean01.xml(Spring配置文件)User.java(实体类)创建实体类编写service和dao 在dao进行数据库添加、修改、删除操作演示UserDao.java(dao层原创 2021-07-28 23:56:42 · 98 阅读 · 0 评论 -
spring-210728-01---JdbcTemplate-准备工作
spring-210728-01—JdbcTemplate-准备导入相关的jar包配置数据库连接池,配置JdbcTemplate对象,开启组件扫描创建service类,dao类;在dao类中注入jdbcTemplate对象BookService.javaBookDaoImpl.java什么是JdbcTemplate: Spring框架对JDBC进行了封装,使用JdbcTemplate方便实现对数据库操作。准备工作: 导入相关的jar包 在spring配置文件中,配置数据库连接池原创 2021-07-28 23:55:59 · 101 阅读 · 0 评论 -
spring-210728-04---AOP-了解完全注解式开发
spring-210728-04—AOP-了解完全注解式开发ConfigAop.javaConfigAop.javapackage com.bgy.spring.config;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.context.ann原创 2021-07-28 23:55:14 · 71 阅读 · 0 评论 -
spring-210728-03---AOP-AspectJ配置文件方式
spring-210728-03—AOP-AspectJ配置文件方式.md演示Book.javaBookProxy.javabean02.xmlTestBook.java演示Book.javapackage com.bgy.spring.aopbyxml;public class Book { public void add(){ System.out.println("book add.........."); }}BookProxy.j原创 2021-07-28 23:54:25 · 92 阅读 · 0 评论 -
spring-210728-02---AOP-AspectJ注解-抽取相同切入点&设置优先级
spring-210728-02—AOP-AspectJ注解-抽取相同切入点&设置优先级相同切入点抽取UserProxy02.java多个增强类,同一个方法进行增强,设置增强类优先级演示Person.javaPersonProxy01.javaPersonProxy02.javabean01.xmlTestPerson.java相同切入点抽取UserProxy02.javapackage com.bgy.spring.aoptest;import org原创 2021-07-28 23:53:55 · 225 阅读 · 0 评论 -
spring-210728-01---AOP-AspectJ注解
spring-210728-01—AOP-AspectJ注解演示User.javaUserProxy.javabean01.xmlTestAop.java创建User类,在类里面定义方法add()创建增强类,UserProxy类进行通知的配置 1. 配置Spring文件,开启注解扫描 2. 使用注解创建User和UserProxy 3. 在增强类上面添加注解@Aspect 4. 配置Spring文件,开启生成代理对象配置不同的通知类型演示User.javapacka原创 2021-07-28 23:53:23 · 58 阅读 · 0 评论 -
spring-210727-04---AOP-AspectJ准备
spring-210727-04—AOP-AspectJ准备在工程中引入AOP相关的依赖切点表达式AOP准备: Spring框架一般都是基于AspectJ实现AOP操作, AspectJ不是Spring组成部分,独立AOP框架,一般吧AspectJ和Spring框架一起使用,进行AOP操作。基于AspectJ实现AOP操作: 1. 基于xml配置文件实现 2. 基于注解方式实现在工程中引入AOP相关的依赖切点表达式切点表达式作用: 知道对哪个类里面的哪个方法进行增强。原创 2021-07-28 23:52:50 · 84 阅读 · 0 评论 -
spring-210727-03---AOP-操作术语
spring-210727-03—AOP-操作术语AOP术语: 1. 连接点 2. 切入点 3. 通知(增强) 4. 切面原创 2021-07-27 23:45:20 · 80 阅读 · 0 评论 -
spring-210727-02---AOP-JDK动态代理实现
spring-210727-02—AOP-JDK动态代理实现如何使用动态代理演示UserDao.javaUserDaoImpl.javaJDKProxy.java如何使用动态代理使用JDK动态代理,使用Proxy类里面的方法newProxyInstance创建代理对象。java.lang.reflect.ProxynewProxyInstance的三个参数: 第一个:类加载器 第二个:增强方法所在的类,这个类实现的接口,支持多个接口 第三个:实现接口Invocati原创 2021-07-27 23:44:27 · 90 阅读 · 0 评论 -
spring-210727-01---AOP-基本概念&底层原理
spring-210727-01—AOP-基本概念&底层原理什么是AOP底层原理什么是AOPAOP为Aspect Oriented Programming的缩写,意为:面向切面编程。通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。不通过修改源代码的原创 2021-07-27 23:43:54 · 109 阅读 · 0 评论 -
spring-210727-07--IOC容器--Bean管理注解方式-完全注解开发
spring-210727-07–IOC容器–Bean管理注解方式-完全注解开发SpringConfig.javaTestUser04.java创建配置类,替代xml配置文件SpringConfig.javapackage com.bgy.spring.config;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Con原创 2021-07-27 23:43:20 · 109 阅读 · 0 评论 -
spring-210727-06--IOC容器--Bean管理注解方式-注入属性@Resource&@Value
spring-210727-06–IOC容器–Bean管理注解方式-注入属性@Resource&@Value演示@ResourceUserDao03.java(@Resource)UserDaoImpl03.java(@Resource)UserService03.java(@Resource)UserService04(@Value)userbean.xmlTestUser03.java@Autowired: 根据属性类型进行自动注入@Qualifier: 根据属性名称进行原创 2021-07-27 23:42:42 · 147 阅读 · 0 评论 -
spring-210727-05--IOC容器--Bean管理注解方式-注入属性@Autowired&@Qualifier
spring-210727-05–IOC容器–Bean管理注解方式-注入属性@Autowired&@Qualifier.md演示UserDao.javaUserDaoImpl.java(@Autowired)UserService.java(@Autowired)UserDaoImpl02.java(@Qualifier)UserService02.java(@Qualifier)userbean.xmlTestUser.java@Autowired: 根据属性类型进行原创 2021-07-27 23:41:54 · 102 阅读 · 0 评论 -
spring-210727-04--IOC容器--Bean管理注解方式-组件扫描配置
spring-210727-04–IOC容器–Bean管理注解方式-组件扫描配置<?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.springfram原创 2021-07-27 23:41:18 · 92 阅读 · 0 评论 -
spring-210727-03--IOC容器--Bean管理注解方式-创建对象
spring-210727-03–IOC容器–Bean管理注解方式-创建对象演示引入依赖,导入jar包开启组件扫描创建类,在类上面添加创建对象的注解测试Spring 针对Bean管理中创建对象提供的注解: @Component @Service @Controller @Repository创建步骤: 1. 引入依赖,导入jar包 spring-aop-5.2.6.RELEASE.jar 2. 开启组件扫描 3. 创建类,在类上面添加创建对象的注解演示01原创 2021-07-27 23:40:45 · 81 阅读 · 0 评论 -
spring-210727-02--IOC容器--Bean管理xml方式-外部属性文件(properties资源文件)
spring-210727-02–IOC容器–Bean管理xml方式-外部属性文件(properties资源文件)导入需要的jar包和properties资源配置文件配置bean01 导入需要的jar包和properties资源配置文件jdbc.propertiesprop.driver=com.mysql.cj.jdbc.Driverprop.url=jdbc:mysql://localhost:3306/test?&useSSL=false&serverTimezon原创 2021-07-27 23:40:14 · 75 阅读 · 0 评论 -
spring-210727-01--IOC容器--Bean管理xml方式-自动装配
spring-210727-01–IOC容器–Bean管理xml方式-自动装配演示Emp.javaDept.javaautowiretest.xml(笔记在这儿哦)TestAutowire.java自动装配: 根据指定装配规则(属性名称或者属性类型),Spring自动将匹配的属性值进行注入。演示Emp.javapackage com.bgy.autowire;public class Emp { private Dept dept; public v原创 2021-07-27 23:39:41 · 75 阅读 · 0 评论 -
spring-210724-10--IOC容器--Bean管理-bean的声明周期
spring-210724-10–IOC容器–Bean管理-bean的声明周期生命周期生命周期演示Orders.javalifecyclebean.xml(五步)MyBeanPost.java(后置处理器,七步)lifecyclebean02.xml(后置处理器,七步)TestLifeCycle.java生命周期生命周期:从创建到销毁。bean生命周期(五步): 1. 通过构造器创建bean实例(无参构造) 2. 为bean的属性设置值和对其他bean的应用(调用set原创 2021-07-25 20:58:04 · 81 阅读 · 0 评论 -
spring-210724-09--IOC容器--Bean管理-作用域(设置单&多实例)
spring-210724-09–IOC容器–Bean管理-作用域(设置单&多实例)scope概念Courses.javascopebean.xml(设置scope)TestScope.javascope概念在Spring 中配置文件bean标签里面有一个属性(scope)用于设置单实例,还是多实例scope属性: singleton:默认值,表示单实例对象 prototype:表示多实例对象singleton和prototype的区别: 设置singleton:原创 2021-07-25 20:57:17 · 147 阅读 · 0 评论 -
spring-210724-08--IOC容器--Bean管理-工厂bean
spring-210724-08–IOC容器–Bean管理-工厂bean工厂bean(FactoryBean)MyFactoryBean.java(实现FactoryBean接口)myfactorybean.xmlTestFactoryBean.java工厂bean(FactoryBean)Spring 中有两种类型的bean,一种是普通bean,一种是工厂bean(FactoryBean)普通bean: 配置文件中定义bean的类型就是返回类型。工厂bean: 在配置文件中定义原创 2021-07-25 20:56:37 · 128 阅读 · 0 评论 -
spring-210724-07--IOC容器--Bean管理XML方式-注入集合类型属性&提取注入
spring-210724-07–IOC容器–Bean管理XML方式-注入集合类型属性&提取注入Stu.javaCourses.javacollectiontypebean01.xml(注入集合类型)Book.javacollectiontypebean02.xml(提取注入)TestCollectionType.javaStu.javapackage com.bgy.spring.collectiontype;import java.util.Arrays;import原创 2021-07-25 20:55:54 · 91 阅读 · 0 评论 -
spring-210724-06--IOC容器--Bean管理XML方式-注入内部bean&级联赋值
spring-210724-06–IOC容器–Bean管理XML方式-注入内部bean&级联赋值Dept.javaEmp.javabeantest21072403.xml(注入内部bean)beantest21072403.xml(级联赋值)TestBean21072403.javaDept.javapackage com.bgy.spring.bean;// 部门public class Dept { private String dname; publ原创 2021-07-25 20:54:47 · 89 阅读 · 0 评论 -
spring-210724-05--IOC容器--Bean管理XML方式-注入外部bean
spring-210724-05–IOC容器–Bean管理XML方式-注入外部beanUserService.javaUserDao.javaUserDaoImpl.javabeantest21071402.xml(这里引用外部bean)TestBean21072402.java在service调用dao里面的方法UserService.javapackage com.bgy.spring.service;import com.bgy.spring.dao.UserDao;pu原创 2021-07-25 20:53:45 · 68 阅读 · 0 评论 -
spring-210724-04--IOC容器--Bean管理XML方式-注入空值和特殊符号
spring-210724-04–IOC容器–Bean管理XML方式-注入空值和特殊符号beantest21072401.xml(笔记在注释中哦)TestBean21072401.javabeantest21072401.xml(笔记在注释中哦)<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="h原创 2021-07-25 20:52:38 · 229 阅读 · 0 评论 -
spring-210724-03--IOC容器--Bean管理XML方式-p名称空间注入
spring-210724-03–IOC容器–Bean管理XML方式-p名称空间注入使用p名称空间注入,可以简化基于xml配置方式在beams约束中添加: xmlns:p="http://www.springframework.org/schema/p"testP.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"原创 2021-07-25 20:51:03 · 98 阅读 · 0 评论 -
spring-210724-02--IOC容器--Bean管理XML方式-有参构造注入属性
spring-210724-02–IOC容器–Bean管理XML方式-有参构造注入属性有参构造注入步骤测试代码Orders.javaOrdersBean.xmlTestOrders.java有参构造注入步骤1. 创建类,定义属性,创建属性对应的有参构造方法。2. 在Spring配置文件中进行配置。测试代码Orders.javapackage com.bgy.spring;public class Orders { // 属性 private Strin原创 2021-07-25 20:50:00 · 100 阅读 · 0 评论