Java
SELECT_BIN
这个作者很懒,什么都没留下…
展开
-
记录一些Java工具类
一. org.apache.commons.io.IOUtilscloseQuietly:关闭一个IO流、socket、或者selector且不抛出异常,通常放在finally块toString:转换IO流、 Uri、 byte[]为Stringcopy:IO流数据复制,从输入流写到输出流中,最大支持2GBtoByteArray:从输入流、URI获取byte[]write:把字节. 字符等写入输出流toInputStream:把字符转换为输入流readLines:从输入流中读取多行数...原创 2020-06-14 15:36:27 · 285 阅读 · 1 评论 -
GET请求带header的请求方式
正常会有封装好的post方法,get方法带header可以用restTemplate的exchange()方法自己封装一个使用:String dcToken = "**"; String centerFlag = "**"; //header的值 Map headers = new HashMap(4); headers.put("token",dcToken); headers.put("sign",centerFl原创 2020-06-03 19:31:36 · 12341 阅读 · 1 评论 -
Java代码日志打印
什么时候应该打日志1.当你遇到问题的时候,只能通过debug功能来确定问题,你应该考虑打日志,良好的系统,是可以通过日志进行问题定为的。2.当你碰到if…else 或者 switch这样的分支时,要在分支的首行打印日志,用来确定进入了哪个分支3.经常以功能为核心进行开发,你应该在提交代码前,可以确定通过日志可以看到整个流程基本格式必须使用参数化信息...原创 2020-04-07 15:09:05 · 540 阅读 · 0 评论 -
手写JSON与集合互转
List、Map、JSON、String 互转方法总结:先叙述一下没有jar包时候的困惑;不行就自己写一个吧!public static List parseStringToListMap(String str1) { if (StringUtil.isBlank(str1)){ return new ArrayList(); ...原创 2018-06-27 16:01:44 · 827 阅读 · 0 评论 -
获取待判断时间与当前时间相差的天数,时间差判断,获取当前时间前面n天的日期
1.获取待判断时间与当前时间相差的天数判断两个日期相差的天数:SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date day = df.parse("2018-05-18 17:39:39");Date day2 = df.parse("2018-05-1 00:00:00");Date day3 ...原创 2018-05-27 15:31:10 · 2168 阅读 · 0 评论 -
JAVA 语言 IO学习(1)
1 流的概念:l 流是有方向的,有顺序的字节概念n I:in 输入 读n O:out 输出 写2 IO流的分类a. 操作方向不同分为: 输入流与输出流b. 操作类型不同分为: 字节流与字符流3 字节流与字符流的比较l 字节流可以操作所有的类型(如图片、avi、...原创 2018-04-09 11:02:05 · 170 阅读 · 0 评论 -
关于split小结
给大家分享下split的分割机制;举个例子,要以“,”为记号,分割字符串“,1,2,,”分割后的数组长度是多少呢?对,就是3;String str1 = ",1,2,,";String[] str1s = str1.split(",");for (int i = 0; i < str1s.length; i++) {System.out....原创 2018-03-15 22:01:59 · 638 阅读 · 0 评论 -
Java爬虫学习《一、爬取网页URL》
导包,如果是用的maven,添加依赖: <dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</artifactId> <versi...原创 2018-10-22 17:12:43 · 675 阅读 · 0 评论 -
Java中需要转义的字符
在Java中,不管是String.split(),还是正则表达式,有一些特殊字符需要转义,这些字符是( [ { / ^ - $ ¦ } ] ) ? * + .转义方法为字符前面加上"\\",这样在split、replaceAll时就不会报错了;不过要注意,String.contains()方法...原创 2018-06-27 15:33:09 · 5371 阅读 · 0 评论 -
@JSONField注解的使用
FastJson中的注解@JSONField,一般作用在get/set方法上面,常用的使用场景有下面三个:修改和json字符串的字段映射【name】 格式化数据【format】 过滤掉不需要序列化的字段【serialize】一、修改字段映射使用方法: private Integer aid; // 实体类序列化为json字符串的时候,此类的aid字段,序列化为js...原创 2018-10-26 16:37:16 · 1518 阅读 · 0 评论 -
Stream语法详解
1. Stream初体验我们先来看看Java里面是怎么定义Stream的:A sequence of elements supporting sequential and parallel aggregate operations.我们来解读一下上面的那句话:Stream是元素的集合,这点让Stream看起来用些类似Iterator; 可以支持顺序和并行的对原Stream进行...转载 2018-08-30 14:38:02 · 604 阅读 · 0 评论 -
ITextRenderer 将html文件转为PDF
maven依赖: <!--pdf--> <dependency> <groupId>org.xhtmlrenderer</groupId> <artifactId>core-renderer</artifactId> &...原创 2019-09-17 16:44:05 · 6886 阅读 · 1 评论 -
解决:ITextRenderer 将html文件转为PDF时 报空指针异常NullPointerException
异常信息: java.lang.NullPointerException: null at org.xhtmlrenderer.swing.NaiveUserAgent.getBinaryResource(NaiveUserAgent.java:228) at org.xhtmlrenderer.pdf.ITextFontResolver.importFontFaces(IText...原创 2019-09-17 17:28:49 · 2731 阅读 · 0 评论 -
Java 后台用html2image实现将html文件转为图片
maven依赖: <dependency> <groupId>gui.ava</groupId> <artifactId>html2image</artifactId> <version>0.9</version> ...原创 2019-09-18 13:00:56 · 4300 阅读 · 9 评论 -
对Map的一些分析和总结,有序map,排序,
可以直接拖到后面看应用HashMap通过hashcode对其内容进行快速查找,而 TreeMap中所有的元素都保持着某种固定的顺序,如果你需要得到一个有序的结果你就应该使用TreeMap(HashMap中元素的排列顺序是不固定的)。HashMap 非线程安全 TreeMap 非线程安全线程安全在Java里,线程安全一般体现在两个方面:1、多个thread对同一个java实例的访...原创 2018-06-07 22:38:37 · 4953 阅读 · 1 评论 -
fastjson解析JSON和转换JSON,java String 转Map(TypeReference)
使用fastjson 实现String转List、Map、JSON直接上代码:public static void testJSONParseArray() { //造数据 Map map = new HashMap(); map.put("k11", "v11"); map.put("k12", "v12"); ...原创 2018-07-04 22:07:44 · 1566 阅读 · 0 评论 -
json与javabean之间的转化
1.Java bean转JSON1.1.用fastjson:public static void main(String[] args) throws IOException, ParseException { beanToJson(); } protected static void beanToJson() { td_sys_menu...原创 2019-06-12 20:20:04 · 297 阅读 · 0 评论 -
本地json文件解析的实践
场景:调用外部接口取数据时,poatman可以正常使用,本地调用乱码;数据量不是很大;解决:用postman调用外部接口取出数据存在本工程json文件下,代码取数据的时候直接从本地取:文件目录格式:其中test.json存放数据;JSONReadTest.java中实现逻辑操作:代码实现:package com.example.selectBin;im...原创 2019-05-18 10:21:53 · 651 阅读 · 0 评论 -
Java异常详细信息获取
异常详细信息获取,方便定位;测试代码:@Scheduled(cron = "0/10 * * * * ? ") public void testException(){ String str = null; try{ str.equals(1); }catch (Exception e){ final Writer result = new StringWri...原创 2019-03-07 14:32:27 · 4040 阅读 · 0 评论 -
Java 使用POI实现Excel表格的读写
先说点废话:Java操作Excel,其实很多项目只用到简单的数据导出,也就是“生成/获取数据”--》“生成文件”--》“写数据”;但是在早些年楼主是做过数据完全存在Excel里面的项目的,拼接、读取,数据完全在Excel存储,现在这种项目应该不多了吧;想把Demo尽可能的写的完善,但是又害怕不够通俗易懂,用起来又会不顺手;此Demo实现的是:将数据写入到Excel文件中,...原创 2018-12-03 18:33:47 · 420 阅读 · 0 评论 -
Java 8 之 forEach遍历Map、List简单例子
1.forEach and Map普通遍历Map 的方法: public static void main(String[] args) { Map<String, Integer> items = new HashMap<>(); items.put("A", 10); items.put("B", 20); ...原创 2018-11-26 15:22:50 · 5472 阅读 · 0 评论 -
解决:java.util.ConcurrentModificationException: null:异常
报错信息:java.util.ConcurrentModificationException: null at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909) ~[na:1.8.0_171] at java.util.ArrayList$Itr.next(ArrayList.java:859) ~[...原创 2018-11-07 11:31:26 · 29063 阅读 · 0 评论 -
StringEscapeUtils使用
public static void main(String[] args) { String str = "thi is a test 这是一个测试"; String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<persons>\n" ...原创 2018-10-29 13:53:05 · 1273 阅读 · 0 评论 -
Java实现是否为节假日、工作日判断(调用“http://api.goseek.cn/Tools/holiday”接口)
工具类:package com.ai.rai.group.system;import com.alibaba.fastjson.JSONObject;import com.alibaba.fastjson.TypeReference;import org.apache.commons.collections.MapUtils;import java.io.BufferedRead...原创 2018-09-27 16:20:32 · 7134 阅读 · 8 评论 -
Jacob实现Java操作Office
首先,官网下载资源:https://sourceforge.net/projects/jacob-project/导包:1.如果没用maven管理工程,就随便导吧;2.如果时使用的Maven管理工程;用命令行导入maven:mvn install:install-file -Dfile=D:\works\jacob.jar -DgroupId=org.jacob -Darti...原创 2018-09-04 16:34:36 · 558 阅读 · 0 评论 -
多线程 Thread 中 run() 与 start() 的区别
Java 的线程是通过 java.lang.Thread 类来实现的。VM 启动时会有一个由主方法所定义的线程。可以通过创建 Thread 的实例来创建新的线程。每个线程都是通过某个特定 Thread 对象所对应的方法 run() 来完成其操作的,方法 run() 称为线程体。通过调用 Thread 类的 start() 方法来启动一个线程。在 Java 当中,线程通常都有五种状态,创建、就绪...原创 2018-09-03 17:05:49 · 279 阅读 · 0 评论 -
常用的遍历Map方法的比较
用keySet遍历:Map<String, String> map = new HashMap<String, String>();map.put("01", "zhangsan");map.put("02", "lisi");map.put("03", "wangwu");//先获取map集合的所有键的Set集合,极为map中所有key值的集合Set<...原创 2018-08-30 14:54:14 · 343 阅读 · 0 评论 -
List<Map>集合根据Map里某个key对List集合重新排序介绍
未完待续·····例1:List集合数据参考形式如下:[{GLXXLX=03,GLXXBH=20160226105812003},{GLXXLX=01,GLXXBH=20160226105812001},{GLXXLX=02,GLXXBH=20160226105812002}]现在想按照GLXXLX从大到小或者从小到大进行排序,做法如下://对list进行重新按照glxxl...原创 2018-08-30 15:00:05 · 3827 阅读 · 0 评论 -
解决:com.alibaba.fastjson.JSONException: parse number key errorpos 3, json
在解析JSON的时候,除了代码:public static void testMe() { Map map = new HashMap(); map.put("1", "2"); map.put("weq", "asd"); map.put("qw", ""); List list = new Arr...原创 2018-06-28 14:26:08 · 17619 阅读 · 4 评论 -
Java 8 Lambda && Stream (上)
先说下Lambda:lambda:简化了匿名委托的使用,让你让代码更加简洁,优雅。java 8 中Lambda 表达式由三个部分组成:第一部分为一个括号内用逗号分隔的形式参数,参数是函数式接口里面方法的参数;第二部分为一个箭头符号:-> 可以叫他,“转到”或者 “成为”;第三部分为方法体,可以是表达式和代码块。语法如下:1、方法体为表达式,该表达式的值作为返回值返...原创 2019-07-29 17:51:44 · 564 阅读 · 0 评论