
spring boot
程序媛-团子
Keep enpowering yourself successfully
展开
-
springboot导出多excel文件并压缩
业务场景:需要导出多个excel文件并压缩为一个文件,最后返回给前端解决思路:将每个业务数据导出一个excel文件,然后通过ZipOutputStream写入一个zip文件就可以了代码层面:Controller入口:传入必要的业务参数,以及response @PostMapping("/v1/analysis/mediasubsidy/export") public void export(@RequestBody MediaSubsidyMonthRequest medi原创 2021-01-28 11:17:44 · 1734 阅读 · 0 评论 -
springboot导出excel操作
业务场景:后台需要提供一个导出所有数据的接口,将导出的excel表格返回给前端展示代码层面:展示主要跟导出功能相关的代码,主要流程:获取业务数据,形成excel数据流,导出excel @PostMapping(value = "/v1/analysis/mission/readrecordExport") public void readrecordExport(@RequestBody MissionReadRecordRequest missionReadRecordReque原创 2021-01-28 11:05:20 · 827 阅读 · 1 评论 -
springboot配置mongo多数据源
问题场景:项目里面需要用到多个mongo数据源配置问题解决:根据不同mongo数据源配置不同mongoTemplate就可以了代码层面:mongo maven 依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artif原创 2021-01-28 10:54:09 · 446 阅读 · 0 评论 -
springboot从mongo读写Decimal问题
场景描述:基于springboot架构的项目上,向mongo读取BigDecimal字段类型;问题以及解决思路:mongo中不支持java的java.util.math.BigDecimal类型,而mongo中使用的是org.bson.types.Decimal128,所以在读写的时候需要进行类型转换。mongo提供了自定义转换器,可以通过定义写转换器:java.util.math.BigDecimal->org.bson.types.Decimal128,定义读转换器:org.bso原创 2021-01-28 10:37:36 · 1507 阅读 · 1 评论 -
spring-data-mongo实现spring整合mongodb
使用spring-data-mongo整合spring和mongodb1.maven配置 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>2.配置文件原创 2020-05-13 16:57:38 · 267 阅读 · 0 评论 -
springboot不同版本整合elasticsearch
使用springboot整合elasticsearch时候,需要注意版本的对应关系,不然问题会非常多,对应关系如下:springboot2.1整合elasticsearch的两个方式:通过spring-data-es(springboot 2.2版本以后使用http形式操作,使用端口9200,springboot 2.1使用tcp形式访问es,使用端口9300)、使用 RestHighLevelClient 方式使用RestHighLevelClient 方式,官方建议restHighLeve.原创 2020-05-13 14:06:11 · 6175 阅读 · 0 评论 -
nested exception is org.hibernate.boot.archive.spi.ArchiveException: Could not build ClassFile 问题解决
springboot启动报错:Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2020-05-07 09:33:30 [ERROR] org.springframework.boot.SpringApplicati...原创 2020-05-07 09:42:29 · 3141 阅读 · 1 评论 -
理解spring aop动态代理
Spring AOPSpring是一个轻型容器,Spring整个系列的最最核心的概念当属IoC、AOP(Aspect Oriented Programming,即面向切面编程)。Spring AOP的底层实现是基于动态代理的实现原理,AOP的拦截功能是由java中的动态代理来实现的。AOP的源码中用到了两种动态代理来实现拦截切入功能:jdk动态代理和cglib动态代理。jdk动态代理是由j...原创 2020-03-26 11:54:24 · 350 阅读 · 0 评论 -
springboot 2.x 多数据源配置出现jdbcUrl is required with driverClassName.
springboot 2.x 多数据源配置出现:Caused by: java.lang.IllegalArgumentException: jdbcUrl is required with driverClassName. at com.zaxxer.hikari.HikariConfig.validate(HikariConfig.java:1059) at com.zaxxer.h...原创 2018-10-23 11:15:25 · 1984 阅读 · 0 评论 -
oozie submit springboot application
使用oozie的shell类型提交springboot application,界面化xml配置:原创 2018-10-19 15:39:20 · 362 阅读 · 0 评论 -
springboot Initialization of bean failed; nested exception is javax.validation.ValidationException问题
springboot 1.5.14.RELEASE 读取自定义配置文件属性出现问题2018-10-19 15:06:11.471 WARN 7884 --- [ main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - c...原创 2018-10-19 15:21:43 · 2855 阅读 · 0 评论 -
springboot根据表名和字段查询和更新实现动态sql(jpa,mybatis)
最近需要做一个根据表名和字段更新表的功能,项目结构是springboot+jpa,记录如下:1.经查阅资料jpa和hibernate自带对原生sql的支持都是不支持该操作的,原因是:jpa和hibernate在进行参数替换的时候是使用占位符的形式,防止了sql的注入,在解析会给参数带上单引号,但是可以通过定义原生的sql进行解决动态sql查询,但无法实现动态sql更新,如果需要更新必须获取到表对应...原创 2018-07-12 17:00:10 · 17714 阅读 · 3 评论 -
springboot控制quartz任务
1.pom.xml<!-- 定时器任务 quartz需要导入的坐标 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactI...原创 2018-06-06 19:51:43 · 341 阅读 · 0 评论 -
springboot配置mysql多数据源
1.pom.xml依赖 <!--数据库--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId&g...原创 2018-06-06 19:36:27 · 310 阅读 · 0 评论 -
springboot 使用quartz,解决quartz的job无法注入业务
1.pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> ...原创 2018-06-06 18:05:06 · 6958 阅读 · 2 评论 -
springboot使用redis实现消息队列
一、概念消息队列分为两种模式,一种是发布订阅模式,一种是生产者消费者模式。生产者消费者模式:生产者生产消息放到队列里,多个消费者同时监听队列,谁先抢到消息谁就会从队列中取走消息;即对于每个消息只能被最多一个消费者拥有。发布者订阅者模式:发布者生产消息放到队列里,多个监听队列的消费者都会收到同一份消息;即正常情况下每个消费者收到的消息应该都是一样的。二、生产者消费者实现1.springboot添加依...原创 2018-05-15 14:54:09 · 2560 阅读 · 2 评论 -
springboot使用redis
一、安装redis在centos机器上安装redis参考:https://www.jianshu.com/p/aec247ffbe51二、搭建springboot+redis项目1.添加依赖: <dependency> <groupId>org.springframework.boot</groupId> ...原创 2018-05-11 18:34:45 · 167 阅读 · 0 评论