自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 问答 (2)
  • 收藏
  • 关注

原创 SpringBoot整合RabbitMQ,实现MQ动态配置交换机-路由-队列信息

YamlAndPropertySourceFactory.class:该类为了解决读取yaml以及yml配置文件无法映射的问题。可根据不同的交换机,进行队列,路由的定义。也可以对队列路由进行扩充。目前这里只用到直连类型的交换机。动态参数配置校验(校验可不配置):可根据不同的交换机类型,做校验,这里是对直连交换机的参数做的校验。以上五个步骤就完成了根据配置文件初始化rabbitMQ的交换机-路由-队列。扩充的属性可以看(三)中对应的实体类。如果可以映射配置文件,可以忽略这个。

2023-09-05 10:14:42 658

原创 EsayExcel通过模板动态生成多sheet页报错Sheet index () is out of range问题解决方案

通过EasyExcel读取模板生成多sheet页Excel的过程中出现报错。在git issue上看到其他低版本依然存在该问题。解决方案:通过POI动态复制sheet。三、通过POI复制sheet页扩容模板。二、MultiSheet类的元素。

2023-07-20 15:57:04 1131

原创 异步线程池+多线程实现EXCEL填充,打包(zip)及上传

需求背景:1、通过筛选条件过滤数据(多线程主要解决这一步查询慢的问题)2、数据填充EXCEL3、多EXCEL打zip包上传到文件服务器4、先返回下载信息,再同步导出EXCEL报表数据主要逻辑和方法:注册异步线程池 /** * 注册异步线程池 */ @Bean("asyncThreadPool") public ThreadPoolTaskExecutor asyncThreadPoolTaskExecutor() {

2021-12-15 11:54:49 1353

原创 JAVA对接微信小程序,实现订阅消息推送功能

接之前微信公众号的需求后,现在又需要对接微信小程序,实现订阅消息推送功能。我把相关的实现逻辑,注意事项总结了一下。一、配置信息#################微信渠道-服务号####################granttype可共用wechat.auth.granttype=client_credentialwechat.auth.token=Qwer@123wechat.auth.appid=xxxxxxxxxxwechat.auth.secret=xxxxxxxxxx#

2021-03-15 11:39:59 1648

原创 @NotNull验证list对象无效

1.controller层添加@Valid2.参数List使用@NotNull3.List中的元素使用@NotEmpty

2020-12-29 15:06:10 5715

原创 JAVA对接微信公众号(服务号、订阅号)实现模板消息推送功能

最近做了个需求要求对接微信公众号,使用模板进行消息推送,今天抽时间总结一下相关的逻辑。大概逻辑分为四个步骤:获取微信调用接口凭证access_token。 获取微信模板列表。 使用模板进行消息推送。 公众号配置服务器URL。我这里的实现没有使用微信公众号weixin-java-mp依赖,完全是根据微信官方文档的提示写的代码。一、二、获取access_token和模板列表 @Override public String getAccessToken() {

2020-12-24 17:49:59 5570 2

原创 restTemplate.postForObject调用接口,接口入参是@RequestParam的方案及其他使用

最近在调用其他系统的接口时,遇到的问题。由于接口文档给的写的模糊不清,导致接口一直没有调用通。后来索性要了代码权限自己看他写的接口。一、接口入参是@RequestParam的post请求1、接口方接口:2、请求代码:header设置contentType为application/x-www-form-urlencoded 等同于URL后直接拼接参数。//headerHttpHeaders header = new HttpHeaders();header.setContentT

2020-12-17 11:36:16 2778 2

原创 MYSQL通过数据库中json数据的key筛选数据

SELECT *FROM tableWHERE LOCATE('1',JSON_EXTRACT(json_column, '$[*].json_key')) > 0JSON_EXTRACT(存放json的字段,json的key)函数。关于JSON_EXTRACT()的用法拓展:函数中使用lambda:JSON_EXTRACT(cloumn -> '$[0]','$.key') ->'$[0]'获取json数据中的第一条。LOCATE()函数判断字符串中是...

2020-10-23 19:07:16 1005

原创 记录IDEA自动生成entity的groovy文件

记录使用IDEA自动生成entity的goovy文件。带有数据库注释 已经修改int、date/datetiem/timestamp等数据格式 添加了lambda @Data注解import com.intellij.database.model.DasTableimport com.intellij.database.util.Caseimport com.intellij.database.util.DasUtil/* * Available context bindings:

2020-08-10 16:52:16 268

原创 JAVA日期计算,格式化日期的常用方法

public class DateUtils { private static final String FORMAT_TIME = "yyyy-MM-dd HH:mm:ss"; private static final String FORMAT_DAY = "yyyy-MM-dd"; private static final String FORMAT_MONTH = "yyyy-MM"; /** * 获取去年年份 * * @ret.

2020-08-06 17:08:14 241

原创 MySQL查询一段时间内的数据,没有数据的日期补全0

一、查询每天的数据,没有数据的那天,补全0:SELECT dateTime, MAX( success ) AS success, MAX( fail ) AS fail FROM ( SELECT @cdate := DATE_ADD( @cdate, INTERVAL - 1 DAY ) dateTime, 0 AS success, 0 AS fail FROM ( SELECT @cdate := DATE_ADD( #{date1}, INTERVAL + 1

2020-08-06 16:59:37 3043

原创 mysql not like简化

mysql支持正则表达式判断select * from user where name NOT LIKE '%AAA%' AND name NOT LIKE '%BBB%' AND name NOT LIKE '%CCC%'使用REGEXP正则表达式select * from user where name NOT REGEXP 'AAA|BBB|CCC'更多用法可以搜REGEXP正则表达式...

2018-06-05 15:19:58 10432 3

原创 JAVA对特殊字符的处理

最近在维护OA系统的时候,刚好遇到几个类似的问题。总结了一下大概是下面三种情况。1.在拼接原生SQL的时候,特殊字符如【'】,破坏了SQL的完整性。public String escapeExprSpecialWord(String keyword) { if (StringUtils.isNotEmpty(keyword)) { String[] fbsArr...

2018-05-10 15:16:56 10618

原创 DATE日期比较

public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); String time1 = "12:00"; String time2 = "13:00"; Date dateTime1 = null; Date dateTime2 = null; ...

2018-04-24 16:28:16 257

原创 JAVA 三元运算例子

[条件语句] ? [表达式1] : [表达式2]其中如条件语句为真执行表达式1。否则执行表达式2。表达式1或者表达式2都要有返回值。public static void main(String[] args) { double result = getAday(); System.out.println("d="+result); } public static double getA...

2018-04-23 15:25:51 1201

原创 JS中map的定义与使用

function Map() { /** 存放键的数组(遍历用到) */ this.keys = new Array(); /** 存放数据 */ this.data = new Object(); /** * 放入一个键值对 * @param {String}

2018-01-18 16:59:05 15352

原创 jsonp解决跨域请求问题

关键代码/** * jsonp解决跨域请求问题。 * JSONP,该协议允许用户传递一个callback参数给服务端,服务端返回数据时会将这个callback参数作为函数名来包裹住JSON数据, * 这样客户端就可以随意定制自己的函数来自动处理返回数据了 */ public String queryStaffInfo() { list

2017-11-29 08:32:33 388

原创 MySQL中查询一段日期内指定时间段的数据

查询某张表例如2017-01-01到2017-06-30这段日期内,07点-09点间的数据。 SQL如下: SELECT * FROM tableName WHERE hour(判断条件列) >= 7 AND hour(判断条件列) < 9 AND 判断条件列 >= ‘2017-01-01’ AND 判断条件列 < ‘2017-06-30’ AND extract(hour_m

2017-11-10 09:07:41 11009

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除