Spring-Boot
Java_Glory
积沙成塔~
展开
-
application.properties/yml配置文件的加载位置及加载顺序
1.Spring Boot启动会扫描以下位置的application.properties或者application.yml文件作为Spring Boot 的默认配置文件①: - file(项目文件):./config/②: - file(项目文件):./③: - classpath(resources类路径):/config/④: - classpath(resources类路径...原创 2019-04-26 10:36:58 · 7886 阅读 · 0 评论 -
Spring Boot编写国际化配置文件步骤&点击链接实现国际化效果
1.编写国际化配置文件 , 抽取页面需要显示的国际化消息2.Spring Boot 自动配置好了管理国际化资源文件的组件,可以在properties文件中直接配置@ConfigurationProperties( prefix = "spring.messages")public class MessageSourceAutoConfiguration { pri...原创 2019-05-06 11:07:05 · 1038 阅读 · 0 评论 -
禁用thymeleaf模板引擎缓存
1.在开发期间模板引擎页面修改内容后,页面刷新不会有效果2.可以在properties配置文件中禁用thymeleaf模板引擎缓存# 禁用缓存spring.thymeleaf.cache=false3.在项目运行期间,IDEA不会让其修改内容生效,或者按Ctrl+F9重新编译实时生效...原创 2019-05-06 15:10:07 · 2586 阅读 · 1 评论 -
Spring Boot拦截器登录检查
1.实现一个登录检查的拦截器/** * 登陆检查, */public class LoginHandlerInterceptor implements HandlerInterceptor { //目标方法执行之前 @Override public boolean preHandle(HttpServletRequest request, HttpServlet...原创 2019-05-06 16:07:58 · 187 阅读 · 0 评论 -
thymeleaf公共页面元素抽取
1、抽取公共片段<div th:fragment="copy">© 2011 The Good Thymes Virtual Grocery</div>2、引入公共片段<div th:insert="~{footer :: copy}"></div>~{templatename::selector}:模板名::...原创 2019-05-06 17:19:04 · 476 阅读 · 0 评论 -
Spring Boot 嵌入式Servlet容器启动原理
1,Spring Boot 应用启动运行run方法2,refreshContext(context);Spring Boot刷新IOC容器【创建IOC容器对象,并初始化容器,创建容器中的每一个组件】;如果是web应用创建一个web的ioc容器:AnnotationConfigEmbeddedWebApplicationContext,否则创建一个默认的容器:AnnotationConfigAp...原创 2019-05-09 11:35:26 · 249 阅读 · 0 评论 -
Spring Boot 整合Druid配置数据源监控
整合Druid数据源: 1,导入Druid数据源: <!--引入Druid数据源--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId&g...原创 2019-05-14 10:52:46 · 330 阅读 · 0 评论 -
Spring Boot 整合 MyBatis
Spring Boot 整合 MyBatis: 1,导入 mybatis-spring-boot-starter 依赖: <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter<...原创 2019-05-14 16:31:21 · 160 阅读 · 0 评论 -
Spring Boot 创建Packaging为War包的应用并启动
1,创建项目时,Packaging选择war,项目具体创建步骤见:IEDA快速创建Spring-Boot应用2,点击IDEA右上角打开项目模型,选择Modules---Web---Web Resource Directories里的项目路径双击---点击OK,Yes自动创建webapp文件夹3,再点击Deployment Descriptors右边的添加“+”符号,注意修改路径到:...原创 2019-05-09 17:47:41 · 1041 阅读 · 0 评论 -
thymeleaf重用页面-添加用post请求,修改用put请求
1,在重用的页面区分是添加还是修改,用${emp!=null} 判断<input name="lastName" type="text" th:value="${emp!=null}?${emp.lastName}">2,页面创建一个post表单,添加用post请求,修改用put请求,创建一个input项,name="_method";值就是指定的请求方式 <f...原创 2019-05-07 11:38:40 · 4810 阅读 · 1 评论 -
Spring Boot 使用XML文件配置 MyBatis
1,创建一个接口,@Mapper或者@MapperScan将接口扫描装配到容器中JavaBean:public class Employee { private Integer id; private String lastName; private Integer gender; private String email; private In...原创 2019-05-14 17:25:49 · 1488 阅读 · 1 评论 -
thymeleaf模板引擎的自定义属性&使用delete删除请求
1.thymeleaf模板引擎自定义属性th:attr="属性名=属性值"<button th:attr="del_uri=@{/emp/}+${emp.id}" class="btn btn-sm btn-danger deleteBtn">删除</button>2.使用delete删除请求.....<main role="main" clas...原创 2019-05-07 14:56:22 · 3895 阅读 · 5 评论 -
Spring Boot 整合JPA
Spring Boot 整合 JPA:1,引入spring-boot-starter-data-jpa: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starte...原创 2019-05-15 11:27:39 · 169 阅读 · 0 评论 -
Spring Boot 使用外置的 Servlet 容器&启动原理
嵌入式 Servlet 容器:应用打成可执行的jar包 优点:简单,便携 缺点:默认不支持JSP,优化定制比较复杂(使用定制器【ServerProperties、自定义EmbeddedServletContainerCustomizer】,自己编写嵌入式Servlet容器的创建工厂【EmbeddedServletContainerFactory】 );外置的Servle...原创 2019-05-10 15:33:06 · 215 阅读 · 0 评论 -
Spring Boot 启动配置原理
启动原理:SpringApplication.run(主程序类):几个重要的事件回调机制配置在META-INF/spring.factoriesApplicationContextInitializer SpringApplicationRunListener只需要放在ioc容器中ApplicationRunner CommandLineRunner运行流程:1,创...原创 2019-05-16 10:47:26 · 164 阅读 · 0 评论 -
Spring Boot 事件监听机制&测试
可结合文章浏览:Spring Boot 启动配置原理配置在META-INF/spring.factoriesApplicationContextInitializer:public class HelloApplicationContextInitializer implements ApplicationContextInitializer<ConfigurableAppli...原创 2019-05-16 14:37:08 · 300 阅读 · 0 评论 -
Spring Boot 数据访问 JDBC&自动配置原理
1,JDBC Spring Boot 在项目创建的时候勾选了JDBC和MySQL组件,会自动导入相关依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s...原创 2019-05-13 16:34:57 · 698 阅读 · 0 评论 -
Spring Boot 中嵌入式 Servlet 容器自动配置原理
1,参照 Spring Boot 自动配置包里面的web模块,EmbeddedServletContainerAutoConfiguration 嵌入式的 Servlet 容器自动配置@AutoConfigureOrder(Ordered.HIGHEST_PRECEDENCE)@Configuration@ConditionalOnWebApplication@Import(B...原创 2019-05-08 17:26:12 · 285 阅读 · 0 评论 -
Thymeleaf模板引擎的使用&语法
1.Thymeleaf的默认规则:@ConfigurationProperties( prefix = "spring.thymeleaf")public class ThymeleafProperties { private static final Charset DEFAULT_ENCODING = Charset.forName("UTF-8"); pri...原创 2019-04-30 12:14:36 · 1243 阅读 · 0 评论 -
Spring Boot 配置和替换 嵌入式Servlet容器
Spring Boot 默认使用 Tomcat 作为嵌入式的 Servlet 容器:1,定制和修改Servlet容器相关的配置 ①:修改和server有关的配置(ServerProperties【内部也是EmbeddedServletContainerCustomizer实现配置功能】):#项目访问路径server.port=8081server.context-pa...原创 2019-05-08 15:49:51 · 432 阅读 · 0 评论 -
外部配置的加载顺序
Spring Boot 也可以从以下位置加载配置,优先级从高到低,高优先级的配置覆盖低优先级的配置,所有配置会形成互补配置;1.命令行参数(多个配置指令用空格隔开) java -jar 项目jar包名 --server.port=8088 --server.context.path=/boot2.来自java:comp/env的JNDI属性3.Java系统属性(System...原创 2019-04-26 11:09:53 · 356 阅读 · 0 评论 -
自动配置报告
自动配置类必须在一定条件下才能生效:通过启用 debug=true属性,来让控制台打印自动配置报告,这样可以很方便的查看哪些自动配置类生效启用的自动配置类:Positive matches:----------------- CodecsAutoConfiguration matched: - @ConditionalOnClass found requ...原创 2019-04-26 14:54:44 · 2423 阅读 · 0 评论 -
YML(YAML)语法(文件后缀为.yml格式)
基本语法:k:(空格)v : 表示一对键值对(空格不能省略),以空格控制层级关系,只要是左对齐的数据,都是同一级别;注意: 属性和值都是大小写敏感server: port: 8083 path: /helloBoot值的写法:字面量:数字,字符串,Boolean(布尔)值(字符串默认不用加上单引号或双引号); " "(双引号):不会转义字符串里...原创 2019-04-22 15:47:55 · 13174 阅读 · 0 评论 -
日志框架分类和选择
日志门面(日志的抽象层) 日志实现 JCL(Jakarta Commons Logging) SLF4J(Simple Logging Facade for java) Jboss-Logging Log4j JUL(java.util.logging) Log4j2 Logback 选一个日...原创 2019-04-26 15:52:08 · 758 阅读 · 0 评论 -
Spring Boot中获取yml配置文件的值
1.根据配置文件的属性创建一个bean实体类server: port: 8081person: name: boot age: 18 date: 2019/04/22 maps: {k1: v1,k2: v2} list: [e1,e2,e3] animal: name: dog age: 3Person 实体类;package c...原创 2019-04-22 17:10:49 · 2685 阅读 · 1 评论 -
properties配置文件属性提示与编码问题
1.创建实体类以及依赖配置文件处理器 详情见 :Spring Boot中获取yml配置文件的值<!--导入配置文件处理器,配置文件进行绑定就会有提示--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-b...原创 2019-04-23 10:40:13 · 839 阅读 · 0 评论 -
@Value注解获取值和@ConfigurationProperties注解获取值区别
@ConfigurationProperties @Value 数据注入方式 批量注入配置文件中的属性 一个一个指定 松散绑定 支持 不支持 SpEL 不支持 支持 JSR303数据校验 支持 不支持 复杂类型封装 支持 不支持 配置文件格式为.yml和properties格式的都可以获取到值;...原创 2019-04-23 11:14:07 · 535 阅读 · 0 评论 -
properties配置文件占位符
1.随机数${random.value}${random.uuid}${random.int(10)}${random.int(value,[max])}${random.long}2.占位符获取之前配置的值,如果没有则以字符串格式显示,表达式可以用:指定默认值person.name=你好${random.uuid}person.age=${random.int(1,10...原创 2019-04-23 15:46:59 · 3614 阅读 · 0 评论 -
其他日志框架统一转换为SLF4J
如何让应用中所有的日志都统一到SLF4J:1.将应用中其他日志框架先排除出去; 如果要引入其他框架,一定要把这个框架的默认日志依赖移除掉(各框架默认使用的日志框架不一样)。不然会出现包冲突的问题<dependency> <groupId>org.springframework</groupId> <artifactI...原创 2019-04-28 10:22:04 · 391 阅读 · 0 评论 -
Profile多环境支持
简介:Profile是Spring对不同环境提供不同配置功能的支持,可以通过激活,指定参数等方式快速切换环境1.多profile文件形式- 格式 : application-{profile}.properties/ymlapplication-one.properties application-two.properties默认使用application.proper...原创 2019-04-23 17:05:08 · 294 阅读 · 0 评论 -
Spring Boot日志框架的默认配置与修改
Spring Boot默认帮我们配置好了日志;1.在测试类中创建一个记录器;package com.myproject.springboot;import org.junit.Test;import org.junit.runner.RunWith;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import or...原创 2019-04-28 15:10:25 · 779 阅读 · 0 评论 -
IEDA快速创建Spring-Boot应用
IDEA左上角的File--->new--->project然后点击Spring Initializr --->指定jdk版本 --->next网上有很多朋友遇到没有Spring Initializr这一选项的问题: settings -> Plugins 里面搜索Spring Boot,勾选上,然后再重启下IDEA 网友反馈,最新...原创 2019-04-19 17:24:19 · 595 阅读 · 0 评论 -
Spring Boot-web开发 webjars与静态资源映射规则
1.首先创建一个Spring Boot应用的web工程, 具体步骤参照 :IEDA快速创建Spring-Boot应用2.Spring Boot对静态资源的映射规则: Ctrl+N搜索 :WebMvcAutoConfiguration 再Ctrl+F搜索方法 :addResourceHandlers , 可以看到下面 public...原创 2019-04-29 15:44:59 · 346 阅读 · 0 评论 -
Spring Boot-web开发 引入thymeleaf模板引擎
Spring Boot推荐使用thymeleaf : 语法更简单 , 功能更强大 ;引入thymeleaf : <!--引入thymeleaf模板引擎--> <dependency> <groupId>org.springframework.boot</groupId> ...原创 2019-04-29 16:31:51 · 404 阅读 · 0 评论 -
Spring Boot中Spring MVC自动配置原理,扩展与全面接管
Spring Boot 自动配置好了 Spring MVC:以下是Spring Boot 对 Spring MVC 的自动配置 : (WebMvcAutoConfiguration)Inclusion ofContentNegotiatingViewResolverandBeanNameViewResolverbeans. //自动配置了ViewResolver...原创 2019-05-05 16:10:58 · 491 阅读 · 0 评论 -
Spring Boot 默认的错误处理机制 & 定制错误页面
原理: 可以参照 ErrorMvcAutoConfiguration :错误处理的自动配置 给容器中添加了一下组件: 1,DefaultErrorAttributes:在页面共享信息 2,BasicErrorController:处理默认的 /error 请求 3,ErrorPageCus...原创 2019-05-08 11:43:21 · 1874 阅读 · 0 评论 -
Spring Boot 自定义 starter 功能
1,创建一个空工程2,在new Module创建一个maven工程3,再new Module创建一个Spring Initializr4,点击Apply,OK5,在my-spring-boot-starter的pom.xml文件中引入myproject-spring-boot-starter-autoconfig自动配置包 &...原创 2019-05-22 23:41:54 · 360 阅读 · 0 评论