-
Springboot笔记(九) Springboot原理解析
09、原理解析1、Profile功能为了方便多环境适配,springboot简化了profile功能。1、application-profile功能 默认配置文件 application.yaml;任何时候都会加载 指定环境配置文件 application-{env}.yaml,比如application-dev.yaml 激活指定环境 配置文件激活 spring: profiles: active: dev #只写...…
-
Springboot笔记(八) Springboot指标监控
08、指标监控1、SpringBoot Actuator1、简介未来每一个微服务在云上部署以后,我们都需要对其进行监控、追踪、审计、控制等。SpringBoot就抽取了Actuator场景,使得我们每个微服务快速引用即可获得生产级别的应用监控、审计等功能。引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-star...…
-
Springboot笔记(七) Springboot单元测试
07、单元测试1、JUnit5 的变化Spring Boot 2.2.0 版本开始引入 JUnit 5 作为单元测试默认库作为最新版本的JUnit框架,JUnit5与之前版本的Junit框架有很大的不同。由三个不同子项目的几个不同模块组成。 JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit VintageJUnit Platform: Junit Platform是在JVM上启动测试框架的基础,不仅支持Junit自制的测试引擎,其他测试引擎...…
-
Springboot笔记(六) Springboot数据访问
06、数据访问1、SQL1、数据源的自动配置1、导入JDBC场景<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jdbc</artifactId></dependency> 导入JDBC场景,默认使用的是-HikariDataSource,并且会导入jdbc及事务的包...…
-
Springboot笔记(五) Springboot web开发
05、Web开发1、SpringMVC自动配置概览Spring Boot provides auto-configuration for Spring MVC that works well with most applications.(大多场景我们都无需自定义配置)The auto-configuration adds the following features on top of Spring’s defaults: Inclusion of ContentNegotiating...…
-
Springboot笔记(四) Springboot配置文件
04、配置文件SpringBoot使用一个全局的配置文件,配置文件名application是固定的;可以写成以下几种拓展名: application.properties application.yml application.yaml注意:如果一个项目中同时存在application.properties和application.yml两种格式的配置文件,他们会相互配合,但如果里面出现相同的配置,则优先会选择properties格式配置文件里的配置1、文件类型1.1、propert...…
-
Springboot笔记(三) 自动配置原理
03、了解自动配置原理1、SpringBoot特点1.1、依赖管理 父项目做依赖管理依赖管理:pom文件中导入了父项目 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.4.RELEASE</version...…
-
Springboot笔记(二) Springboot入门程序
02、SpringBoot2入门1、系统要求 Java 8 & 兼容java14 . Maven 3.3+ idea springboot 2.3.41.1、maven设置maven安装目录下\config\settings.xml中增加如下内容<!--添加阿里云的镜像地址--><mirrors> <mirror> <id>nexus-aliyun</id> <mirrorO...…
-
Springboot笔记(一) Spring与SpringBoot
学习要求 熟悉Spring基础 熟悉Maven使用环境要求 Java8及以上 Maven 3.3及以上:https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started-system-requirements01、Spring与SpringBoot1、Spring能做什么1.1、Spring的能力微服务,响应式开发,分布式云开发,web开发,无服务开...…
-
SpringMVC笔记(六) SSM整合
环境准备数据库表-- 建库create database ssm;-- 建表create table account(id int primary key auto_increment,name varchar(100),money double(7,2),);-- 插入数据INSERT INTO `account` VALUES ('1', 'a', '10000.00');INSERT INTO `account` VALUES ('2', 'b', '10000.00');创建Mav...…
-
SpringMVC笔记(五) SpringMVC拦截器
拦截器拦截器的作用Spring MVC 的处理器拦截器类似于 Servlet 开发中的过滤器 Filter,用于对处理器进行预处理和后处理。用户可以自己定义一些拦截器来实现特定的功能。谈到拦截器,还要向大家提一个词——拦截器链(Interceptor Chain)。拦截器链就是将拦截器按一定的顺序联结成一条链。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。说到这里,可能大家脑海中有了一个疑问,这不是我们之前学的过滤器吗?是的它和过滤器是有几分相似,但是也有区别...…
-
SpringMVC笔记(四) SpringMVC文件上传及异常处理
文件上传的回顾文件上传的必要前提 form 表单的 enctype 取值必须是:multipart/form-data(默认值是:application/x-www-form-urlencoded) enctype:是表单请求正文的类型 method 属性取值必须是 Post 提供一个文件选择域 input type=”file” 文件上传的原理分析当 form 表单的 enctype 取值不是默认值后, request.getParame...…
-
SpringMVC笔记(三) SpringMVC常用注解
RequestMapping作用:用于建立请求 URL 和处理请求方法之间的对应关系出现位置:该注解可以注解在方法上,也可以注解在类上 类上:请求 URL 的第一级访问目录。此处不写的话,就相当于应用的根目录。 写的话需要以/开头。它出现的目的是为了使我们的 URL 可以按照模块化管理:例如:账户模块:/account/add/account/update/account/delete订单模块:/order/add/order/update/order/delete 方法上:请求 UR...…
-
SpringMVC笔记(二) SpringMVC参数绑定和响应数据结果视图
参数绑定作用:接受client提交的数据支持的数据类型基本类型参数:包括基本类型和 String 类型POJO 类型参数:包括实体类,以及关联的实体类数组和集合类型参数:包括 List 结构和 Map 结构的集合(包括数组)示例使用原生的ServletAPI对象只需要在控制器的方法中将servletApi对象当作参数传入即可@RequestMapping(value = "/converter1",method = RequestMethod.POST)public void conver...…
-
SpringMVC笔记(一) SpringMVC入门
SpringMVC 的基本概念三层架构我们的开发架构一般都是基于两种形式,一种是 C/S 架构,也就是客户端/服务器,另一种是 B/S 架构,也就是浏览器服务器。在 JavaEE 开发中,几乎全都是基于 B/S 架构的开发。那么在 B/S 架构中,系统标准的三层架构包括:表现层、业务层、持久层。表现层:web层。用来和客户端进行数据交互的。表现层一般会采用MVC的设计模型 (MVC 是表现层的设计模型,和其他层没有关系)业务层:service 层。它负责业务逻辑处理持久层: dao 层。负...…
-
Spring笔记(十一) Spring中的事务控制
Spring 事务控制我们要明确的 JavaEE 体系进行分层开发,事务处理位于业务层(Service层) spring 框架为我们提供了一组事务控制的接口。这组接口是在spring-tx-5.2.8.RELEASE.jar 中 spring 的事务控制都是基于 AOP 的,它既可以使用编程的方式实现,也可以使用配置的方式实现。实际开发中很少使用编程方式。Spring 中事务控制的 API 介绍PlatformTransactionManager此接口是 spring 的事务管理器,...…
-
Spring笔记(十) Spring中的JdbcTemplate
JdbcTemplate 概述它是 spring 框架中提供的一个对象,是对原始 Jdbc API 对象的简单封装。是一个操作模板类。spring 框架为我们提供了很多的操作模板类。操作关系型数据的: JdbcTemplate HibernateTemplate操作 nosql 数据库的: RedisTemplate操作消息队列的: JmsTemplate使用步骤导入依赖<dependency> <groupId>org.springframework<...…
-
Spring笔记(九) Spring基于注解的AOP
实现步骤引入相关依赖spring-context,aspectjweaver<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.8.RELEASE</version></dependency><dependency&...…
-
Spring笔记(八) SpringAOP中的切入点表达式及通知类型
切入点表达式就是指定对哪些类的哪些方法进行增强切入点表达式的几种写法关键字:execution(表达式)表达式语法:[访问修饰符] 返回值类型 包名.类名.方法名(参数)标准切入点表达式写法:execution(void com.mg.service.impl.AccountServiceImpl.saveAccount()) 访问修饰符可省略 execution(void com.mg.service.impl.AccountServiceImpl.saveAccount...…
-
Spring笔记(七) Spring AOP
代理模式通过代理类为原始类增加额外功能,不修改源码的基础上对方法进行增强代理类的本质=原始类+额外功能+实现原始类相同接口静态代理字节码一上来就创建好,并完成加载。装饰者模式就是静态代理的一种体现。以租房为例:在原有房东类的基础上,增加一个中介类添加额外功能,并实现房东类的租房方法静态代理的缺点: 代理类的数量过多 不利于项目管理 额外功能代码冗余 替换代理的额外功能 麻烦动态代理字节码随用随创建,随用随加载动态代理常用的两种方式基于接口的动态代理提供者: JDK 官方的 Proxy...…