- 博客(16)
- 资源 (1)
- 收藏
- 关注
原创 索引效率的惊人体现以及索引的最左匹配原则
不加索引的查询加上索引之后organize_id, invoice_source, invoice_statussql 如下SELECT organize_id as 帐套id, sum(case when auth_time BETWEEN ‘2018-11-09’ and ‘2018-11-30’ and invoice_source=2 and invoice_status=1...
2019-01-31 05:13:09 580
原创 使用easyexcel导出多表头excel文件
多表头的modelpackage com.souche.financial.report.model.eo;import com.alibaba.excel.annotation.ExcelProperty;import com.alibaba.excel.metadata.BaseRowModel;import lombok.Data;import org.springframewo...
2019-01-31 04:55:26 13148 1
原创 使用easyexcel导出excel文件
这里是导出一个excel文件,里面有两个sheet分别是税赋预测表和发票汇总表controller层 @requestMapping(value = "/exportExcel/taxForecast", method = Method.GET) public Result<String> exportExcel(String uid, String accountCod...
2019-01-31 04:17:21 26753 20
原创 java导入excel的各自方式分析之easyexcel详解(大文档excel导入避免内存溢出)
导入excel进行数据解析,是日常项目中很经常见到的需求。目前常见的导入excel的工具库有poi和jxlpoi功能丰富,但是较为复杂,jxl简单,但是功能不丰富。但是poi和jxl的导入解析,都有一个致命的问题,就是在大数据量的时候容易内存溢出。当导入6万条数据的时候,内存能占用到100M,如果有20个人一起导入,服务很可能就挂了。在生产环境是很危险的。原因:excel内部存储数据其...
2019-01-30 22:14:29 10426
转载 jsx react格式化时间
就可以格式化时间为 yyyymmdd格式使用react的 momentimport moment from “moment”;let statusPassTime = moment(parseInt(entity.statusPassTime)).format(‘YYYY-MM-DD’);/说明/let 格式化后的日期 = moment(parseInt(“日期的字符串”))....
2019-01-30 18:49:10 1207
原创 java获取当前时间的上一个月底的时间
/*** @Author laixiaoxing* @Description //获取当前时间的上一个月底的时间* @Date 上午1:57 2019/1/27*/private Date getLastMonthFinallyDate(Date begin) {Instant instant = begin.toInstant();ZoneId zoneId = ZoneId.sy...
2019-01-30 16:03:32 1890
原创 sql的date函数 提取日期部分
select id,make_invoice_time from t_invoice_detail where make_invoice_time=‘2018-11-09’搜不到任何使用date提取出日期之后select id,make_invoice_time from t_invoice_detail where Date(make_invoice_time)=‘2018-11-09...
2019-01-27 04:10:28 11639
原创 sql列转行 使用case when
最近用到sql要汇总一些数据,每个sum统计出来之后是一列select sum(tax_amount) as 进项税额 from t_invoice_detail whereorganize_id in(‘0101001’,‘0101002’,‘0101003’,‘0101004’) andauth_time BETWEEN ‘2017-09-01 00:00:00’ and ‘201...
2019-01-27 03:47:57 2296
原创 mysql中慎用or ,or表示并集,or左边表达式的条件不会限制or右边的表达式
mysql中慎用or ,or表示并集,or左边表达式的条件不会限制or右边的表达式。项目中了踩了一下这个坑在这里记下来select * from t_invoice_detail whereDate(make_invoice_time) >= ‘2018-11-09’ and Date(make_invoice_time) <=‘2018-10-31’and tax_rate...
2019-01-27 03:38:31 2168 2
原创 mysql的between查到的是一个闭区间 包括边界值,且值大于等于左区间小于等于右区间
select id from t_invoice_detail whereid BETWEEN 66 and 68查出来的结果包括66和68在内等同于求id>=66 and id<=68select id from t_invoice_detail whereid BETWEEN 68 and 66调换顺序且值大于等于左区间小于等于右区间等同于求id>=68 a...
2019-01-27 03:36:29 2058
原创 apache a b压测工具模拟并发请求
命令ab -n 100 -c 100 http://www.baidu.com-n 表示发出100个请求 -c表示模拟100个并发相当于100个人同时访问 url或者命令 ab -t 60 -c 100-t表示60秒相当于60秒内不停的发请求压测工具还有jmeter等@Controllerpublic class testController { private M...
2019-01-21 00:31:19 551
原创 qos.logback.core.rolling.SizeAndTimeBasedFNATP.setMaxFileSize
Caused by: java.lang.NoSuchMethodError: ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP.setMaxFileSize(Lch/qos/logback/core/util/FileSize;)V这个报错是因为日志冲突,logback shift两下 可以搜到 发现引入了不同版本的jar包...
2019-01-08 19:03:21 4306
原创 线程池各个参数详解以及如何自定义线程池
一:为什么要自己定义线程池虽然jdk提供了几种常用特性的线程池给我们,但是很多时候,我还是需要自己去自定义自己需要特征的线程池。并且阿里巴巴规范手册里面,就是不建议使用jdk的线程池,而是建议程序员手动创建线程池。为什么呢?原文如下【强制】线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规...
2019-01-06 21:59:46 22188 1
原创 jdk提供的几种线程池的介绍
Executor框架提供了各种类型的线程池。ExecutorService 继承了Executor接口,初步定义了线程池内的方法。然后 ,AbstractExecutorService又实现了ExecutorService里面定义的方法。再最后ThreadPoolExecutor 继承了AbstractExecutorService,里面是更为细致的实现。jdk定义了一个Executors工...
2019-01-05 18:00:37 1153
原创 jdk的线程池框架简要分析
jdk提供了一套Executor框架,其本质就是线程池。首先是public interface Executor {//执行一个实现了Runnable接口的任务 void execute(Runnable command);Executor接口是所有线程池的父接口然后 ExecutorService 继承了Executor接口,初步定义了线程池内的方法public inte...
2019-01-05 11:55:42 180
原创 为什么要用线程池
1.为什么要用线程池多线程的情况下确实可以最大限度发挥多核处理器的计算能力,提高系统的吞吐量和性能。但是如果随意使用线程,对系统的性能反而有不利影响。比如说 new Thread(new Runnable() { @Override public void run() { try { ...
2019-01-05 11:54:25 5191
可以解析大文件的easyexcel版本
2019-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人