在Spring Boot中,在读取yml或者properties的配置文件值,如果使用@Value注解对属性进行赋值,但如果在配置文件或启动参数中未指定对应的参数值,则会抛出异常。异常信息往往是对应注入属性的类实例化失败。 我们希望如果配置文件没有设置,能读到一个默认值,不会导致程序出错。 此时,需要对@Value对应的值进行配置,或设置默认值。设置方法如下: @RestController public class ConfigController { // ①未指定默认值 @Value("${user.user…

2022-10-08 0条评论 933点热度 0人点赞 admin 阅读全文

在开发中有时候经常需要一些Http请求,请求数据,下载内容,也有一些简单的分布式应用直接使用Http请求作为跨应用的交互协议。 在Java中有不同的Http请求方式,主要就是HttpURLConnection或者ApacheHttpClient,另外还有比较注明的OKHttp,或者国内常用的Hutool; Spring也内置了RestTemplate作为Http请求的工具类,简化了很多操作,虽然Spring5推出了WebClient,但是整体感觉还是RestTemplate用起来更简单方便一些。 这里记录分享下Re…

2022-10-02 0条评论 678点热度 0人点赞 admin 阅读全文

在 Spring Boot 框架中,我们使用最多的是Tomcat,这是 Spring Boot 默认的容器技术,而且是内嵌式的 Tomcat。Tomcat 是 Apache 基金下的一个轻量级的Servlet 容 器 , 支 持 Servlet 和 JSP 。Tomcat服务器本身具有Web服务器的功能,可以作为独立的Web服务器来使用。 一、Spring Boot应用中Tomcat建议配置 Spring Boot 能支持的最大并发量主要看其对Tomcat的设置,可以在配置文件中对其进行更改。要了解具体参数的默认值…

2022-09-09 0条评论 750点热度 0人点赞 admin 阅读全文

流程引擎,也算是一个比较常见的工具了,我们在日常的很多开发中都会用到,当然用的最多的就是 OA 系统了,但是在一些非 OA 系统中,我们也会涉及到,比如一个 CRM 中,可能会有合同管理的需求,合同的审批,也是需要流程引擎的。 所以今天我们来简单聊聊流程引擎,顺便写一个简单的例子,小伙伴们一起来感受下流程引擎到底是个啥。 1、流程引擎介绍 Flowable 是一个使用 Java 编写的轻量级业务流程引擎。Flowable 流程引擎可用于部署 BPMN2.0 流程定义(用于定义流程的行业 XML 标准),创建这些流程…

2022-08-30 0条评论 591点热度 0人点赞 admin 阅读全文

今天分享一个非常不错且开源的分布式存储组件MinIO,有多人朋友在用 什么是MinIO? Minio 是个基于 Golang 编写的开源对象存储套件,基于Apache License v2.0开源协议,虽然轻量,却拥有着不错的性能。它兼容亚马逊S3云存储服务接口。可以很简单的和其他应用结合使用,例如 NodeJS、Redis、MySQL等。 1. 应用场景 MinIO 的应用场景除了可以作为私有云的对象存储服务来使用,也可以作为云对象存储的网关层,无缝对接 Amazon S3 或者 MicroSoft Azure …

2022-08-29 0条评论 752点热度 0人点赞 admin 阅读全文

在使用Spring/SpringBoot做文件服务(对外提供文件流下载等)的时候,如果是音频视频,最好是提供断点续传功能,这样能可以支持客户端软件的断点续传功能,或者更好的音视频播放的播放、拖动等功能。 实现方法1 新版本的Spring或者SpringBoot是直接支持的,示例如下: // 也可以是video/* 或者下载文件application/octet-stream @GetMapping(value = "/audio/some.mp3", produces = "audio/*") public Res…

2022-08-25 0条评论 1139点热度 0人点赞 admin 阅读全文

MyBatis的PageHelper是非常好用的分页插件,本人用下来比MyBatisPlus的更加灵活,例如可以指定offset limit的方式进行分页等等。 如果是Spring下配置PageHelper需要配置拦截器(而且是xml的方式),详见:https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md,SpringBoot下有更简单的方式,有专门的boot-starter,只需要引入一个pom依赖,就全部可…

2022-08-08 0条评论 481点热度 0人点赞 admin 阅读全文

用SpringBoot写的MVC程序(内置Tomcat运行、View展示层用的JSP)打包成jar包,运行在Linux服务器上,刚开始没有什么问题,但是运行了一段时间后,总有几个页面点上去显示500错误。 查看日志,后台报错信息如下: 2022-07-09 11:47:17.296 [http-nio-8084-exec-5] ERROR o.a.c.c.C.[.[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatch…

2022-07-10 0条评论 450点热度 0人点赞 admin 阅读全文

SpringBoot项目里,我们可能需要读取一些自定义的配置文件等,这些文件放在resources目录下,有时候,我们在idea开发时明明是可以读取到文件的,一旦打包成jar放到服务器上运行就会报错,说找不到指定的文件。 方面整理了几个我平常项目中读取resources(或者resources下面子文件夹)下的文件的方式 方式1 class.getClassLoader().getResourceAsStream String fileContent = IOUtils.toString(MyApplication…

2022-07-05 0条评论 445点热度 0人点赞 admin 阅读全文

SpringBoot下配置好RabbitMQ发现消息的消费处理是单线程处理的,在有些业务逻辑下是需要多线程并发消费消息的。经过一番研究,总结下实现多线程并发执行消费消息的配置:给ConnectionFactory指定自定义的线程池(TaskExecutor): 新增RabbitmqConfig.java import org.springframework.amqp.core.AcknowledgeMode; import org.springframework.amqp.rabbit.config.SimpleR…

2022-07-04 0条评论 2337点热度 0人点赞 admin 阅读全文
123458