Java
金麟十三少
擅长JAVA,系统架构设计
展开
-
ArrayList在循环遍历的过程中,使用remove删除对象,会造成java.util.ConcurrentModificationException异常
public static void main(String[] args){ ArrayList<Integer> list = new ArrayList(); list.add(1); list.add(2); list.add(3); list.add(4); list.add(5); list.add(6); for(Integer data : list){ System.out.println("=.原创 2020-12-10 14:58:57 · 667 阅读 · 0 评论 -
Idea项目里的代码,出现cannot find declaration to go to,无法识别类和方法
问题:ideal项目重启后,莫名其妙出现cannot find declaration to go to,无法识别类和方法,maven项目重新编译,还是不行。网上找了很多方法,其中几种解决方法,都是说项目是用open的方法打开,不是import打开,重试了,也是不行。最后,用以下方法,给处理完成。项目File->>Invalidate Caches / Restart就可以了...原创 2020-11-30 08:53:52 · 2658 阅读 · 1 评论 -
Java计算两个时间间隔的几个月
使用Period对象,进行计算两个时间之间,间隔的月数Date nowYearMonth = new SimpleDateFormat("yyyy-MM").parse(DateUtils.parseDateToStr("yyyy-MM", new Date()));String suspenseAccountDate = rule.getSuspenseAccountDate();String dateType = rule.getDateType();String suspenseMonth原创 2020-11-11 08:23:46 · 1663 阅读 · 0 评论 -
Java项目,复制新的类到项目中,一直提示“Error:(36, 25) java: 找不到符号“
【报错信息】Error:(36, 25) java: 找不到符号 符号: 类 TCollectDataEntity 位置: 类 com.ysz.welfare.service.impl.TCollectDataServiceImpl这个提示,其实是找不到class文件。找到项目的classes输出目录,看下TCollectDataEntity.class是否真的不存在,确实不存在。解决方法:删除classes目录,项目重新build,我的项目不是maven,如果是maven项目,c...原创 2020-08-10 13:59:53 · 1000 阅读 · 0 评论 -
springmvc结合activemq
1、所需jar包下载<dependency> <groupId>org.springframework</groupId> <artifactId>spring-jms</artifactId> <version>4.1.0.RELEASE</version>原创 2018-10-18 16:29:21 · 233 阅读 · 0 评论 -
Activemq消息队列
activemq是由apache出品的,是强劲的开源消息总线,支持多种传输协议:in-VM,TCP,SSL,NIO,UDP,JGROUPS,JXTA。windows环境下,下载解压软件包,点击bin目录下的activemq.batlinux环境下,运行bin下的命令,./activemq.setup此时使用的默认服务端口是61616和默认console端口8161。修改端口,就...原创 2018-10-18 15:57:39 · 377 阅读 · 0 评论 -
ActiveMQ常见错误二:javax.jms.JMSException: Unknown data type: 47
把连接端口8161改为61616原创 2018-10-18 15:52:57 · 5785 阅读 · 0 评论 -
Java序列化和反序列化
想要序列化必须实现2个条件,一个是实现java.io.serializable接口。第二该类的所有属性都必须是可序列化的,如果有一个属性是不可序列化的,则要标注该属性是短暂的。//序列化,生成字节码文件,写入到磁盘中 public static void ser() throws Exception{ User user = new User(); us...原创 2018-10-07 21:42:12 · 108 阅读 · 0 评论 -
MongoDB Java操作
package db;import java.util.ArrayList;import java.util.List;import org.bson.Document;import com.mongodb.MongoClient;import com.mongodb.client.FindIterable;import com.mongodb.client.MongoColle...原创 2018-09-28 15:34:12 · 119 阅读 · 0 评论 -
Java的重写和重载
1、重写Overriding指的是子类继承父类,对父类的方法进行重新编写,返回值和方法名、参数都不能变。外壳不变,核心代码可变。抛出的异常不能比父类更广。2、重载Overloading指的是同一个类,方法名字相同,返回值和参数都可以不同的,最常用的就是构造器重载。也可以修改访问修饰符,可以抛出更广的异常,方法可以在同一个类或者子类中重载。3、重写是父类和子类之间的一种多态表现形式,重写可以...原创 2018-10-06 20:35:06 · 127 阅读 · 0 评论 -
java反编译
1、可以使用dos界面进入需要编译的class文件所在目录,使用javap的命令进行反编译,比如bean.class,命令javap bean.class2、第二种方式使用jd-gui.exe软件,进行反编译,这个比较简单快捷...原创 2018-10-31 14:59:27 · 145 阅读 · 0 评论 -
Java synchronized实现和原理介绍
synchronized是同步的意思,在java多线程中,我们一般会考虑共享数据的处理,共享数据的处理包含两块,第一是共享数据,第二是在多线程访问共享数据的时候,如果处理共享数据,保证数据的有效正确性。我们要保证线程A访问共享数据,对数据进行处理的时候,其他线程能够等待线程A访问完毕后,和线程A看到相同的数据,再进行自己的业务处理,这也就是互斥锁。java中,synchronized可以保...原创 2018-11-08 14:50:13 · 2149 阅读 · 0 评论 -
==和equals的区别
/** * ==:基本类型比较的是值,引用类型比较的是引用是否相等 * equals,本质上是==,只不过String和Integer,重写了方法,变成值比较 * 这里s和a的引用是一样的,String类型,equals比较的值也是一样的 */ String s = "abc"; String ...原创 2019-05-14 14:12:00 · 132 阅读 · 0 评论 -
Java反射机制
反射是指在运行状态下,对于任意一个类,都能够知道这个类的所有属性和方法。对于任意一个对象,都能调用他的任意一个方法和属性,这种动态获取以及调用对象的方法功能,成为java语言的反射机制。创建Person类package com.etc.tes;public class Person { private int id; private String name; ...原创 2019-05-12 16:15:29 · 90 阅读 · 0 评论 -
throwable和Exception的区别
throwable和exception的区别:1、throwable是父类,exception是子类。2、throwable是根基,exception是从throwable派生出来的。3、throwable中包括exception(异常)和error(错误)。4、throwable用来定义所有可以作为异常被抛出来的类,exception专指程序本身可以处理的异常,一般性的异常。...原创 2019-05-30 07:56:22 · 17560 阅读 · 0 评论 -
http请求头header、请求体body、请求行介绍
HttpServletRequest对象代表客户端的请求,当客户端通过http协议请求访问服务器的时候,http请求头的所有信息都封装在这个对象中,通过这个对象,可以获取客户端请求的所有信息。http请求包含请求行/状态行、请求头、请求体。request如果是post才有请求体,get则没有请求体,直接跟在?后面,用&隔开。getHeader(String name)获取单个请求...原创 2019-06-09 09:47:54 · 142038 阅读 · 0 评论 -
对于属性, 注释org.springframework.web.bind.annotation.CrossOrigin缺少值
对于属性, 注释org.springframework.web.bind.annotation.CrossOrigin缺少值本来jdk用的1.7,出现这个错误。改为1.8就正常了原创 2019-06-10 18:40:23 · 948 阅读 · 0 评论 -
UTF-8的BOM是什么意思
BOM:byte order mark,定义字节顺序,因为网络传输中分为两种,大头和小头。uft-8不需要bom表明字节顺序,但可以用BOM来表示编码方式,windows就是采用bom来标记文本文件的编码方式的。bom是为utf-16和utf-32准备的,用于标记字节顺序。微软在utf-8中使用bom是因为这样可以把UTF-8和ASCII等编码区分开来,但这样的文件在windows之外的操作系...原创 2019-06-11 08:22:05 · 31183 阅读 · 3 评论 -
Socket网络编程DEMO
服务器端:package com.socket;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.net.ServerSocket;import java.net.Socke...原创 2018-10-11 17:22:59 · 227 阅读 · 0 评论 -
Java网络编程
【网络基础】java.net包中提供两种常见的网络协议的支持:1、TCP:传输控制协议,它保障了两个应用程序之间的可靠通讯,被称为TCP/IP。2、UDP:用户数据报协议,一种无连接的协议,提供了应用程序之间要发送的数据的数据包。OSI/RM也就是open system interconnection reference model 开放系统互连参考模型,这个模型把网络通讯分为7层...原创 2018-10-11 17:00:42 · 95 阅读 · 0 评论 -
Java异常处理机制
Java异常是java提供一种识别及响应异常的一致性机制。这样可以提供java的程序的健壮性。java异常用到的几个关键字:try:用于监听异常catch:捕获异常finally:finally语句块总是要被执行的throw:用于抛出异常throws:用于声明异常Throwable是所有异常或错误的超类,它有2个子类,Error和Exception,用于异常情况。Thr...原创 2018-09-26 16:48:43 · 156 阅读 · 0 评论 -
springMVC返回json数据,出现乱码
查找了很多,看到网上有一篇,直接添加一个配置就可以转载 2016-07-04 10:35:36 · 909 阅读 · 0 评论 -
mybatis如何使用延迟加载
"lazyLoadingEnabled" value="false"/> "aggressiveLazyLoading" value="true"/> lazyLoadingEnabled:true使用延迟加载,false禁用延迟加载。默认为trueaggressiveLazyLoading:true启用时,当延迟加原创 2016-07-04 11:16:37 · 476 阅读 · 0 评论 -
MyBatis:Parameter Maps collection does not contain value for
mybatis已经弃用parameterMap,注意看xml映射文件中,parameterType是否写成parameterMap原创 2016-07-06 14:56:52 · 493 阅读 · 0 评论 -
The method lists() of type IUserDaoImpl must override a superclass method
eclipse 修改项目的Java Compiler=>Compiler compliance level,更改jdk版本。原创 2016-06-21 09:26:34 · 3868 阅读 · 0 评论 -
eclipse插件下载集合
【svn插件在线安装】http://subclipse.tigris.org/update_1.6.xhttp://subclipse.tigris.org/update_1.8.x【maven插件在线安装】第一步:http://download.eclipse.org/releases/juno第二步:搜索maven选择第一个进行安装就可以了。原创 2017-01-23 11:59:07 · 502 阅读 · 0 评论 -
java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal res
通过BigDecimal的divide方法进行除法时当不整除,出现无限循环小数时,就会抛异常:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result. 解决的办法就是给divide方法设置精确的小数点,如:divide(xxxxx,2)原创 2017-08-18 08:31:21 · 435 阅读 · 0 评论 -
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/opencv/core/Core : Unsupporte
这是因为jdk版本和core包需要运行的jdk版本不一样,找到对应的版本,换掉就正常了。原创 2018-04-15 14:30:07 · 2210 阅读 · 0 评论 -
The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
解决步骤:1、右键项目-build path2、选择configure build path...3、选择 java build path4、Add Library –> server Runtime -> Click Next5、选择 Server runtime (我的是 Tomcat 7.0) –>完成...原创 2018-04-11 18:29:49 · 140 阅读 · 0 评论 -
Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web modules
1、找到项目根路径下\.settings\org.eclipse.wst.common.project.facet.core.xml2、把版本降低些原创 2018-08-29 10:05:35 · 228 阅读 · 0 评论 -
POJO和JavaBean有什么差异?
1、POJO:plain old java object,简单java对象,说明它不是一个特殊对象。一个POJO对象,说明它不应该受任何限制,一个pojo对象(类),不应该是extends继承某个类或者implements实现某些接口。它包含预定的标注,如@javax.ejb.Entity public class Baz{...................}2、JavaBean是一个可重...原创 2018-08-29 14:43:45 · 277 阅读 · 0 评论 -
微信消息回调URL,出现AES解密失败,是因为jdk的2个jar解密有长度限制导致
1、找个jdk目录下的/jre/lib/security,替换成长度的local_policy.jar和US_export_policy.jar对应JDK的版本2、Windows重启eclipse就可以了。Linux,要在/etc/profile添加这两个jar的路径,source profile就可以了export CLASSPATH=.:$JAVA_HOME/jre/lib/secur...原创 2018-09-12 11:26:15 · 2641 阅读 · 0 评论 -
javac和java命令
新建test.javapublic class test{ public static void main(String[] args){ System.out.println("test............"); } }dos进入到所在目录,执行javac test.java,javac是将java文件编译生成.class字节码文件。使用java命令可以执...原创 2018-09-23 16:55:49 · 363 阅读 · 0 评论 -
Java基本数据类型
java有两大数据类型,一种是内置数据类型,一种是引用数据类型1、byte 字节,长度8位,有符合的,以二进制补码表示的整数。取值区间 -2^7~2^7-1,byte的占用空间是int的四分之一2、short16位的、有符合的,以二进制补码表示的整数取值区间 -2^15~2^15-1,short是int占用空间的二分之一3、int32位的数据类型,有符号以二进制补码...原创 2018-09-25 15:20:02 · 110 阅读 · 0 评论 -
Java访问控制符public、protect、default、private
default (即缺省,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。 private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类) public : 对所有类可见。使用对象:类、接口、变量、方法 protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)...原创 2018-09-25 15:21:11 · 712 阅读 · 0 评论 -
Java的String、StringBuffer、StringBuilder比较
String是字符串常量,如果不断地对一个String对象进行修改,那么会不断地生成新的对象,然后将指针指向新的对象。所以对经常修改的变量,最好不要使用String,不然内存中无引用变量增多了,JVM的GC就要开始工作了,性能自然就慢了。StringBuffer性能比较好,如果是一个StringBuffer变量一直被修改,那么不会产生新的对象,而是在原来的对象上进行修改。StringBui...原创 2018-09-25 16:19:29 · 105 阅读 · 0 评论 -
Java FileInputStream和FileOutputStream的使用
package arithmetic;import java.io.FileInputStream;import java.io.FileOutputStream;public class FileIO { public static void main(String[] args) throws Exception { //b.txt里是12345 ...原创 2018-09-26 15:46:52 · 305 阅读 · 0 评论 -
Java FileReader和FileWriter
FileReader是从InputStreamReader继承而来,按字符流读取数据。FileWriter是从OutputStreamReader继承而来,按字符流写入数据。public static void main(String[] args) throws Exception { File file = new File("F:/cc.txt"); ...原创 2018-09-26 15:56:40 · 417 阅读 · 0 评论 -
The type org.junit.runners.BlockJUnit4ClassRunner cannot be resolved. It is indirectly referenced fr
The type org.junit.runners.BlockJUnit4ClassRunner cannot be resolved. It is indirectly referenced from required .class files程序的问题是项目中找不到org.junit.runners.BlockJUnit4ClassRunner,有两种可能,一是没有导入junit原创 2016-05-24 16:43:24 · 2221 阅读 · 0 评论