
Spring Boot
HernSong
HernSong
展开
-
SpringBoot —— 注入数据的方式
关于注入数据说明方式一:不通过配置文件注入数据(@Value注解实现)通过@Value将外部的值动态注入到Bean中,使用的情况有: 注入普通字符串 注入操作系统属性 注入表达式结果 注入其他Bean属性:注入Student对象的属性name 注入文件资源 注入URL资源 辅助代码packagecom.hannpang...转载 2020-03-18 22:05:46 · 506 阅读 · 0 评论 -
SpringBoot——通用Mapper
注意:通用Mapper支持单表操作,不支持通用的多表联合查询。简介通用Mapper都可以极大的方便开发人员。可以随意的按照自己的需要选择通用方法,还可以很方便的开发自己的通用方法。极其方便的使用MyBatis单表的增删改查。支持单表操作,不支持通用的多表联合查询。通用 Mapper 支持 Mybatis-3.2.4 及以上版本。主要作用:自动生成增删改查的SQL语句,大大减化对单表的操...转载 2020-03-13 16:46:53 · 792 阅读 · 1 评论 -
SpringBoot——@GeneratedValue注解
作用(自定义主键生成策略):@GeneratedValue注解存在的意义主要就是为一个实体生成一个唯一标识的主键,@GeneratedValue提供了主键的生成策略,即主要作用时自定义主键生成策略。默认SpringBoot的@GeneratedValue 是不需要加参数的,但是如果数据库控制主键自增(Auto_Increment), 不加参数就会报错。@GeneratedValue注解有两...原创 2020-03-13 16:24:58 · 7205 阅读 · 3 评论 -
SpringBoot——邮件服务简单实现(文本、HTML、附件、多个附件、图片)
很多时候邮件发送并不是主业务必须关注的结果,比如通知类、提醒类的业务可以允许延时或者失败。这个时候可以采用异步的方式来发送邮件,加快主交易执行速度,在实际项目中可以采用MQ发送邮件相关参数,监听到消息队列之后启动发送邮件。1、在pom.xml文件中添加SpringBoot-mail引用 <!--整合SpringBoot-mail--> <...原创 2020-01-31 23:49:10 · 1748 阅读 · 0 评论 -
SpringBoot Debug调试
背景:Spring Boot 项目在使用 Spring Boot Maven 插件执行启动命令spring-boot:run的时候,如果设置的断点进不去,要进行以下的设置。官方解决方案:By default, the run goal runs your application in a forked process. If you need to debug it, you s...转载 2020-01-14 08:48:02 · 2065 阅读 · 0 评论 -
Spring Boot排除自动配置的方法
Spring Boot 提供的自动配置非常强大,某些情况下,自动配置的功能可能不符合我们的需求,需要我们自定义配置,这个时候就需要排除/禁用 Spring Boot 某些类的自动化配置了。比如:数据源、邮件,这些都是提供了自动配置的,我们需要排除 Spring Boot 的自动化配置,交给我们自己来自定义。方法1使用@SpringBootApplication注解的时候,使用 excl...原创 2019-12-11 15:39:29 · 4125 阅读 · 0 评论 -
SpringBoot——web开发整合Thymeleaf模板资源响应失败解决方法(返回return中的一串字符)
在编写Controller控制类时,只能使用@Controller注解,不能使用@RestController或@ResponseBody注解,否则返回return语句中的一串字符。例如正确Controller类编码:package com.hern.controller;import org.springframework.stereotype.Controller;import...原创 2019-12-01 20:00:02 · 453 阅读 · 0 评论 -
SpringBoot——web开发引入Thymeleaf模板引擎
1、引入Thymeleaf模板引擎 <!--引入thymeleaf模板引擎--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starte...原创 2019-11-30 23:20:55 · 371 阅读 · 0 评论 -
SpringBoot静态资源处理
做web开发的时候往往会有很多静态资源,如html、图片、css等。那如何向前端返回静态资源呢?以前做web开发知道在创建的web工程下会有一个webapp目录,只要把静态资源放在该目录下就可直接访问。但SpringBoot工程并没有这个目录,那应该怎么处理?一、最古老的方式最古老的办法就是将静态资源通过流直接返回给前端,在maven工程的resources的根目录下建立一个html的目录...原创 2019-11-30 20:00:11 · 371 阅读 · 0 评论 -
SpringBoot切换日志框架
可以按照slf4j的日志适配图,进行相关的切换;slf4j+log4j的方式 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</arti...转载 2019-11-27 22:10:23 · 400 阅读 · 0 评论 -
SpringBoot日志框架分类和选择
日志框架市场上存在非常多的日志框架。JUL(java.util.logging),JCL(Apache Commons Logging),Log4j,Log4j2,Logback、SLF4j、jboss-logging等。 Spring Boot在框架内容部使用JCL,spring-boot-starter-logging采用了 slf4j+logback的形式,Spring Boot也能自动...转载 2019-11-07 21:19:36 · 665 阅读 · 0 评论 -
SpringBoot自动配置原理
初识Spring Boot时我们就知道,Spring Boot有一个全局配置文件:application.properties或application.yml,我们的各种属性都可以在这个文件中进行配置,最常配置的比如:server.port、logging.level.* 等等,然而我们实际用到的往往只是很少的一部分,那么这些属性是否有据可依呢?答案当然是肯定的,这些属性都可以在官方文档中查...转载 2019-11-07 15:46:36 · 258 阅读 · 0 评论 -
SpringBoot外部配置加载顺序
点击查看官方文档参考Spring Boot 支持多种外部配置方式,这些方式优先级如下:命令行参数 来自java:comp/env的JNDI属性 Java系统属性(System.getProperties()) 操作系统环境变量 RandomValuePropertySource配置的random.*属性值 jar包外部的application-{profile}.properti...原创 2019-11-07 14:30:00 · 374 阅读 · 0 评论 -
SpringBoot配置文件的加载位置
配置文件加载位置spring boot 启动会扫描以下位置的application.properties或者 application.yml文件作为Spring boot的默认配置文件file:./config/ file:./ classpath:/config/ classpath:/以上是按照优先级从高到低的顺序,所有位置的文件都会被加载,高优先级配置内容会覆盖低优先级配置内...原创 2019-11-06 21:16:22 · 1255 阅读 · 0 评论 -
SpringBoot——Profile多环境支持
Profile是Spring对不同环境提供不同配置功能的支持,可以通过激活、 指定参数等方式快速切换环境。多profile文件形式,格式:application-{profile}.properties/yml 例如:application-dev.properties、application-prod.properties 多profile文档块模式: 激活方式: 命令行 --spr...原创 2019-11-06 21:03:22 · 480 阅读 · 0 评论 -
SpringBoot配置文件占位符
在properties或yaml配置文件中是可以使用占位符的随机数${random.value}- 类似uuid的随机数,没有"-"连接 ${random.int}- 随机取整型范围内的一个值 ${random.long}- 随机取长整型范围内的一个值 ${random.long(100,200)}- 随机生成长整型100-200范围内的一个值 ${random.uuid}...原创 2019-11-06 20:31:09 · 584 阅读 · 0 评论 -
SpringBoot——@ImportResource注解
@ImportResource用于导入Spring的配置文件,让配置文件(如applicationContext.xml)里面的内容生效; Spring Boot里面没有Spring的配置文件,我们自己编写的配置文件,也不能自动识别; 想让Spring的配置文件生效,加载进来; @ImportResource标注在一个配置类上。applicationContext.xml文件:<...原创 2019-11-06 20:16:28 · 3797 阅读 · 0 评论 -
Springboot启动原理解析(@SpringBootApplication和SpringApplication)
开发任何一个Spring Boot项目,都会用到如下的启动类:@SpringBootApplicationpublicclassApplication{publicstaticvoidmain(String[]args){SpringApplication.run(Application.class,args);}}从上面代码...原创 2019-11-06 10:47:29 · 4107 阅读 · 1 评论 -
SpringBoot——@PropertySource注解
该注解加载指定的属性文件(*.properties)到 Spring 的Environment 中。可配合 @Value 和 @ConfigurationProperties 使用。@PropertySource 和 @Value 组合使用,可将自定义属性文件中的属性变量值注入到当前类的使用@Value注解的成员变量中。 @PropertySource 和 @ConfigurationPr...转载 2019-11-05 21:36:40 · 425 阅读 · 0 评论 -
SpringBoot——@ConfigurationProperties注解
@ConfigurationProperties注解(将配置文件中的配置,以属性的形式自动注入到实体中)可以注入在application.properties配置文件中的属性,和@Bean 或者 @Component 能生成spring bean 的注解结合起来使用;该类在加载过程中会调用AbstractAutowireCapableBeanFactory中的applyBeanPostProces...原创 2019-11-05 21:18:57 · 644 阅读 · 0 评论 -
SpringBoot简介
简介Spring Boot来简化Spring应用开发,约定大于配置, 去繁从简,just run就能创建一个独立的,产品级别的应用。背景: J2EE笨重的开发、繁多的配置、低下的开发效率、 复杂的部署流程、第三方技术集成难度大。解决:“Spring全家桶”时代 Spring Boot——>J2EE一站式解决方案 Spring Cloud——>分布式整体解决方案优点...原创 2019-11-05 19:32:00 · 541 阅读 · 0 评论 -
SpringBoot配置文件yaml格式
yml是YAML(YAML Ain't Markup Language)语言的文件,以数据为中 心,比json、xml等更适合做配置文件http://www.yaml.org/ 点击查看参考语法规范https://nodeca.github.io/js-yaml/ 点击查看yaml语法校验1、YAML基本语法使用缩进表示层级关系 缩进时不允许使用Tab键,只允许使用空格。 ...原创 2019-10-31 21:13:52 · 667 阅读 · 0 评论 -
Spring Boot配置properties文件编码问题(中文乱码)
当properties里面属性值是中文的时候,发现java bean绑定的值是乱码:原因是properties文件在idea中默认是utf-8的编码方式,而properties文件用的都是ASCII码,所以就出现了乱码的问题。解决方法:设置之后再看测试结果就不会有中文乱码问题了。...原创 2019-10-31 21:01:03 · 6590 阅读 · 1 评论 -
IDEA通过Spring Initializer快速创建SpringBoot项目
1、打开IDEA,选择【File】——>【New】——>【Project】,在弹出的对话框中选择左边的【Spring Initializer】,设置JDK版本等,设置完成之后点击【Next】:2、设置项目名称、项目组织、打包方式等,然后点击【Next】:3、设置Spring Boot版本、所需要的功能模块等,然后点击【Next】:4、设置项目存放路径等,然后...原创 2019-10-31 19:40:44 · 1795 阅读 · 0 评论 -
RPC简单理解
RPC 是Remote Procedure Call的缩写,译为远程过程调用。是一个计算机通信协议。为什么需要远程调用以饭店为例为了提升饭店的服务能力,饭店从一开始只有一个负责所有事情的厨师发展成有厨师、切菜师、备菜师等多个角色。在饭店只有一个厨师的时候,厨师想要做出一道美味的番茄炒蛋的时候,他需要自己洗番茄、切番茄、打鸡蛋、炒菜。整个过程不需要其他人参与自己就完全可以完成了。这就是古...转载 2019-10-21 22:19:36 · 299 阅读 · 0 评论 -
Spring Boot 优质GitHub开源项目
Spring Boot 算是目前 Java 领域最火的技术栈了,也是Java开发人员不得不掌握的技术,今天给大家整理了13个优质 Spring Boot 开源项目给大家参考,希望能够帮助到正在学习 Spring Boot 的小伙伴!小伙伴简历中不知道写什么项目的或者项目没有亮点的,我只能帮你们到这了!下边的项目排名不分先后!一、mallstar 数 12.7k,项目地址:https:/...转载 2019-08-01 21:34:34 · 13400 阅读 · 0 评论