![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
橘久啊。
努力进击;
展开
-
24.Spring学习笔记_事务管理
事务事务是用来保证数据的一致性和完整性;事务就是把一系列的动作当成一个独立的工作单元,这些动作要么全部完成,要么全部不起作用。事务四个属性ACID原子性(atomicity)事务是原子性操作,由一系列动作组成,事务的原子性确保动作要么全部完成,要么完全不起作用一致性(consistency)一旦所有事务动作完成,事务就要被提交。数据和资源处于一种满足业务规则的一致性状态中隔离性(isolation)可能多个事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏持久转载 2021-05-13 18:30:03 · 88 阅读 · 0 评论 -
23.Spring学习笔记_AOP_整合MyBatis-Spring_2
mybatis-spring1.2.3版以上的才有这个 .官方文档截图 :dao继承Support类 , 直接利用 getSqlSession() 获得 , 然后直接注入SqlSessionFactory . 比起方式1 , 不需要管理SqlSessionTemplate , 而且对事务的支持更加友好 . 可跟踪源码查看1、将我们上面写的UserDaoImpl修改一下public class UserDaoImpl extends SqlSessionDaoSupport implements U原创 2021-05-12 18:58:35 · 87 阅读 · 0 评论 -
22.Spring学习笔记_AOP_整合MyBatis-Spring
引入Spring之前需要了解mybatis-spring包中的一些重要类;什么是 MyBatis-Spring?MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中。知识基础在开始使用 MyBatis-Spring 之前,你需要先熟悉 Spring 和 MyBatis 这两个框架和有关它们的术语。这很重要MyBatis-Spring 需要以下版本:如果使用 Maven 作为构建工具,仅需要在 pom.xml 中加入以下代码即可:<dependen原创 2021-05-12 18:51:25 · 88 阅读 · 2 评论 -
21.Spring学习笔记_AOP_使用注解实现
第一步:编写一个注解实现的增强类package com.kuang.config;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.After;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Befo原创 2021-05-12 18:30:26 · 73 阅读 · 0 评论 -
20.Spring学习笔记_AOP_自定义类来实现Aop
第一步 : 写我们自己的一个切入类public class DiyPointcut { public void before(){ System.out.println("---------方法执行前---------"); } public void after(){ System.out.println("---------方法执行后---------"); } }去spring中配置<!--第二种方式自定义实现--><原创 2021-05-12 18:28:41 · 75 阅读 · 0 评论 -
19.Spring学习笔记_AOP_Spring API 实现
AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。Aop在Spring中的作用:提供声明式事务;允许用户自定义切面以下名词需要了解下:横切关注点:跨越应用程序多个模块原创 2021-05-12 17:59:26 · 74 阅读 · 0 评论 -
18.Spring学习笔记_动态代理
动态代理的代理类是动态生成的 . 静态代理的代理类是我们提前写好的动态代理分为两类 : 一类是基于接口动态代理 , 一类是基于类的动态代理基于接口的动态代理----JDK动态代理基于类的动态代理–cglib现在用的比较多的是 javasist 来生成动态代理 . 百度一下javasist我们这里使用JDK的原生代码来实现,其余的道理都是一样的!、JDK的动态代理需要了解两个类核心 : InvocationHandler 和 Proxy代码实现抽象角色和真原创 2021-05-10 18:09:52 · 102 阅读 · 0 评论 -
17.Spring学习笔记_静态代理再理解
代理即是将被代理对象进一步封装后,隐藏被代理对象,在不修改被代理对象代码的前提下完成一些额外的处理。静态代理再理解:再来实际看一下日志的部分的实际例子:练习步骤:1、创建一个抽象角色,比如咋们平时做的用户业务,抽象起来就是增删改查!//抽象角色:增删改查业务public interface UserService { void add(); void delete(); void update(); void query();}2、我们需要一个真实对象来完成原创 2021-05-10 09:41:47 · 46 阅读 · 0 评论 -
16.Spring学习笔记_静态代理模式
为什么要学习代理模式,因为AOP的底层机制就是动态代理!代理模式:静态代理动态代理学习aop之前 , 我们要先了解一下代理模式!静态代理静态代理角色分析抽象角色 : 一般使用接口或者抽象类来实现真实角色 : 被代理的角色代理角色 : 代理真实角色 ; 代理真实角色后 , 一般会做一些附属的操作 .客户 : 使用代理角色来进行一些操作 .代码实现Rent . java 即抽象角色//抽象角色:租房public interface Rent { public v原创 2021-05-10 09:18:24 · 59 阅读 · 1 评论 -
15.Spring学习笔记_基于Java类进行配置
JavaConfig 原来是 Spring 的一个子项目,它通过 Java 类的方式提供 Bean 的定义信息,在 Spring4 的版本, JavaConfig 已正式成为 Spring4 的核心功能 。1、编写一个实体类@Component //代表该项目被spring接管,标记为一个组件,注册到容器中public class User { private String name; public String getName() { return name;原创 2021-05-07 18:33:43 · 59 阅读 · 0 评论 -
14.Spring学习笔记_spring注解开发02
衍生注解我们这些注解,就是替代了在配置文件当中配置步骤而已!更加的方便快捷!@Component三个衍生注解为了更好的进行分层,Spring可以使用其它三个注解,功能一样,目前使用哪一个功能都一样。@Component //组件,注入bean// 相当于配置文件中 <bean id="user" class="当前注解的类"/>public class User { //相当于<property name="name" value="wwj"> @Valu原创 2021-05-07 18:16:36 · 67 阅读 · 1 评论 -
13.Spring学习笔记_spring注解开发
在spring4之后,想要使用注解形式,必须得要引入aop的包在配置文件当中,还得要引入一个context约束<?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原创 2021-05-07 18:13:22 · 59 阅读 · 0 评论 -
12.Spring学习笔记_自动装配_使用注解自动装配@Resource
@Resource@Resource如有指定的name属性,先按该属性进行byName方式查找装配;其次再进行默认的byName方式进行装配;如果以上都不成功,则按byType的方式自动装配。都不成功,则报异常。实体类:public class User { //如果允许对象为null,设置required = false,默认为true @Resource(name = "cat2") private Cat cat; @Resource priv原创 2021-04-30 18:46:24 · 132 阅读 · 1 评论 -
11.Spring学习笔记_自动装配_使用注解自动装配@Autowired
注释自动装配:@Autowired与@Resource异同1、在spring配置文件中引入context文件头xmlns:context="http://www.springframework.org/schema/context"http://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd2、开启属性注解支持!<contex原创 2021-04-30 18:30:59 · 68 阅读 · 1 评论 -
10.Spring学习笔记_自动装配_ByName和ByType装配
ByName增加字段autowire="byName" <bean id="cat" class="com.wwj.pojo.Cat"/> <bean id="dog" class="com.wwj.pojo.Dog"/> <bean id="user" class="com.wwj.pojo.User" autowire="byName"> <property name="name" value="wwj"/>原创 2021-04-30 16:31:36 · 90 阅读 · 1 评论 -
9.Spring学习笔记_自动装配_ref装配
自动装配说明自动装配是使用spring满足bean依赖的一种方法spring会在应用上下文中为某个bean寻找其依赖的bean。Spring中bean有三种装配机制,分别是:在xml中显式配置;在java中显式配置;隐式的bean发现机制和自动装配。这里我们主要讲第三种:自动化的装配bean。Spring的自动装配需要从两个角度来实现,或者说是两个操作:组件扫描(component scanning):spring会自动发现应用上下文中所创建的bean;自动装配(autowir原创 2021-04-30 16:24:44 · 138 阅读 · 1 评论 -
8.Spring学习笔记_bean的作用域
bean的作用域:-单例模式-原型模式在Spring中,那些组成应用程序的主体及由Spring IoC容器所管理的对象,被称之为bean。简单地讲,bean就是由IoC容器初始化、装配及管理的对象 .几种作用域中,request、session作用域仅在基于web的应用中使用(不必关心你所采用的是什么web应用框架),只能用在基于web的Spring ApplicationContext环境。单例模式Singleton当一个bean的作用域为Singleton,那么Spring IoC容器中只原创 2021-04-29 13:24:21 · 72 阅读 · 0 评论 -
7.Spring学习笔记_p命名和c命名注入
User.java :【注意:这里没有有参构造器!】 public class User { private String name; private int age; public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } @Override原创 2021-04-29 11:52:20 · 59 阅读 · 0 评论 -
6.Spring学习笔记_依赖注入(DI)
依赖注入(Dependency Injection,DI)。依赖 : 指Bean对象的创建依赖于容器 . Bean对象的依赖资源 .注入 : 指Bean对象所依赖的资源 , 由容器来设置和装配 .注入方式构造器注入set注入(重点)set注入要求被注入的属性 , 必须有set方法 , set方法的方法名由set + 属性首字母大写 , 如果属性是boolean类型 , 没有set方法 , 是 is .1.创建实体类:Address.java public class原创 2021-04-29 11:25:11 · 81 阅读 · 0 评论 -
4.Spring学习笔记_IOC创建对象的方式
通过无参构造进行创建1、User.javapublic class User { private String name; public User() { System.out.println("user无参构造方法"); } public void setName(String name) { this.name = name; } public void show(){ System.out.pri原创 2021-04-28 11:17:20 · 63 阅读 · 0 评论 -
3.Spring学习笔记_第一个spring程序
1.导入依赖:<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.10.RELEASE</version></dependency>编写一个Hello实体类public class Hello { private Str原创 2021-04-27 02:38:14 · 245 阅读 · 0 评论 -
2.Spring学习笔记_IOC推导
IOC叫做控制反转,IoC 是指在程序开发中,实例的创建不再由调用者管理,而是由 Spring 容器创建。Spring 容器会负责控制程序之间的关系,而不是由程序代码直接控制,因此,控制权由程序代码转移到了 Spring 容器中,控制权发生了反转,这就是 Spring 的 IoC 思想。我们先来看个案例:1、先写一个UserDao接口public interface UserDao { public void getUser();}2、再去写Dao的实现类public class U原创 2021-04-26 22:25:55 · 73 阅读 · 0 评论 -
1.Spring学习笔记_Spring概述
之前学习springboot感觉有点吃力,还是决定回来把spring好好学习一下,学习视频依然是参考B站的狂神;简介Spring是一个轻量级的Java 应用程序开发框架。Spring理念 : 使现有技术更加实用 . 本身就是一个大杂烩 , 整合现有的框架技术官网 : http://spring.io/官方下载地址 : https://repo.spring.io/libs-release-local/org/springframework/spring/GitHub : https:原创 2021-04-26 22:08:25 · 117 阅读 · 0 评论