Java
余三二
这个作者很懒,什么都没留下…
展开
-
java循环删除文件数组失败
背景:后台java处理从服务器下载已有的N个文件成临时文件,压缩成压缩文件后,重新上传新的压缩文件。循环删除临时文件数组 file.delete(),只删除成功最后一个。过程:已确认无未关闭的流,无占用文件资源,循环删除就是只删除最后一个,删除前加System.gc(),第一个还是删除不成功。如果删除不成功,循环删除,删个两三次也能解决问题。但是很担忧频繁GC对系统造成影响。查阅知,是windows系统下jdk无法释放已缓存的文件,需要这些临时文件是用于压缩,最后决定在压缩完后,马上gc一次。此时原创 2022-03-08 20:18:49 · 562 阅读 · 0 评论 -
EasyExcel对象Long类型太长导致导出变成科学计数法解决方案
方法一对应对象的字段加注解@NumberFormat(value = “#”)如果多个Long类型长度太长,不推荐多个地方要加方法二设置转换器EasyExcel.write(fileName, cls).registerConverter(new LongStringConverter())原创 2021-08-18 19:36:07 · 7903 阅读 · 2 评论 -
Type mismatch in value from map
查看Job中设置的输入输出的class数据类型和实际Mapper和Reducer中的输入输出数据类型是否一致。原创 2019-04-30 16:54:15 · 243 阅读 · 0 评论 -
NosuchSessionExceptopn:invalid session id
错误背景:在linux中运行java+selenium的jar程序,报NosuchSessionExceptopn:invalid session id及cannot find chrome binary错误详情:在代码中添加ChromeOptions options = new ChromeOptions();options.setBinary("/usr/bin/etc/cron...原创 2019-04-30 16:51:09 · 980 阅读 · 0 评论 -
修改List<T>中的值
场景:List数组是从文本中一行行读取的字符串,每行格式为xxx xxx,以空格(\s)或制表符(\t)分隔,要获取分隔后的第一个字符串并重新赋值到数组中实现:list.set(index, str); //index为索引,str为该索引下list的替换值举例:List<String> domains = FileUtils.readLines(file);;Integ...原创 2019-04-30 16:46:31 · 9559 阅读 · 3 评论 -
错误: 读取xxx.jar时出错; invalid LOC header (bad signature)
错误背景:maven项目进行maven install时报错错误详情:解决方法:找到对应的.jar文件进行删除,然后重新加载项目更多详情,可以看这篇maven 错误:读取 xxx.jar 时出错;invalid LOC header (bad signature) 1 错误...原创 2019-04-09 17:25:37 · 5546 阅读 · 0 评论 -
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
原文链接最近在学习SpringBoot时,有的时候明明项目运行起来没有问题,但是Console控制台会报错,比如说如下的问题异常提示:由此我们可以看出,报出错误的地方主要是slf4j的jar包,而故障码中“Failed to load class ’org.slf4j.impl.StaticLoggerBinder‘”的意思则是“加载类文件org.slf4j.impl.StaticLogge...转载 2019-04-09 16:53:05 · 577 阅读 · 0 评论 -
报错:Description Resource Path Location Type Archive for required library
错误详情:Description Resource Path Location TypeArchive for required library: ‘D:/repository/com/typesafe/akka/akka-actor_2.11/2.4.20/akka-actor_2.11-2.4.20.jar’ in project ‘FlinkTest’ cannot be read or...原创 2019-04-09 16:45:49 · 1206 阅读 · 0 评论 -
JAVA抽象类和抽象方法(abstract)
一、抽象(abstract)的使用当父类的某些方法不确定时,可以用abstract关键字来修饰该方法[抽象方法],用abstract来修饰该类[抽象类]。我们都知道,父类是将子类所共同拥有的属性和方法进行抽取,这些属性和方法中,有的是已经明确实现了的,有的还无法确定,那么我们就可以将其定义成抽象,在后日子类进行重用,进行具体化。这样,抽象类也就诞生了。例如,定义了“动物”父类,其中“动物名称...转载 2019-06-11 14:44:55 · 384 阅读 · 0 评论 -
函数式接口
函数式接口在 Java 中,当接口中只有一个抽象方法时,该接口就称为函数式接口。函数式接口,即适用于函数式编程场景的接口。而 Java 中的函数式编程就是 Lambda,即函数式接口就是可以适用于 Lambda 使用的接口。接口中只有一个抽象方法时,Java 中的 Lambda 才能顺利地进行类型的推导。函数式接口都是先使用 Lambda 接口实现方法体,再调用接口中的方法。函数式...转载 2019-06-11 15:02:03 · 144 阅读 · 0 评论 -
java中判断字符串是否为空!!!
if("".equals(driver.getTitle())) { //do something}!!1注意要用equals编码过程习惯性用==来判断,实际并没有跳进去。原创 2019-06-21 10:32:18 · 545 阅读 · 0 评论 -
Java中Collections.sort()排序详解
public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("beijing"); list.add("shanghai"); list.add("hangzhou"); Collections.sort(list, new ...转载 2019-06-12 14:07:27 · 384 阅读 · 0 评论 -
前台传入的JSON对象在后台以实体对象为入参接收
前台实体对象“包装”://应用情景一般是插入实体对象到数据库啥的//第一种方式创建方式var xxxEntity = { //实体对象的属性值 "id" : 1; "name" : 'Ben'; "age" : 23;}//第二种创建方式var xxxEntity = {};xxxEntity.id = 1;xxxEntity.name = 'Ben';xxxEntit...原创 2019-08-08 14:27:56 · 3534 阅读 · 0 评论 -
前台要传入到后台的数据是两个有关联的实体对象,后台如何接收更有效
String fields = (String)maps.get(“fields”);// JSONArray fieldList = JSON.parseArray(fields);JSONArray fieldsArr = JSONArray.fromObject(fields);for(Object obj :fieldsArr) {/FieldInfoEntity fieldIn...原创 2019-08-08 15:18:07 · 2948 阅读 · 0 评论 -
访问百度首页--java+selenium+chromedriver项目(一)
今日份的学习,利用chromedriver的无头特性直接访问百度首页运行环境:windows7chrome 76.0.3809.100chromedriver 72.0.3626.69eclipse步骤:1、创建maven项目,过程略2、pom.xml中添加依赖(目前(算不上功能的)功能这一个就够了)<dependency> <groupId&g...原创 2019-08-21 18:01:22 · 688 阅读 · 0 评论 -
运行java爬虫项目出现unknown error: call function result missing 'value'
错误详情:Exception in thread “main” org.openqa.selenium.WebDriverException: unknown error: call function result missing ‘value’错误原因:chromedriver和chrome版本不匹配匹配详情参考:selenium和chrom版本安装如果chrome的版本更高级,就...原创 2019-04-09 14:45:27 · 605 阅读 · 0 评论 -
hadoop集群上部署flink环境
搭建背景:目前已经在某个服务器上搭建好了hadoop集群,部署flink环境只需要通过xshell进行操作步骤:1、打开xshell,连接hadoop集群所在服务器2、查看hadoop版本,如图,可知版本是2.6.0$ hadoop version3、去官网下载相应的flink压缩包下载地址:https://flink.apache.org/downloads.html找到对应...原创 2019-04-09 11:56:17 · 6233 阅读 · 0 评论 -
eclipse设置保存日志输出
选择项目 -> run -> run Configurations按下图进行设置,按需求选择是否是java application -> 运行运行完成后,就能在设置的文件路径中找到输出日志,此输出日志是控制台输出...原创 2019-04-04 10:03:05 · 1680 阅读 · 0 评论 -
Eclipse 4.8.0 photon 如何创建dynamic web project并完成Tomcat配置(二)
前一篇博客中介绍了创建dynamic web project的过程,接下来配置Tomcat和进行测试一、配置Tomcat创建好dynamic web project项目后,如果没有出现以下Servers窗口则,Windows -> Show View -> Other,搜索servers,然后点击open即可点击窗口中的Click this link to create...原创 2018-10-24 14:15:22 · 572 阅读 · 0 评论 -
对面对对象的理解
谈谈对面对对象的理解在现实生活中的任何物体都可以归为一类事物,而每一个个体都是一类事物的实例。面向对象的编程是以对象为中心,以消息为驱动,所以程序=对象+消息。面向对象有三大特性,封装、继承和多态。封装就是将一类事物的属性和行为抽象成一个类,使其属性私有化,行为公开化,提高了数据的隐秘性的同时,使代码模块化。这样做使得代码的复用性更高。继承则是进一步将一类事物共有的属性和行为抽象成一个父类...转载 2018-11-12 09:25:41 · 158 阅读 · 0 评论 -
springboot+mybatis+springmvc实现数据库增加数据,调试时service实现类中mapper对象为空
问题:service实现类里面运行到Mapper.save(Entity)时,捕捉到空指针异常通过调试,发现Mapper为空解决途径:在浏览多个回答后,在论坛里面看到有人回答说,controller层的方法中new 了*ServiceImpl()导致,如下图解决方法:注释掉该条语句,完美解决问题。再次调试,可以看到不为空原因:null由于现在自己还处于初级阶段,没深入了解到原理...原创 2018-11-22 17:08:04 · 1135 阅读 · 1 评论 -
mybatis连接数据库进行查询,返回对象为null
*Mapper.xml中代码&lt;select id="query" parameterType="int" resultType="User"&gt; select username , password from user where id=#{id}&lt;/select&gt;主要测试代码User us原创 2018-11-20 13:55:14 · 1716 阅读 · 0 评论 -
java对Double型数据保留n位小数点
介绍以下两种方法要处理的数据如下:Double d = 22.123456;Double d1 = 0.987654;Double d2 = 0.100000;一、DecimalFormatDecimalFormat df = new DecimalFormat("#.000");String re = df.format(d);String re1 = df.format(d1...原创 2018-12-05 14:24:13 · 4605 阅读 · 0 评论 -
java中length,length(),size()的区别
length : 用于字符串数组长度length() : 用于字符串长度size() : 用于List集合String[] strArr = new String[] {"gyhjk","jklk"};String str = "hyjkk";List<String> strList = new ArrayList();strList.add("eff");strList...原创 2019-01-17 10:23:11 · 172 阅读 · 0 评论 -
java.util.LinkedHashMap cannot be cast to xxxEntity
java.util.LinkedHashMap cannot be cast toajax从前台传的list对象的map,将map中的list取出并把linkedhashmap类型的数组转换成实体类原创 2019-01-17 11:24:42 · 2992 阅读 · 0 评论 -
mapper中插入后返回的int是什么的值
mapper中插入后返回的int是什么的值原创 2019-01-21 09:03:21 · 8478 阅读 · 0 评论 -
java 判断字符串是否为空
java 字符串判断为空原创 2019-01-17 09:34:45 · 10283 阅读 · 2 评论 -
java中split()用法
String[] arrStr = object.split(",");如果要对arrStr进行输出,输出的结果是arrStr的内存地址原创 2019-02-20 16:37:35 · 2128 阅读 · 0 评论 -
mapreduce多文件输出
MultipleOutputs原创 2019-02-26 14:46:41 · 1178 阅读 · 0 评论 -
调用静态函数时,是否调用构造函数
调用静态函数时,不会调用构造函数原创 2019-02-26 15:12:35 · 3267 阅读 · 0 评论 -
indexOf取第二个某字符(串)出现的位置
String str = "/aaa/bbb/";str.indexOf("/",1);System.out.println(str); //4用法:indexOf(String str); //字符串str第一次出现的位置indexOf(String str, int fromIndex); //从索引fromIndex开始,str第一次出现的位置使用案例:取得"/aaa/bb...原创 2019-03-21 09:31:23 · 26619 阅读 · 1 评论 -
文件操作工具类FileUtils之写文件writeStringToFile
FileUtils.writeStringtoFile();原创 2019-03-25 09:54:02 · 15303 阅读 · 2 评论 -
Future<V>的使用
1、定义Future是JAVA并发框架Executor中的一个类,Executor就是Runnable和Callable的调度容器,Future就是对于具体的Runnable或者Callable任务的执行结果进行取消、查询是否完成、获取结果、设置结果操作,用get()可以获得执行结果。2、举例public class FutureTask(){ private static Executo...原创 2019-03-25 14:02:52 · 4064 阅读 · 1 评论 -
jsoup的使用
使用环境:eclipsemaven项目jsoup是干什么的?简单来说,就是解析html,获取html中的各种元素,其中的使用方法很多都和前端js,jquery的使用有相似之处下图网上找的,随便看看就好使用方式列举1、在pom.xml中添加依赖包<dependency> <groupId>org.jsoup</groupId> <art...原创 2019-03-22 15:12:19 · 357 阅读 · 0 评论 -
Eclipse 4.8.0 photon 如何创建dynamic web project并完成Tomcat配置(一)
一、查看eclipse版本,不同版本遇到的问题可能不一样。我是Photon Realease(4.8.0)。步骤:Help -> About Eclipse IDE打开后窗口如下可视:二、创建dynamic web project在该版本中,是没有dynamic web project项目,需要安装插件才能实现。1、下载安装相应插件步骤:Help -> Install ...原创 2018-10-24 11:42:18 · 3917 阅读 · 9 评论