![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringBoot
阳光下的米雪
在校研究生
展开
-
SpringBoot通过配置读取json文件
最近做项目遇到需要将json类型的配置文件引用到项目中,已经将读取json文件的方法封装成工具类。原创 2022-08-25 19:59:52 · 3911 阅读 · 0 评论 -
解决SpringBoot中application.properties中存在中文配置使用@Value注解读取配置中文乱码
解决SpringBoot中application.properties中存在中文配置使用@Value注解读取配置中文乱码原创 2022-06-01 19:03:51 · 3029 阅读 · 0 评论 -
获取两个集合的交集和差集
获取两个集合的交集和差集 //求集合的交集 //获取两个集合交集 public static List<String> getIntersection(List<String> list1, List<String> list2) { List<String> intersection = (List<String>) org.apache.commons.collections4原创 2022-05-23 16:57:38 · 593 阅读 · 0 评论 -
将集合划分成指定大小的小集合
将集合划分成指定大小的小集合最近做项目遇到某些接口对点位数量有限制(最大1000个),因此,在获取点位数量超过1000个时,需要对接口进行分段调用,集合分段方法如下: public static <T> List<List<T>> split(List<T> resList, int count) { if (resList == null || count < 1) { return null;原创 2022-05-23 16:52:47 · 287 阅读 · 0 评论 -
String类型日期格式从yyyy-MM-dd HH:mm:ss转换成yyyy-MM-dd‘T‘HH:mm:ss.SSSXXX
String类型日期格式从yyyy-MM-dd HH:mm:ss转换成yyyy-MM-dd’T’HH:mm:ss.SSSXXX最近在做一个项目,前端传入的时间格式为yyyy-MM-dd HH:mm:ss,但是推送接口需要的日期格式为yyyy-MM-dd’T’HH:mm:ss.SSSXXX,因此,日期格式的转换,实现如下: public static void main(String[] args) { String strDate = "2022-05-23 16:30:59";原创 2022-05-23 16:38:33 · 3326 阅读 · 0 评论 -
SpringBoot解决swagger-ui/index.html访问报错404
SpringBoot解决swagger-ui/index.html访问报错404最近在做一个项目,采用swagger3.0,项目启动起来后,访问swagger路径:http://localhost:8880/vdmpess-web/swagger-ui/index.html报404,原因是 WebMvcConfig 继承了 WebMvcConfigurationSupport,继承该类之后,则在配置文件在中配置的相关内容会失效,需要重新指定静态资源需要重新指定swagger静态资源。项目中swagge原创 2022-01-11 18:38:38 · 6597 阅读 · 2 评论 -
解决SpringBoot后端得到时间是日期格式,返回给前端时间格式为时间戳
解决SpringBoot后端得到时间是日期格式,返回给前端时间格式为时间戳最近做项目遇到后端从数据库中拿到的时间明明是日期格式,但是返回给前端,显示的日期就是时间戳,尝试网上的许多方法,但是都没有用,最后通过加一行注解得到解决。解决方法在实体类中日期字段上添加如下注解:@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")...原创 2022-01-06 19:06:31 · 5401 阅读 · 1 评论 -
解决idea显示properties文件中文乱码
解决idea显示properties文件中文乱码在项目中通常会遇到如下问题,突然properties文件中文就显示为\u5730等等这样类似的字符解决方法如下File-》Settings-》File Encodings,修改如下图中绿框标注的内容2.点击Apply-》Ok3.修改完成后显示如果项目中存在多个properties,eg:appilction.properties、message.properties,修改完message,结果application中注释的中文全部变成乱码原创 2021-12-02 11:24:30 · 28795 阅读 · 10 评论 -
SpringBoot Web---SpringBoot对静态资源的映射规则
SpringBoot Web开发使用SpringBoot进行Web应用开发步骤:1) 创建SpringBoot应用,选中我们需要的模块2) SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来3) 自己编写业务逻辑代码自动配置原理这个场景SpringBoot帮我们配置了什么;能不能修改;能修改哪些配置;能不能扩展;xxxAutoConfiguration:帮我们给容器中自动配置组件xxxProperties:配置类来封装配置文件的内容Spring原创 2021-09-30 16:24:51 · 125 阅读 · 0 评论 -
SpringBoot中的日志使用
SpringBoot中的日志使用默认配置SpringBoot默认已经配置好了日志@RunWith(SpringRunner.class)@SpringBootTestclass QueueApplicationTests { @Test void contextLoads() {// System.out.println(person); //记录器 Logger logger = LoggerFactory.getLogger(g原创 2021-09-27 14:57:53 · 709 阅读 · 0 评论 -
SpringBoot中的日志关系
SpringBoot中的日志使用 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency>SpringBoot使用以下依赖做日志记录: <dependency>原创 2021-09-27 11:30:57 · 477 阅读 · 0 评论 -
SLF4j使用、统一系统中所有的日志记录到slf4j
SLF4j使用在系统中使用SLF4j开发的时候,日志记录方法的调用,不应该来直接调用日志的实现类,而是调用日志抽象层里面的方法;给系统导入slf4的jar和logback的实现jarimport org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HelloWorld { public static void main(String[] args) { Logger logger = LoggerFactory.g原创 2021-09-27 10:33:42 · 212 阅读 · 0 评论 -
SpringBoot日志框架简单介绍
SpringBoot日志框架简单介绍日志框架介绍市场上存在非常多的日志框架。JUI(java.util.logging),JCL(Apache Commons Logging),Log4j,Logsj2,SLF4j、jboss-logging等。SpringBoot在框架内部使用JCL,spring-boot-starter-logging采用了slf4j+logback的形式,SpringBoot也能自动适配(jul、log4j2、logback)并简化配置。日志门面日志实现JC原创 2021-09-26 17:47:34 · 86 阅读 · 0 评论 -
SpringBoot的@Conditional注解
SpringBoot的@Conditional注解@Conditional派生注解(Spring注解版原生的@Conditional作用)作用:必须是@Conditional指定的条件成立,才给容器中添加组件,配置类里面的所有内容才会生效。@Conditional扩展注解作用(判断是否满足当前指定条件)@ConditionalOnJava系统的java版本是否符合要求@ConditionalOnBean容器中存在指定Bean@ConditionalOnMissing原创 2021-09-26 17:09:17 · 209 阅读 · 0 评论 -
SpringBoot自动配置原理
SpringBoot自动配置原理配置文件能配置的属性参照:https://docs.spring.io/spring-boot/docs/1.5.9.RELEASE/reference/htmlsingle/#common-application-properties自动配置原理:1.SpringBoot启动的时候加载主配置类,开启了自动配置功能@EnableAutoConfiguration2.@EnableAutoConfiguration作用:1)利用@EnableAutoConfigur原创 2021-09-26 15:14:37 · 186 阅读 · 0 评论 -
SpringBoot外部配置加载顺序
SpringBoot外部配置加载顺序SpringBoot也可以从以下位置加载配置;优先级从高到低;高优先级的配置覆盖低优先级的配置,所有的配置形成互补配置。加载顺序官方文档列举了17种,我仅列举了11种。1.命令行参数 java -jar queue-0.0.1-SNAPSHOT.jar --server.port=8087java -jar queue-0.0.1-SNAPSHOT.jar --server.port=8087 -- server.context-path=/abc多个配置用空格分原创 2021-09-26 10:23:02 · 207 阅读 · 0 评论 -
SpringBoot配置文件加载位置
SpringBoot配置文件加载位置SpringBoot启动会扫描以下位置的application.properties或者application.yml文件作为SpringBoot的默认配置文件:1.file:/config2.file:/3.classpath:/config4.classpath:/以上是按照优先级从高到低高优先级的配置会覆盖低优先级的配置;SpringBoot会从这四个位置全部加载主配置文件;互补配置意思是,如果高优先级没有配置的内容可以使用低优先级的可以通过sp原创 2021-09-23 11:16:28 · 395 阅读 · 0 评论 -
SpringBoot配置文件的占位符两种方式介绍与使用
SpringBoot配置文件的占位符两种方式介绍与使用占位符配置文件的占位符,有两种:1.随机数 ${random.value},${random.int},${random.dog},${random.int(10)},${random.int[1023,65536]}2.占位符获取之前配置的值,如果没有可以使用:指定默认值占位符使用第一种:随机数person.last-name=zhangsan${random.uuid}person.age=${random.int}pe原创 2021-09-18 15:42:43 · 1992 阅读 · 0 评论 -
SpringBoot中注解@PropertySource与@ImportResource的区别与使用
SpringBoot中注解@PropertySource与@ImportResource的区别与使用区别@ConfigurationProperties 默认从全局配置文件中获取值@PropertySource(value={"classpath:zhangsan.properties"}) 加载指定的配置文件@ImportResource 导入Spring的配置文件,让配置文件里面的内容生效,主要是读取外部配置文件使用@PropertySource其中,zhangsan.propertie原创 2021-09-18 13:39:06 · 280 阅读 · 0 评论 -
SpringBoot中注解@ConfigurationProperties与@Value的区别与使用
SpringBoot中的@ConfigurationProperties与@Value的区别与使用注解@ConfigurationProperties该注解的作用是将配置文件中配置的每一个属性的值,映射到这个组件中。@ConfigurationProperties :告诉springboot将本类中的所有属性和配置文件中相关的配置进行绑定 prefix = “person”:配置文件中哪个下面的所有属性进行一一映射。简言之,也就是只有这个组件是容器中的组件;才能在容器中提供的@Configuration原创 2021-09-11 15:46:51 · 757 阅读 · 2 评论 -
SpringBoot使用@ConfigurationProperties完成配置文件yml与properties的注入
SpringBoot配置文件yml的注入配置文件配置文件如下:person: last-name: zhangsan age: 18 boss: false birth: 2017/12/12 maps: {k1: v1, k2: 12} lists: - lisi - wangwu - zhaosi dog: name: erha age: 3实体类将配置文件中配置的每一个属性的值,映射到这个组件中,需要做到以下两步:1)添原创 2021-08-23 11:23:54 · 1031 阅读 · 0 评论 -
SpringBoot配置文件详解与yml导入字面量、对象、Map、List、Set等类型语法
SpringBoot配置文件详解与配置文件语法格式配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好了配置文件的类型SpringBoot使用一个全局的配置文件,配置文件名是固定的。配置文件有两种:application.propertiesapplication.yml下面介绍下application.ymlYML...原创 2021-08-23 10:19:20 · 996 阅读 · 0 评论 -
SpringBoot的主程序类详解
SpringBoot的主程序类详解以我建的项目工程为例。主程序类QueueApplication@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})public class QueueApplication { public static void main(String[] args) { //Spring应用启动起来 SpringApplication.run(Queue原创 2021-08-16 13:47:37 · 554 阅读 · 0 评论 -
SpringBoot的pom详解
SpringBoot的pom详解以我本地的项目pom为例,来进行解释:SpringBoot项目的父项目<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.5.3</version>原创 2021-08-16 11:42:15 · 2598 阅读 · 0 评论 -
SpringBoot中解决The Bean Validation API is on the classpath but no implementation could be found错误
SpringBoot中解决The Bean Validation API is on the classpath but no implementation could be found错误出现这个错误的原因是缺少Hibernate Validator依赖,于是在pom文件中添加如下依赖: <dependency> <groupId>org.hibernate</groupId> <artifactId>原创 2021-08-14 13:49:04 · 4055 阅读 · 0 评论 -
@RestController与@Controller的区别
@RestController与@Controller的区别其中@RestController的底层实现代码如下:不难看出,@RestController----底层实现是@Controller+@ResponseBody,不需要视图解析器InternalResourceViewResolver配合,不能返回页面,只可以直接返回xml或者json格式数据而@Controller----必须与视图解析器InternalResourceViewResolver配合,返回页面信息,如果必须要返回xml或者原创 2021-08-13 11:37:43 · 177 阅读 · 0 评论 -
java 两种方式获取起始日期和结束日期之间的日期列表
java 两种方式获取起始日期和结束日期之间的日期列表第一种----Listpublic static List<Date> getDaysBetweenDates(Date startDate, Date endDate) { List<Date> dates = new ArrayList<Date>(); Calendar calendar = new GregorianCalendar(); calendar.s原创 2021-07-13 19:53:00 · 2331 阅读 · 0 评论 -
近七日趋势展示(数据小于7天,补全日期与相应数据)
近七日趋势展示(数据小于7天,补全日期与相应数据)最近做项目遇到一个问题,就是获取近七日趋势数据的展示,从数据库中查询出满足条件的数据有几条就返回几条,如果条数<7,就会缺失相应日期与该日期对应的数据,在前端界面上显示就会不太美观。接下来就针对上述问题进行处理,如果数据库返回的数据的条数小于7,则补全缺少的日期,该日期对应的数据为0。获取近七日日期的工具类 public static Set<String> getBeforeDayTimeOnlyDayList() {原创 2021-07-12 11:32:52 · 425 阅读 · 0 评论 -
Jpa查询语句针对%和_等特殊字符的转义
Jpa查询语句针对%和_等特殊字符的转义最近做项目发现,在进行查询时,输入%和_等字符时,仍可以查询出结果,因此查询时需要对特殊字符进行特殊处理,Jpa对于%字符是可以查询出所有结果,转义操作如下:if (Strings.isNotBlank(deviceRelatedParam.getTerminalName())) { String terminalName = deviceRelatedParam.getTerminalName(); //判断字符串里是否包含%和_ if (terminal原创 2021-06-30 18:50:07 · 2013 阅读 · 0 评论 -
Springboot+MyBatis分页查询案例
Springboot+MyBatis分页查询案例controller /** * 查询统计信息 * 按照监控点名称、单位、板块、所属部位等条件查询 */ @GetMapping("/findInfo") @ApiOperation(value = "查询统计信息列表") public BaseResponse<PageBean<TotalCameraInfoDto>> findInfo(@Param("pageNo") in原创 2021-06-30 17:37:12 · 304 阅读 · 0 评论 -
解决SpringBoot中出现org.springframework.beans.factory.UnsatisfiedDependencyException
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘com.hikvision.coal.test’: Unsatisfied dependency expressed through field ‘planInfoMapper’; nested exception is org.springframework.beans.factory.NoSuchBeanDefi原创 2020-09-30 15:00:11 · 4535 阅读 · 0 评论 -
SpringBoot整合ActiveMQ之Queue
SpringBoot整合ActiveMQ之Queueapplication.propertiesspring.activemq.broker-url=tcp://127.0.0.1:61616#用户名spring.activemq.user=admin#密码spring.activemq.password=admin#true 表示使用内置的MQ,false则连接服务器spring.activemq.in-memory=false#信任所有的包spring.activemq.packag原创 2020-09-29 17:23:18 · 438 阅读 · 0 评论 -
SpringBoot整合ActiveMQ之Topic
SpringBoot整合ActiveMQ之Topic注意:不要忘记在启动类中添加@EnableJms启动消息队列注解pom.xml依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-activemq</artifactId></dependency>application.p原创 2020-09-29 17:16:12 · 1083 阅读 · 0 评论 -
SpringBoot
SpringBootSpringBoot概念Spring Boot 其实就是 Spring,学过 Spring 的同学一定都知道,即使是一个很简单的程序,Spring 都需要大量的配置。而 Spring Boot 将我们从配置文件中解放了出来,Spring Boot 提供了大量的默认配置,我们只需要少数的配置甚至不配置,就可以建立起来一个 Spring Boot 应用。SpringBoot优点1)使用 Spring Initializr 可以在几秒钟就配置好一个 Spring Boot 应用。2原创 2020-08-02 15:50:59 · 89 阅读 · 0 评论