
java
hello-friend
青年程序员
展开
-
java.util.ConcurrentModificationException的解决办法
大家应该都知道, 在java中, 在对一些集合迭代的过程中对集合进行一些修改的操作, 比如说add,remove之类的操作, 搞不好就会抛ConcurrentModificationException,前几天在项目中,终于碰到了这个异常。在单线程操作的情况下,在DAO层查询到数据集合后,返回到service层做业务处理,要求:遍历数据集合,判断不符合条件的元素,做删除操作。在用fore...转载 2018-10-15 17:16:19 · 1081 阅读 · 0 评论 -
Unsupported major.minor version 52.0报错问题解决方案
1、问题描述工程启动的时候,报错如下:nested exception is java.lang.UnsupportedClassVersionError: tech/tablesaw/api/Table : Unsupported major.minor version 52.0 (unable to load class tech.tablesaw.api.Table)2.问题分析...转载 2018-09-27 16:46:30 · 12185 阅读 · 0 评论 -
真正的java的四舍五入
原文地址:https://blog.csdn.net/qwfylwc/article/details/53939906下面列举让你惊讶的现象,或许你还一直这么用:1、使用Math.round() double d = 1041.735; d = Math.round(d*100)/100.0; //除以100.0 而不是100 System.out.println(d); ...转载 2018-07-23 14:09:36 · 9722 阅读 · 0 评论 -
request.getParameterMap()详解
一、根据Java规范:request.getParameterMap()返回的是一个Map类型的值,该返回值记录着前端所提交请求中的请求参数和请求参数值的映射关系。这个返回值有个特别之处——只能读。不像普通的Map类型数据一样可以修改。这是因为服务器为了实现一定的安全规范,所作的限制。比如WebLogic,Tomcat,Resin,JBoss等服务器均实现了此规范。查看源码,我们发现HttpSer...原创 2018-07-03 16:53:44 · 43718 阅读 · 2 评论 -
声明式编程
先统一一下概念,我们有两种编程方式:命令式和声明式。我们可以像下面这样定义它们之间的不同:·命令式编程:命令“机器”如何去做事情(how),这样不管你想要的是什么(what),它都会按照你的命令实现。·声明式编程:告诉“机器”你想要的是什么(what),让机器想出如何去做(how)。声明式编程和命令式编程的代码例子: 举个简单的例子,假设我们想让一个数组里的数值翻倍。 我们用命令式编程风格实现...转载 2018-06-13 19:33:05 · 5302 阅读 · 1 评论 -
try-with-resource
java1.7特性,叫做try-with-resource,实现了AutoCloseable接口的实例可以放在try(...)中在离开try块时将自动调用close()方法。该方法调用可以看做在finally块中,所以资源的释放一定会执行,不过能不能成功释放还是得看close方法是否正常返回。原来:InputStream is = null;OutputStream os = null;try...原创 2018-06-05 16:33:50 · 240 阅读 · 0 评论 -
java经典算法之河内之塔(汉诺塔)
1、学习意义 “河内之塔”算法是递归算法的一个经典案例,理解透彻有助于真正的理解递归逻辑(非内存角度)。个人感觉,理解河内之塔后,其他算法中涉及到的递归就很好理解了,业内有句叫“人用迭代,神用递归”: [1]. 迭代(又叫递推):是要弄清楚每一步之间的相互关系,相互关系是清晰的,但实现比较复杂,繁琐。 [2]. 递归:把复杂问题简单化,有时会隐藏些细节,所以不能理解递归的话会觉得很...转载 2018-03-06 17:15:07 · 1010 阅读 · 0 评论 -
Lambdaj
lambdJ提供了一个DSL的语法去对集合进行相关操作。DSL 就是 Domain specific Language,精髓在「Domain」一词,「领域业务专门语言」,就是特定一个业务领域所专有的语言形式。比如我们所熟悉的SQL语言,就是一门DSL语言,它是专门针对数据库操作的语言。那lambdJ就是一个专门针对「集合」操作的DSL语言。lambdaj是一个纯净的集合操作工具,它不会提供任何的集...转载 2018-03-02 11:38:41 · 792 阅读 · 0 评论 -
Java Map在遍历过程中删除元素
Java中的Map如果在遍历过程中要删除元素,除非通过迭代器自己的remove()方法,否则就会导致抛出ConcurrentModificationException异常。JDK文档中是这么描述的:The iterators returned by all of this class's "collection view methods" are fail-fast: if the map iss...转载 2018-02-08 10:32:41 · 25399 阅读 · 0 评论 -
日志那点事儿——slf4j源码剖析
首先八卦一下这个日志家族的成员,下面这张图虽然没有包含全部的内容,但是基本也涵盖了日志系统的基本内容,不管怎么说,先记住下面这张图: 通过上面的图,可以简单的理清关系! commons-logging和slf4j都是日志的接口,供用户使用,而没有提供实现! log4j,logback等等才是日志的真正实现。 当我们调用接口时,接口的工厂会自动寻找恰当转载 2017-09-30 11:00:11 · 389 阅读 · 0 评论 -
logback 配置详解(二)——appender
目录1、appender 1.1、ConsoleAppender 1.2、FileAppender 1.3、RollingFileAppender 1.4、其他**Appender2、encoder 正文回到顶部1、appender 是的子节点,是负责写日志的组件。 有两个必要属性name和class。name指定appe转载 2017-09-30 10:09:01 · 700 阅读 · 0 评论 -
logback 配置详解(一)——logger、root
目录1、根节点包含的属性2、根节点的子节点 2.1、设置上下文名称: 2.2、设置loger、root 正文回到顶部1、根节点包含的属性scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默转载 2017-09-30 10:07:27 · 4494 阅读 · 1 评论 -
JNDI
NDI 是什么JNDI是 Java 命名与目录接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之一,不少专家认为,没有透彻理解JNDI的意义和作用,就没有真正掌握J2EE特别是EJB的知识。那么,JNDI到底起什么作用?要了解JNDI的作用,我们可以从“如果不用JNDI我们怎样做?用了JNDI后我们又将怎样做?”这转载 2017-09-06 09:45:24 · 631 阅读 · 0 评论 -
在linux上,为什么不用配置环境变量还能运行java程序呢?
问题描述: 我现在想升级pre环境的java版本,打开/etc/profile没有找到配置的JAVA_HOME,又查看了.bashrc文件,也没有配置。但是运行java -version,可以显示版本。 [root@localhost root]# whereis java java: /usr/bin/java [root@localhost root]# whereis javac j原创 2017-06-21 10:00:59 · 5500 阅读 · 1 评论 -
枚举范例
enum翻译 2017-06-01 19:46:32 · 430 阅读 · 0 评论 -
JsonUtil
Fastjson is a Java library that can be used to convert Java Objects into their JSON representation. It can also be used to convert a JSON string to an equivalent Java object. Fastjson can work with arb原创 2017-05-27 17:21:39 · 394 阅读 · 0 评论 -
tomcat端口被占用
端口被占用转载 2017-03-08 19:46:53 · 415 阅读 · 0 评论 -
java enum(枚举)理解
下面我在使用enum过程中一些经验和总结,主要包括如下内容:1.原始的接口定义变量2.语法(定义)3.遍历 ,swich等常用操作4.enum对象的常用方法介绍5.给enum自定义属性和方法6.enum的原理分析7.总结原始的接口定义变量public interface IConstants{ Strin转载 2017-02-07 11:18:49 · 288 阅读 · 0 评论 -
ToStringBuilder(二):两种方法比较
ToStringBuilder两种方法比较原创 2017-02-06 15:53:03 · 1371 阅读 · 0 评论 -
ToStringBuilder学习(一)
ToStringBuilder在commons-lang.jar里面。原创 2017-02-06 15:26:37 · 416 阅读 · 0 评论 -
java中i++ 与 i=i++的区别
记得大学刚开始学C语言时,老师就说:自增有两种形式,分别是i++与++i,i++表示的是先赋值后加1,++i是先加1后赋值。原创 2017-02-04 17:32:11 · 6873 阅读 · 3 评论 -
Remove '@override' annotation解决方法
Remove '@override' annotation原创 2016-12-27 09:19:47 · 1009 阅读 · 1 评论 -
Junit4-Test is not an annotation type
Test is not an annotation type原创 2016-11-22 19:47:49 · 1760 阅读 · 0 评论 -
FileOutputStream应用中'java.io.FileNotFoundException:'
FileOutputStream原创 2016-11-03 17:56:15 · 4198 阅读 · 0 评论 -
域名去掉上下文根
jboss tomcat 根域名原创 2016-10-11 09:52:31 · 7362 阅读 · 0 评论