SpringBoot相关
文章平均质量分 58
JavaBoy_XJ
万般皆苦,唯有自渡!
展开
-
jdk8使用okhttp发送http2请求
在早期,原生的JDK8是不支持HTTP/2协议的,所以,要想使用这个特性,需要有web服务器和应用环境的支持,但是从8u252开始,ALPN层已经从Java 11向后移植到了Java 8。意味着,只要使用Java。重点来了:一定要先检查自己的jdk版本是否大于8u252,然后就可以在项目中集成okhttp。8u252或更新版本,不再要求使用Conscrypt和Jetty就可以使用HTTP/2了。本文主要用于工作记录,在项目中遇到了就记录一下。简单封装获取http2client请求。原创 2023-07-28 10:34:07 · 1796 阅读 · 0 评论 -
HikariCP连接池
因为spring boot 2.0使用hikariCP作为默认连接池,所以hikariCP的依赖已经默认集成了,hikariCP的依赖集成在了spring-boot-starter-jdbc和spring-boot-starter-data-jpa中,我们不需要另外引入hikariCP相关的依赖,这里只是引入了Mysql的依赖和JDBC依赖。HikariCP连接池是高性能的JDBC连接池,官网标注的三大特点:快速、简单、可靠,性能优于其他连接池。## 连接池是否越大越好?####3.不常用配置。原创 2023-07-26 21:28:37 · 251 阅读 · 0 评论 -
SpringBoot注解总结
SpringBoot常用注解总结原创 2022-10-26 15:24:21 · 402 阅读 · 1 评论 -
SpringBoot下DataSource连接配置
基本设置spring.datasource.secondary.url=jdbc:mysql://localhost:3306/test2?useUnicode=true&characterEncoding=utf-8spring.datasource.secondary.username=testspring.datasource.secondary.password=123456spring.datasource.secondary.driver-class-name=com.mysql原创 2020-07-06 17:06:13 · 8265 阅读 · 0 评论 -
Spring接入Prometheus
一、Spring Java端接入1、2.x版本接入Prometheua. pom依赖<dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> <version...原创 2019-11-29 10:25:52 · 2035 阅读 · 0 评论 -
Spring Boot中Multipartfile遇到的坑
场景还原:根据业务部分的需求,需要前端上传Excel文件,后端读取其中数据,存入数据库中。需求其实挺简单的,感觉也没啥难度,然后就一顿撸码,本地测试ok,测试人员测试也ok,然后就交付上线使用。上线一段时间后,问题发生了,报错代码如下:Caused by: java.io.IOException: The temporary upload location [/tmp/tomcat.290...原创 2019-07-25 10:56:14 · 5103 阅读 · 0 评论 -
JPA高级分析
1.JPA的实体生命周期:JPA的实体有以下4中生命周期状态:(1).New:瞬时对象,尚未有id,还未和Persistence Context建立关联的对象。(2).Managed:持久化受管对象,有id值,已经和Persistence Context建立了关联的对象。(3).Datached:游离态离线对象,有id值,但没有和Persistence Context建立关联的对象。(4...转载 2019-07-10 17:22:21 · 335 阅读 · 0 评论 -
springboot使用restTemplate简单使用
post提交有 FormData和Payload 两种形式:第一种:formdata形式,在header参数里可以直接看到payload则封装成json格式post过去,获取以后需要再解析成实体。第二种:restTemplate post json格式使用阿里巴巴的json包 com.alibaba.fastjson代码demo如下:url='http://posturl';...原创 2019-07-09 15:48:23 · 1972 阅读 · 0 评论 -
Spring Boot Admin 踩坑
记一次SpringBoot升级2.x以后遇到的一个小坑:以前采用1.x的时候,在服务发现中心点击单个服务,可以查看当前服务的详细信息,配置文件只需要简单的配置,:父级:<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s...原创 2019-06-18 11:09:49 · 4769 阅读 · 3 评论 -
Spring 2.0 分页变化
在 Spring Boot 2.0 中 ,方法new PageRequest(page, size, sort) 已经过期不再推荐使用,推荐使用以下方式来构建分页信息:Pageable pageable =PageRequest.of(page, size, Sort.by(Sort.Direction.ASC,"id"));或者Pageable pageable =PageRequest....原创 2019-05-07 09:36:18 · 214 阅读 · 0 评论 -
SpringBoot Logback日志配置
Logback的配置介绍:1、Logger、appender及layoutLogger作为日志的记录器,把它关联到应用的对应的context上后,主要用于存放日志对象,也可以定义日志类型、级别。Appender主要用于指定日志输出的目的地,目的地可以是控制台、文件、远程套接字服务器、 MySQL、 PostreSQL、 Oracle和其他数据库、 JMS和远程UNIX Syslog守护进程等...转载 2019-05-08 11:05:12 · 206 阅读 · 0 评论 -
jwt的组成部分
什么是JWTjwt是信息加密的一种方式,一个JWT由三个部分组成:header,payload,signature。分别保存了不同的信息。三个部分在JWT中分别对应英文句号分割出来的三个串:headerheader部分由以下的json结构生成:typ用来标识整个token是一个jwt字符串,alg代表签名和摘要算法,一般签发JWT的时候,只要typ和alg就够了,生成方式是将heade...转载 2019-01-04 11:42:01 · 11277 阅读 · 2 评论 -
Spring Boot中使用@Async实现异步调用
什么是“异步调用”?“异步调用”对应的是“同步调用”,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行;异步调用指程序在顺序执行时,不等待异步调用的语句返回结果就执行后面的程序。同步调用下面通过一个简单示例来直观的理解什么是同步调用:定义Task类,创建三个处理函数分别模拟三个执行任务的操作,操作消耗时间随机取(10秒内)@Componentpub...转载 2019-01-21 09:10:33 · 95 阅读 · 0 评论 -
Spring boot中使用log4j记录日志
引入log4j依赖在创建Spring Boot工程时,我们引入了spring-boot-starter,其中包含了spring-boot-starter-logging,该依赖内容就是Spring Boot默认的日志框架Logback,所以我们在引入log4j之前,需要先排除该包的依赖,再引入log4j的依赖,就像下面这样:<dependency> <groupId&...转载 2019-01-22 14:42:25 · 623 阅读 · 0 评论 -
Spring Boot属性配置文件详解
相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷。我们在Spring Boot使用过程中,最直观的感受就是没有了原来自己整合Spring应用时繁多的XML配置内容,替代它的是在pom.xml中引入模块化的Starter POMs,其中各个模块都有自己的默认配置,所以如果不是特殊应用场景,就只需要在application.properties中...转载 2019-01-22 14:53:41 · 109 阅读 · 0 评论 -
Spring Boot中使用@Scheduled创建定时任务
我们在编写Spring Boot应用中经常会遇到这样的场景,比如:我需要定时地发送一些短信、邮件之类的操作,也可能会定时地检查和监控一些标志、参数等。创建定时任务在Spring Boot中编写定时任务是非常简单的事,下面通过实例介绍如何在Spring Boot中创建定时任务,实现每过5秒输出一下当前时间。在Spring Boot的主类中加入@EnableScheduling注解,启用定时任务...转载 2019-01-29 09:52:51 · 113 阅读 · 0 评论 -
Spring Boot中的事务管理
什么是事务?我们在开发企业应用时,对于业务人员的一个操作实际是对数据读写的多步操作的结合。由于数据操作在顺序执行的过程中,任何一步操作都有可能发生异常,异常会导致后续操作无法完成,此时由于业务逻辑并未正确的完成,之前成功操作数据的并不可靠,需要在这种情况下进行回退。事务的作用就是为了保证用户的每一个操作都是可靠的,事务中的每一步操作都必须成功执行,只要有发生异常就回退到事务开始未进行操作的状态...转载 2019-01-29 10:03:15 · 146 阅读 · 0 评论 -
Spring Boot多数据源配置与使用
在单数据源的情况下,Spring Boot的配置非常简单,只需要在application.properties文件中配置连接参数即可。但是往往随着业务量发展,我们通常会进行数据库拆分或是引入其他数据库,从而我们需要配置多个数据源,下面基于之前的JdbcTemplate和Spring-data-jpa例子分别介绍两种多数据源的配置方式。多数据源配置创建一个Spring配置类,定义两个DataSo...转载 2019-01-29 10:09:25 · 577 阅读 · 0 评论 -
Springboot 打jar包分离lib
Springboot 打jar包分离lib,配置文件正确方式部署环境window 10redhat 6.4其他版本没有尝试,应该也是可以的POM.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://...转载 2019-01-30 09:47:01 · 1830 阅读 · 4 评论 -
Spring AOP 的实现机制
AOP(Aspect Orient Programming),一般称为面向切面编程,作为面向对象的一种补充,用于处理系统中分布于各个模块的横切关注点,比如事务管理、日志、缓存等等。AOP实现的关键在于AOP框架自动创建的AOP代理,AOP代理主要分为静态代理和动态代理,静态代理的代表为AspectJ;而动态代理则以Spring AOP为代表。静态代理是编译期实现,动态代理是运行期实现,可想而知前者...转载 2019-02-22 11:54:59 · 531 阅读 · 0 评论 -
SpringBoot 2.0 升级注意事项
注:升级后spring boot为2.0版本,spring cloud为Finchley.M8版本。2.0官方文档地址:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/gitee项目地址:https://gitee.com/lwydyby/springcloud-adplatform以Java 8 为基...转载 2019-02-14 11:37:02 · 2160 阅读 · 0 评论 -
自定义Spring Boot Starters
传统的做法在没有starter之前,假如我想要在Spring中使用jpa,那我可能需要做以下操作:在Maven中引入使用的数据库的依赖(即JDBC的jar)引入jpa的依赖在xxx.xml中配置一些属性信息反复的调试直到可以正常运行需要注意的是,这里操作在我们每次新建一个需要用到jpa的项目的时候都需要重复的做一次。也许你在第一次自己建立项目的时候是在Google上自己搜索了一番,...转载 2019-03-06 15:39:27 · 156 阅读 · 0 评论 -
SpringBoot 定时器浅析
定时器的使用分析SpingBoot的定时器我相信大家都会使用,即使不会使用的,随便搜索一下,相信都能在30分钟内上手.但是其实Spring的定时器有三种模式,分别是fixedDelay、cron、fixedRate.那这三种分别有什么区别呢?我们来分别写一个SpringBoot的定时器Demo来体验一下.fixedDelay方式@Componentpublic class Schedule...转载 2019-04-13 10:16:44 · 352 阅读 · 0 评论 -
SpringDataJpa sort多参数排序
public class WatchPoint { private String stationCode;// 站点编码 private BigDecimal belongToDate;存款金额}import org.springframework.data.domain.Sort;import org.springframework.data.domain.Sort...原创 2019-04-25 11:39:11 · 4491 阅读 · 0 评论 -
SpringBoot 2.0 新特性对比
以Java 8 为基准Spring Boot 2.0 要求Java 版本必须8以上, Java 6 和 7 不再支持。内嵌容器包结构调整为了支持reactive使用场景,内嵌的容器包结构被重构了的幅度有点大。EmbeddedServletContainer被重命名为WebServer,并且org.springframework.boot.context.embedded 包被重定向到了org...转载 2019-01-04 11:37:18 · 1126 阅读 · 0 评论