Java
ljheee
如果对你有收获,欢迎关注公众号 架构道与术(ToBeArchitecturer) ,获得最新干货。https://url.cn/5wpXFoL
展开
-
Java注解
注解 类似于批注,是对源代码加入描述;JDK5.0引入,不同于注释(注释在编译时被忽略)。 注释,就是说明。Java的注释,可以附加在package(包)、class(类)、method(成员变量) 和field (成员变量)等上面,相当于给它们添加了额外的辅助信息。其原理是通过反射机制/反省。通过反射可以获得类、对象的信息(元数据)。常见的Java内建注原创 2016-03-15 12:13:35 · 645 阅读 · 0 评论 -
log4j2实战--将MyBatis执行SQL记录到文件,按天分存
需求:将Mybatis的执行SQL,按天存日志文件。项目使用的是log4j2。原先项目,都是将所有日志通通打印到控制台。现在需要将系统接收用户请求后,Mybatis的执行SQL,按天存日志文件。当时在想:把Mybatis的SQL打印到控制台容易实现,日志按Level级别 按天存文件也容易实现,但如何单独把Mybatis的SQL,按天存日志文件呢?于是找了MyBatis日志配置说明...原创 2018-09-04 14:35:05 · 3335 阅读 · 14 评论 -
单例模式——线程安全的两种实现
单例模式——线程安全的两种实现一、双重检查锁定(double-checked locking)public class SingleTon { // 静态实例变量加上volatile private static volatile SingleTon instance; // 私有化构造函数 private SingleTon() {} // 双重检查锁原创 2018-01-18 20:46:57 · 7169 阅读 · 2 评论 -
Java异常处理机制(经典)
异常处理已经成为衡量一门语言是否成熟的标准之一。目前主流的编程语言如,C++、C#、Java都提供了异常处理机制。增加异常处理机制使程序有更好的兼容性、健壮性。 异常处理是程序设计中一个非常重要的方面,也是程序设计的一大难点,从C开始,也许已用if...else...来控制异常了,也许是自发的,然而这种控制异常痛苦,同一个异常或者错误如果多个地方出现,都要做相同处理,感觉相当麻原创 2016-03-21 00:07:38 · 1300 阅读 · 0 评论 -
There is a cycle in the hierarchy
今天用JSONObject写Android端和服务器传输Json数据,遇到异常“There is a cycle in the hierarchy”。意思是出现了死循环。大部分都是Model之间有循环包含关系。所以大部分可以通过下面的设置解决: JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setCycl原创 2016-12-30 21:16:25 · 985 阅读 · 0 评论 -
使用FileUtils实现一个简易文件下载器
使用FileUtils实现一个简易文件选择器今天使用使用FileUtils实现一个简易文件选择器 做了一个简易的 文件下载器,功能很简单,提供目标文件url输入框,和下载后文件保存的磁盘路径及文件名,点击下载即可完成。主要是—--使用commons-io-2.5.jar,这是Apache的一个开源项目,是对Java IO的增强版,里面封装了很多文件操作、目录操作实用的方法。核心类F原创 2016-06-16 20:45:35 · 3297 阅读 · 0 评论 -
JDK1.8 详解
Java 8平台集合生产力、易用性、多语种编程、更高安全性和稳定性等特色。JDK8的特性已经基本准备就绪,虽然一些特性还不是特别完善,但开发人员已经开始庆祝这一里程碑事件了。JDK8开发者计划在上月底发布M7版本,按照原计划,这应该是一个功能完备的版本,包含完整的22个JEP(Java EnhancementProposals,Java增强建议)。目前大部分特性已经完成,最重要的是La原创 2016-06-30 22:10:02 · 4693 阅读 · 0 评论 -
原子性、内存可见性和重排序——重新认识synchronized和volatile
原子性、内存可见性和重排序——重新认识synchronized和volatile一、原子性原子性操作指相应的操作是单一不可分割的操作。例如,对int变量count执行count++d操作就不是原子性操作。因为count++实际上可以分解为3个操作:(1)读取变量count的当前值;(2)拿count的当前值和1做加法运算;(3)将加完后的值赋给count变量。在多线程环境中原创 2016-11-13 22:07:38 · 3191 阅读 · 0 评论 -
Java调用批处理或可执行文件和Runtime、Process类实现Java版进程管理器
Java调用批处理或可执行文件 用Java编写应用时,有时需要在程序中调用另一个现成的可执行程序或系统命令,这时可以通过组合使用Java提供的Runtime类和Process类的方法实现。下面是一种比较典型的程序模式: Process process = Runtime.getRuntime().exec(".\\p.exe"); process.waitfor( );原创 2016-07-29 18:31:55 · 4811 阅读 · 0 评论 -
实现JAVA程序编程--->转成.exe格式
我们使用IDE或javac指令可以实现将Java工程导出为jar文件。想要实现:这个程序在任何windows操作系统下,没有jdk环境的电脑上运行,该如何做呢?。JAR 文件包JAR 文件就是 Java Archive File,Java归档文件,它的应用是与 Java 息息相关的,是 Java 的一种文档格式。JAR 文件非常类似 ZIP 文件——准确的说,它是以zip为基础原创 2016-05-29 20:57:39 · 3347 阅读 · 0 评论 -
125条常见的java面试、笔试题大汇总
1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始原创 2016-03-26 21:01:04 · 1786 阅读 · 0 评论 -
Your stream was neither an OLE2 stream, nor an OOXML stream
最近使用Apache poi 做excel导出的功能,遇到了如下问题:Your stream was neither an OLE2 stream, nor an OOXML stream起初对比其他的web工程,没有发现如何解决。最后找到抛出此异常的源码:org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFact...原创 2018-10-25 22:05:24 · 17089 阅读 · 5 评论