- 博客(31)
- 收藏
- 关注
原创 java 使用集合产生的UnsupportedOperationException
Arrays.asList 产生的是一个固定大小的数组,更改就会报错UnsupportedOperationException。Collections.EMPTY_LIST是一个size为0的标准数组,不可以添加元素。
2023-08-24 11:19:18
81
原创 【Linux文件权限简记版】
例:在test文件目录下,输入chmod 764 test.csv,修改此文件权限。数字含义:可读 可写 可执行 ,分别用r、w和x,分别用4、2、1。即,7-可读可写可执行,6-可读可写,5-可读可执行,4仅可读。其中三位数字分别对应:所有者、所属组成员、所属组之外的用户。
2023-07-25 19:19:10
60
原创 websocket方式订阅服务,监听消息推送
需要写两个类,示例如下包含大部分消息处理逻辑的消息接受类:package com.liu.demo.client;import com.fasterxml.jackson.databind.ObjectMapper;import com.liu.modules.demo.service.DemoService;import lombok.SneakyThrows;import org.java_websocket.client.WebSocketClient;import org.java_
2022-04-12 10:01:18
1856
1
原创 IDEA运行项目时, java: 程序包javax.websocket.server不存在
解决办法选择File点击Project Structure选择Libraries点击 + ,搜索框输入缺失的包(例如,pox.xml中依赖写法为<dependency> <groupId>org.java-websocket</groupId> <artifactId>Java-WebSocket</artifactId> <version>1.5.3</version> </depe
2022-04-11 16:53:19
5338
原创 【java发送http请求】
post请求 public static String doPostByJSONObect(String url, JSONObject args) throws Exception { if (StringUtils.isEmpty(url)) throw new Exception("地址为空"); // URI m_url = new URI(url); // URLDecoder.decode(url,"UTF-8"); CloseableHttpClient httpC
2022-01-24 09:47:46
2507
原创 【spring boot测试报Failed to load ApplicationContext】
仅针对:项目可以正常运行,只在测试时报这个问题。解决办法:注释掉WebSocketConfig类,及其被调用的语句
2022-01-17 14:16:06
421
原创 【oracle分页查询】
<if test="start != null and end != null"> select * from ( SELECT a.*, ROWNUM AS num from ( </if> select * from "sys_user" <if test="start != null and end != null"> .
2021-11-23 16:30:18
412
原创 excel导出实体类数据
@ApiOperation("导出") @GetMapping("/batchOut") public ResultInfo batchOut( String ids,//如果为空就导出全部 String keyword//搜索关键字 ) throws IOException, IllegalAccessException, NoSuchFieldException { List<TDemo> result
2021-10-29 14:39:42
694
原创 2021-09-26表格导入的错误提示整理
先在导入逻辑里记录错误的行号格号 result的结构是<行号,格号List>StringBuffer sb = new StringBuffer();if (result.size() != 0) {sb.append(“表格第”);for (Integer rowNumber : result.keySet()) {sb.append(rowNumber );sb.append(“行第”);for (Integer integer : result.get(rowNumber))
2021-09-26 11:46:25
404
原创 达梦数据库实现replace into操作完成备份及转正
达梦数据库实现replace into操作前言我们在MySQL中会经常见到和使用到replace into指令,但在达梦数据库(截止到目前DM8版本)中,却不能支持此指令。下面就详细介绍下,如何在达梦数据库中实现replace into操作,即用merge into实现replace into操作。具体实现原理replace into 可理解为是两个操作:首先对原数据进行删除,然后再插入新数据;merge into 是oracle中的指令,(据说DM 99%兼容Oracle,此说法并未考证~~),
2021-08-19 16:06:14
857
转载 java IO(以防删除故转载)
流:可以理解数据的流动,就是一个数据流。IO流最终要以对象来体现,对象都存在IO包中。流也进行分类:1:输入流(读)和输出流(写)。2:因为处理的数据不同,分为字节流和字符流。字节流:处理字节数据的流对象。设备上的数据无论是图片或者dvd,文字,它们都以二进制存储的。二进制的最终都是以一个8位为数据单元进行体现,所以计算机中的最小数据单元就是字节。意味着,字节流可以处理设备上的所有数据,所以字节流一样可以处理字符数据。字符流:因为字符每个国家都不一样,所以涉及到了字符编码问题,那么GBK编码
2021-08-19 16:04:59
72
原创 多个文件导出并打成zip压缩包下载
ps: 需要注意的是此方法即使只有一个文件也是导出成zip,所以如果需求是单个文件不压缩,多个文件才打包压缩的话需要前端处理调两个接口.这里只贴出打包导出的代码.直接上Controller层代码,如下 : @ApiOperation("导出多个xlsx文件") @RequestMapping(path = "/exportMore", method = RequestMethod.GET) @ResponseBody public void downloadFile(Ht
2021-08-19 10:42:46
805
原创 业务开发中很实用的通用代码
做数据展现时,用户勾选的时间段处理: //当传入2021-01-01——2022-01-01时,用户的意思应该是统计到2022-01-01 23:59:59 startTime = startTime.substring(0, 10) + " 00:00:00"; endTime = endTime.substring(0, 10) + " 23:59:59";记录业务保存和更新时间时,调用当前系统时间://在业务类里定义为全类可用的不可变量 privat
2021-08-19 10:16:40
113
原创 线程并发,搬运
private ExecutorService executorService = new ThreadPoolExecutor(4, 4, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>(), new NamedThreadFactory("mget-redis-pool"));int count = Double.valueOf(Math.ceil(keys.size() / (double) 100)).i
2021-08-11 10:59:30
74
原创 比较间隔时间
LocalDate now = LocalDate.now(); String str = "2020-08-10 00:00:00"; LocalDate esdateDate = LocalDate.parse(str); long separateYears = esdateDate.until(now, ChronoUnit.YEARS); if (separateYears < 1) { // "时间间隔<1年"; }
2021-08-10 15:51:19
63
原创 Java,处理不连续的时间段统计值用于制作折线图
用于统计的折线图点类NumberVO@Data@EqualsAndHashCode(callSuper = false)@Accessors(chain = true)@ApiModel(value="数据统计类")public class NumberVO { @ApiModelProperty(value = "统计属性的名称,如镇名、举报来源") private String name; @ApiModelProperty(value = "统计数量")
2021-08-02 15:12:27
760
转载 周数转具体日期
周数转具体日期。https://blog.csdn.net/qq_36637705/article/details/81129090
2021-07-30 11:41:10
252
原创 mysql中week()函数
mysql中week()函数是用来做周的统计和计算,返回日期的周数例如统计今年每周有多少个注册用户SELECT count(id) as count,week(create_time,1) as weeks FROM user WHERE create_time > ‘2020’ and create_time<‘2011’ GROUP BY weeks;sql里面的weeks就是第几周WEEK(date, mode);有两个参数1、date是要获取周数的日期2、mode是一个可选参
2021-07-30 11:35:56
11536
原创 不生成文件实现excel导出,只要正确生成了workbook就行,前端会拿到流,再经过前端处理就可以导出成xlsx文件
@ApiOperation(“日志管理>导出日志”)@GetMapping("/export")@ApiImplicitParams({@ApiImplicitParam(name = “logIds”, value = “日志id合集”, dataType = “String”, paramType = “query”)})public void logExport(String logIds, HttpServletResponse response) throws IOException
2021-07-24 10:23:11
423
原创 可调度的定时任务,根据用户操作变更执行频率
一次实际开发中用到的,参考别人的写法完成的,简单记录一下。实现思路是,有一张设置表,里面固定只有id为1的一条数据(建表的时候就要insert好),作为模块设置参数,用户在页面更改参数时,修改设置存在表里(实际上入库之前就有代码检查定时参数是不是有更改,有的话会执行完更改再入库)。系统第一次运行时读取数据库设置表的参数开启定时任务,后面每次修改设置表都会检查,如果和已有设置不一样,就会set新的cron表达式给定时任务类(这个类的执行是托管给Spring的)。代码贴一下:/**@author l
2021-07-24 10:08:47
345
原创 比较两个时间字符串的时间相差。通过判断时间段大小,合理分块用于后续绘制折线趋势图
/*** 比较时间差** @param satrtTime 起始日期字符串* @param endTime 结束日期字符串* @return 1表示相差小于等于一个月,2表示相差大于一个月但小于等于六个月,3表示相差大于六个月*/public static int checkDate(String satrtTime, String endTime) {SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
2021-07-24 09:43:04
192
原创 可调度的定时任务,收藏,如需删除请联系
可调度的定时任务https://www.cnblogs.com/mengq0815/p/10596073.htmlhttps://www.cnblogs.com/zhao1949/p/7272027.html
2021-07-24 09:38:37
43
原创 统计所给的时间段内包含多少个月
/* int months = 0; int startMonthOfYear = start.getMonthValue(); int endMonthOfYear = end.getMonthValue(); if (start.getYear() == end.getYear()) { //例如当年11-当年1 months = endMonthOfYear - startM...
2021-07-23 16:36:06
141
原创 java 按天统计数据用于制作折线图
刚实习一段时间,很菜,记录一下自己的解决办法方便后面回顾和改进。SQL编写时使用:SELECT day(xx时间) AS fieldName,count(xx属性) AS fieldNumber FROM…来实现逐天统计,其中day方法会把时间2021-06-28处理成28。但会有一个问题,假如传入的时间为6.28到7.04这周,而其中有一两天没有数据,查出来的对象数组就不足七个点,会缺少用于做折线图的点,所以就写了一个方法去处理。代码贴一下,如果有更好的方法请教教我呀。private
2021-07-05 18:35:43
1056
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人