![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SSM
°Distance.
这个作者很懒,什么都没留下…
展开
-
Spring学习(十):Spring 事务传播特性和事务隔离级别
Spring 事务传播特性和事务隔离级别一、认识事务1.1 为什么需要事务?1.2 什么是数据库事务?1.3 事务的ACID特性1.4 并发异常二、Spring 事务的隔离级别(5个)三、Spring 事物的传播行为(7个)一、认识事务1.1 为什么需要事务?转账是生活中常见的操作,比如从A账户转账100元到B账号。站在用户角度而言,这是一个逻辑上的单一操作,然而在数据库系统中,至少会分成两个步骤来完成:将A账户的金额减少100元将B账户的金额增加100元在这个过程中可能会出现以下几个问题:原创 2020-12-09 12:18:02 · 151 阅读 · 0 评论 -
Spring 学习(九):代理设计模式
代理设计模式一、设计模式二、代理设计模式三、静态代理模式一、设计模式设计模式:前人总结的一套解决特定问题的代码二、代理设计模式代理是英文 Proxy 翻译过来的。一个商家要邀请明星参加商演,需要跟她的经纪人洽谈,而不直接与明星本人谈。这就是代理设计模式代理设计模式1.1 真实对象(明星)1.1 代理对象(经纪人)1.3 抽象对象(抽象功能),预约时间、洽谈出场费代理设计模式优点:2.1 保护真实对象:真实对象与用户不直接接触2.2 让真实对象指责更加明确:明星只参与演出,预约时原创 2020-12-08 15:55:00 · 128 阅读 · 0 评论 -
Spring 学习(八):AOP异常通知和环绕通知
AOP异常通知和环绕通知一、配置异常通知的步骤(AspectJ方式)二、配置异常通知的步骤(Schema-based方式)三、配置环绕通知的步骤(Schema-based方式)一、配置异常通知的步骤(AspectJ方式)只有在切点报异常才能触发异常通知,否则无效在Spirng 中只有 AspectJ 方式提供可异常通知的方法实现步骤新建类,在类写任意名称的方法package com.zhang.advice;public class MyThrowAdvice { public voi原创 2020-12-07 20:39:55 · 585 阅读 · 1 评论 -
Spring 学习(七):AOP简介及Schema-base实现前置和后置通知
AOP简介及Schema-base实现前置和后置通知一、 AOP概述1.1 什么是AOP?1.2 AOP应用场景说明二、AOP 执行流程三、AOP编程四、Schema-base实现前置和后置通知一、 AOP概述1.1 什么是AOP?AOP(Aspect Oriented Programing)面向切面编程。AOP采取横向抽取机制,取代了传统的继承纵向继承体系重复性代码(性能监视、事务管理、安全检查、缓存)Spring的AOP采用了纯Java实现,不需要专门的编译过程和类加载器,在运行期间通过动态代原创 2020-12-07 17:31:31 · 145 阅读 · 0 评论 -
Spring 学习(六):Sprig Bean 自动注入
一、Sprig Bean 自动注入一、自动注入二、Sprig 自动注入 byName三、Sprig 自动注入 byType四、设置默认方式一、自动注入在 spring 配置文件中对象名和 ref =“id” 名相同使用自动注入,可以不配置< constructor-arg>和< property> 元素,这有助于减少编写一个大的基于 Spring 的应用程序的 XML 配置的数量。下列自动注入模式,它们可用于指示 Spring 容器为来使用自动装配进行依赖注入。你可以使用<原创 2020-12-07 16:11:23 · 174 阅读 · 0 评论 -
MyBatis 学习(九):动态SQL
动态SQL一、动态SQL二、DynamicSQL Test2.1 准备工作2.2 if一、动态SQLMyBatis 还有一个强大特性就是它的动态SQL在实际项目开发中,经常需要根据不同条件拼接 SQL 语句,拼接是还要确保不能忘了必要的空格,有时候还要注意省掉列名列表的逗号,等等。常用的动态 SQL 元素包括:ifchoose(when、otherwise)whereforeachbind二、DynamicSQL Test2.1 准备工作首先,给之前创建的数据库 mybatis原创 2020-12-06 11:02:58 · 90 阅读 · 0 评论 -
MyBatis学习(八):ResultMap结果集映射
ResultMap结果集映射resultMap 元素是 MyBatis 中最重要最强大的元素。它的作用是告诉 MaBatis 将从结果集中取出的数据转化成开发者所需要的对象。下面是最简单的映射语句示例:<select id="selectAllStudent" resultType="map"> select * from student</select>selectAllStudent 的 < select> 元素执行一条查询语句,查询 student 表原创 2020-12-04 16:24:00 · 1861 阅读 · 0 评论 -
MyBatis 学习(七):深入 Mapper XML映射文件
深入 Mapper XML映射文件一、Mapper XML映射文件二、select 查询语句三、insert、update 和 delete四、sql 元素五、参数(Parameters)一、Mapper XML映射文件MyBatis 的真正强大之处在于它的映射语句,这也是它的魔力所在。由于它的功能异常强大,映射器XML文件就显得相对简单。SQL映射文件常用的元素如下:select 映射查询语句insert 映射插入语句update 映射更新语句delete 映射删除语句sql 可被其他语原创 2020-12-04 13:47:22 · 646 阅读 · 0 评论 -
MyBatis 学习(六):Spring 整合 MyBatis
Spring 整合 MyBatis1)在创建项目之前,首先在 MySQL 数据库中创建 mybatis 数据库和 student 表,sql 语句如下所示:CREATE DATABASES mybatis;USE mybatis;DROP TABLE IF EXISTS `student`CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `原创 2020-12-03 20:29:22 · 99 阅读 · 0 评论 -
MyBatis 学习(五):深入MyBatis的配置文件
这里写目录标题一、MyBatis 初始化二、MyBatis 的配置文件结构顶层configuration 配置1. properties 属性2. settings 设置3. typeAliases 类型命名4. environments 配置环境一、MyBatis 初始化MyBatis 初始化基本过程:SqlSessionFactoryBuilder 根据传入的数据流生成 Configuration 对象,然后根据 Configuration 对象创建默认的 SqlSessionFactory 实例原创 2020-12-03 13:57:31 · 180 阅读 · 0 评论 -
MyBatis 学习(四):第一个MyBatis程序
第一个MyBatis程序1)在创建项目之前,首先在 MySQL 数据库中创建 mybatis 数据库和 student 表,sql 语句如下所示:CREATE DATABASES mybatis;USE mybatis;DROP TABLE IF EXISTS `student`CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `sex`原创 2020-12-02 20:07:40 · 208 阅读 · 0 评论 -
MyBatis 学习(三):MyBatis的核心组件
MyBatis的核心组件一、常用对象二、SqlSessionFactory 对象三、SqlSession 对象一、常用对象MyBatis 中的常用对象有 SqlSessionFactiry 和 SqlSession。SqlSessionFactoryBuilder(构造器):它会根据配置或者代码来生成 SqlSessionFactory,采用的是分步构建的 Builder 模式。SqlSessionFactory(工厂接口):依靠它来生成 SqlSession,使用的是工厂模式。SqlSessi原创 2020-12-02 09:58:08 · 160 阅读 · 1 评论 -
MyBatis 学习(二):MyBatis 的工作原理
MyBatis 的工作原理一、MyBatis 下载二、MyBatis的工作原理2.1 MyBatis 的工作原理图2.2 工作原理解析一、MyBatis 下载二、MyBatis的工作原理2.1 MyBatis 的工作原理图2.2 工作原理解析原创 2020-12-01 20:54:58 · 106 阅读 · 0 评论 -
MyBatis 学习(一):MyBatis 简介
MyBatis 简介一 什么是ORM?一、ORM简介二、为什么使用ORM框架二 流行的ORM框架简介三 MyBatis 概述一、MyBatis是什么?二、Hibernate 和 MyBatis 的区别一 什么是ORM?一、ORM简介对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。因此可以把ORM当成应用程序原创 2020-12-01 16:19:49 · 203 阅读 · 0 评论 -
Spring学习(五):Spring 依赖注入
Spring 依赖注入一 依赖注入二 Spring 基于构造函数的依赖注入三 Spring 基于设值函数的依赖注入四 Spring 注入集合一 依赖注入依赖注入Spring框架的核心功能之一就是通过依赖注入的方式来管理Bean之间的依赖关系。每个基于应用程序的 java 都有几个对象,由这些对象一起工作来呈现出终端用户所看到的工作的应用程序。当编写一个复杂的 Java 应用程序时,应用程序类应该尽可能独立于其他 Java 类来增加这些类重用的可能性,并且在做单元测试时,测试独立于其他类的独立性。原创 2020-11-30 16:25:24 · 92 阅读 · 1 评论 -
Spring学习(四):Spring Bean
Spring Bean一 Spring Bean定义二 Spring Bean 作用域三 Spring Bean 生命周期一 Spring Bean定义Bean定义被称作 bean 的对象是构成应用程序的支柱也是由 Spring IoC 容器管理的。bean 是一个被实例化,组装,并通过 Spring IoC 容器所管理的对象。这些 bean 是由用容器提供的配置元数据创建的(例如,以XML<bean/ >定义的形式)在容器本身内,这些bean定义表示为BeanDefinition对象,原创 2020-11-28 11:04:39 · 121 阅读 · 1 评论 -
Spring学习(三):Spring IoC容器
Spring IoC容器一 Spring IoC容器概述二 Spring BeanFactory容器三 Spring ApplicationContext 容器四 详解IoC容器一 Spring IoC容器概述Spring 容器是 Spring 框架的核心。容器将创建对象,把它们连接在一起,配置它们,并管理他们的整个生命周期从创建到销毁。Spring 容器使用依赖注入(DI)来管理组成一个应用程序的组件。这些对象被称为 Spring Beans,我们将在下一章中进行讨论。通过阅读配置元数据提供的指原创 2020-11-27 21:12:34 · 106 阅读 · 0 评论 -
Spring学习(二):控制反转(IOC)与依赖注入(DI)
控制反转和依赖注入一 控制反转(IOC)1.1 IOC是什么二 依赖注入(DI)2.1 IoC和DI一 控制反转(IOC)1.1 IOC是什么Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。ioc的思想最核心的地方在于,资源不由使用资源的双方管理,而由不使用资源的第三方管理,这可以带来很多好处。第一,资源集中管理,实现资源的可配置和易管理。第二,降低了使用原创 2020-11-27 16:23:43 · 86 阅读 · 0 评论 -
Spring学习(一):Spring 概述与介绍
Spring 概述与介绍一 Spring 概述二 Spring 优良特性三 Spring框架体系结构四 Spring优点一 Spring 概述1.Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。2.Spring 框架是一个开源的 Java 平台,它最初是由 Rod Johnson 编写的,并且于 2003 年 6 月首次在 Apache 2.0 许可下发布。3.Spring 是轻量级的框架,其原创 2020-11-27 11:30:09 · 212 阅读 · 0 评论