springboot
文章平均质量分 50
liuyunshengsir
全栈工程师
展开
-
Java单元覆盖率工具JaCoCo使用指南
JaCoCo(Java Code Coverage Library)是一款开源的Java代码覆盖率工具,它提供了详细的代码覆盖信息,帮助开发人员了解测试用例对代码的覆盖情况,从而发现潜在的问题和改进空间。原创 2024-08-05 22:30:00 · 962 阅读 · 0 评论 -
Feign 如何设置超时时间
在Spring Cloud中,使用Feign客户端进行服务间通信时,可以通过配置来设置Feign客户端的超时时间。Feign客户端默认的超时时间是一秒钟。你可以在Spring Boot应用的配置文件(如或)中设置Feign客户端的超时时间。原创 2023-11-18 20:45:00 · 6187 阅读 · 0 评论 -
springboot整合Redis后间歇性io.lettuce.core.RedisCommandTimeoutException
在springboot中引入spring-boot-starter-data-redis依赖时,默认使用的时Lettuce产生这种问题的原因有如下两点:1、Lettuce 自适应拓扑刷新(Adaptive updates)与定时拓扑刷新(Periodic updates) 是默认关闭的。2、项目用了k8s做docker容器化部署,但是k8s有设置空闲连接超时就断开,所以当你从连接池拿到被断开的连接时就会报错。原创 2023-11-13 22:15:00 · 1016 阅读 · 0 评论 -
如何获取springboot中所有的bean
这段代码是一个使用 Spring Framework 的依赖注入(DI)功能的示例。它用@Autowired注解将一个类型为的变量声明为一个由 Spring 容器管理的 bean,并初始化为一个线程安全的实现对象。@Autowired:这是 Spring Framework 提供的一个注解,用于自动装配依赖项。通过在成员变量上标记@Autowired来告诉 Spring 应该自动将相应的 bean 注入到该变量中。:这是一个私有成员变量allBean的声明,并使用 Guava 中的。原创 2023-09-06 15:21:33 · 1372 阅读 · 0 评论 -
springboot 集成Druid的监控数据库连接池的最佳实践
Druid是一种高性能的开源数据库连接池,它在Java应用程序中被广泛使用。Druid连接池提供了连接管理、连接池监控、SQL性能监控等功能,能够有效地管理数据库连接,并提供丰富的性能指标和监控报告。Druid连接池的一些主要特点包括:连接池管理:Druid可以帮助你管理数据库连接,包括连接的创建、销毁和重用。它提供了连接池配置选项,可以灵活地调整连接池的大小、最大等待时间、验证查询等参数。原创 2023-07-12 17:00:59 · 3282 阅读 · 0 评论 -
解决文件下载中文文件名乱码的最佳实践
如果下载的文件名包含中文,有时浏览器可能无法正确显示文件名,而会显示乱码或者一串数字和字母。这个问题可以通过设置响应头的filename参数来解决,该参数可以指定要下载的文件名,并且支持URL编码。在上述示例中,方法使用@GET和@Path注解来定义一个RESTful Web服务,该服务接收一个filename参数,表示要下载的文件名。该方法首先获取要下载的文件,然后创建一个响应,将文件作为响应的内容。接着,将文件名进行URL编码。这里使用了方法将原始文件名转换为UTF-8编码的字节数组,然后使用。原创 2023-06-08 23:00:00 · 5432 阅读 · 0 评论 -
java 使用 CSVWriter 库来导出 CSV 文件
在 Java 中,可以使用 CSVWriter 库来导出 CSV 文件。以上就是使用CSVWriter库导出CSV文件的基本步骤。您可以根据自己的需求,修改数据结构和文件名等参数。在代码中,首先需要构造要写入CSV的数据结构,然后通过CSVWriter写入CSV。原创 2023-06-07 22:00:00 · 3889 阅读 · 0 评论 -
打印header的详细信息
【代码】打印header的详细信息。原创 2023-05-31 15:28:45 · 958 阅读 · 0 评论 -
xxl-job的部署及springboot集成使用
XXL-Job是一个分布式任务调度平台,可进行任务调度、管理和监控,并提供任务分片、失败重试、动态分配等功能。它是一个开源项目,基于Spring Boot和Quartz开发,支持常见的任务调度场景。XXL-Job的使用相对简单,只需要简单配置即可实现任务调度。同时,它提供了丰富的管理和监控功能,可以方便地查看任务执行状态、日志等。在企业中,XXL-Job广泛应用于一些大型、分布式的系统中,如电商系统、金融系统等。它的高性能、高可靠性、易使用性等特点深受用户的喜爱。原创 2023-05-30 16:16:46 · 1167 阅读 · 0 评论 -
spring-boot 禁用swagger的方法
在使用spring-boot开发的时候,我们很多时候会使用swagger作为api文档输出。可以在UI界面上看到api的路径,参数等等。当然,作为开发环境是很方便的,但是上生产环境的时候,我们需要把swagger禁掉。怎么通过配置文件的方法来禁用swagger呢?原创 2023-05-27 15:13:26 · 1939 阅读 · 0 评论 -
springboot 集成jwt的使用
JWT(JSON Web Token)是一种基于JSON格式的身份验证和授权标准,经常用于Web应用程序中的用户身份验证。JWT由三个部分组成:头部、载荷和签名。头部包含算法和类型信息,载荷包含用户数据和元数据,签名则是基于头部和载荷计算得出的,在身份验证时用于验证请求是否是合法的。JWT是一种轻量级、简单、可扩展的身份验证机制,具有良好的互操作性和各种编程语言中的广泛支持。可以在前端使用JavaScript生成JWT并在后端进行验证,也可以在后端使用Java、Python等语言生成和验证JWT。原创 2023-05-27 14:06:24 · 1121 阅读 · 0 评论 -
springboot使用EasyExcel实现excel导出千万大数据量
EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。原创 2023-04-25 09:27:18 · 1884 阅读 · 3 评论 -
springboot中jar包中 集成react前端项目
springboot中jar包中 集成react前端项目原创 2023-02-22 17:11:50 · 249 阅读 · 0 评论 -
springboot 启动初始化mysql表结构和数据
配置application.ymlspring: application: name: lys-app main: allow-bean-definition-overriding: true datasource: name: lys-app url: jdbc:mysql://ip:3306/test?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=t原创 2022-01-26 09:40:05 · 597 阅读 · 0 评论 -
Intellij IDEA基于Springboot的远程调试
远程调试就是服务端程序运行在一台远程服务器上,我们在本地服务端的代码中设置断点(本地的代码必须与远端一致),进行调试。每当有请求到达远程服务器时能够在本地知道远端程序的运行情况。增加remote选择Edit Configurations远程项目修改重启命令nohup java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=10201 -jar openstack_learning-0.0.1-SNAPSHOT.jar &原创 2022-01-05 14:51:23 · 748 阅读 · 1 评论 -
JDK动态代理和Cglib代理《设计模式的实践》
1.代理模式https://www.runoob.com/design-pattern/proxy-pattern.html意图:为其他对象提供一种代理以控制对这个对象的访问。主要解决:在直接访问对象时带来的问题,比如说:要访问的对象在远程的机器上。在面向对象系统中,有些对象由于某些原因(比如对象创建开销很大,或者某些操作需要安全控制,或者需要进程外的访问),直接访问会给使用者或者系统结构带来很多麻烦,我们可以在访问此对象时加上一个对此对象的访问层。何时使用:想在访问一个类时做一些控制。如何原创 2021-08-21 11:32:18 · 138 阅读 · 0 评论 -
springboot 集成websocket 实现集群消息推送
1.简介由于遇到异步的接口调用,异步任务处理结果会写在rabbitmq中,部署方式为了实现高可用会使用开启多个微服务实例。无论哪个微服务消费了mq,都能把消息推送到所有的微服务的前端。2.配置2.1pom.xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> &原创 2021-08-05 19:20:46 · 1227 阅读 · 0 评论 -
OAuth2四种模式
OAuth2四种模式流程最复杂模式,复杂程度由大至小:授权码模式 > 隐式授权模式 > 密码模式 > 客户端模式授权码获取授权码http://localhost:8080/oauth/authorize?client_id=oauth_client&response_type=code根据授权码获取tokenhttp://localhost:8080/oauth/token?grant_type=authorization_code&client_id=oaut原创 2021-07-31 11:41:03 · 290 阅读 · 0 评论 -
授权码模式《oauth2 学习》
1.授权码模式的流程原理解释1.第三方引导用户跳转至认证服务器的授权页面在引导跳转的时候需要携带如下的几个参数response_type:授权类型。授权码模式下,就固定为codeapp_id:第三方应用的标识id。redirect_uri:重定向uri,也就是在授权成功后认证服务器让用户重定向的地址。一般而言也就是当前用户在第三方应用中最初的请求地址scope:授权范围。可选内容,可以根据第三方应用和实现方的要求自行制定合适的值。state:透明的验证参数。RFC6749文档推荐认证服务原创 2021-07-30 17:47:59 · 467 阅读 · 0 评论 -
RestTemplate 支持https调用
1.实现SimpleClientHttpRequestFactory接口import lombok.extern.slf4j.Slf4j;import org.springframework.http.client.SimpleClientHttpRequestFactory;import javax.net.ssl.*;import java.io.IOException;import java.net.HttpURLConnection;import java.net.InetAddre原创 2021-06-11 15:30:32 · 917 阅读 · 1 评论 -
springboot 各种文件下载方式(最全)
springboot 各种文件下载方式(最全)原创 2021-05-28 19:56:01 · 2504 阅读 · 1 评论 -
Aspect统一日志处理---《编码心得》
1.AOP介绍AOP:Aspect-Oriented Programming的缩写JoinPoint:要切入的点,本文章的注解@OperLog就是要切入的点。Pointcut:定系统中符合条件的一组Joinpoint。Aspect:就是我们的切面,例如我们的日志类,里边包含了记录操作日志,记录异常日志等,那么这个对象就是一个切面。Advice:怎么切,是在业务逻辑执行前去执行还是之后执行等。1.1什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说原创 2021-04-24 20:55:39 · 386 阅读 · 0 评论 -
SpringBoot中Shiro使用Pac4j集成CAS认证
1.介绍单点登录:Single Sign On,简称SSO,SSO使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。CAS框架:CAS(Central Authentication Service)是实现SSO单点登录的框架。分析:1.图中用户访问cas客户端;2.需要登录时,重定向到Cas-Server(Cas服务),其中service为Cas-Client路径(用于Cas-Server执行完后返回到指定路径);3.cas-server认证用户信息,并生成一个tic原创 2021-01-28 10:52:39 · 2412 阅读 · 5 评论 -
Spring Boot项目国际化实现
1.创建国际化文件由于SpringBoot默认就支持国际化的,所以我们只需要在resources文件夹 i18n下创建国际化配置文件即可,这里为了方便演示效果,咱么需要创建3个配置文件:messages.properties 默认处理国际化的配置文件,要注意文件名是messages是固定的messages_zh_CN.properties zh_CN 是中文简体messages_en_US.properties en_US 是美国英语Tips:文件名也要以messages开头,如:message原创 2020-08-19 10:02:10 · 842 阅读 · 0 评论 -
mybatis-generator工具类生成代码的使用
1.下载使用的jar包mybatis-generator-core.jar 最新地址:http://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-coremysql-connector-java.jar 最新地址:http://mvnrepository.com/artifact/mysql/mysql-...原创 2020-02-29 20:32:25 · 474 阅读 · 0 评论 -
@Controller和@RestController的区别?
@RestController注解相当于@ResponseBody + @Controller合在一起的作用。如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。如果需要返回到指定页...原创 2020-02-25 10:53:05 · 126 阅读 · 0 评论 -
异常统一处理----《编码心得》
1.异常的介绍1.1项目中真实情况然而在真实项目中,异常很被误用。有如下问题:不知道改什么时候用check exception 和 runtime exception不知道何时catch异常,代码充斥着try catch结构。异常处理混乱catch住异常不知道如何处理,经常抓住打印一下堆栈信息就不管了。1.2 最佳实践不要忽略异常,如果要忽略请写明注释说明为什么忽略该异常。只...原创 2020-02-24 20:30:51 · 798 阅读 · 0 评论 -
Controller层统一返回----《编码心得》
1.Controller规范主要的内容是就是接口定义里面的内容,你只要遵循里面的规范,controller就问题不大,除了这些,还有另外的几点:所有函数返回统一的ResultBean/PageResultBean格式原因见我的接口定义这个贴。没有统一格式,AOP无法玩。ResultBean/PageResultBean是controller专用的,不允许往后传!Controller做参...原创 2020-02-24 20:12:04 · 735 阅读 · 0 评论 -
springboot集成配置swaggerUI
1.使用swagger的原因手写Api文档的几个痛点:文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时。接口返回结果不明确不能直接在线测试接口,通常需要使用工具,比如postman接口文档太多,不好管理2.依赖包配置<!--swagger 文档注释--> <dependency> <groupId>io.sprin...原创 2019-08-17 22:04:56 · 821 阅读 · 0 评论