Java
编程之间
Are you self-aware, and are you proactive?
展开
-
在Spring中使用日志
原来一直使用spring mvc,spring框架是3.6.2.配置的是log4j的日志,使用slf4j的log4j结合的方式,最近开发一个新的项目,我搭建了spring boot1.3.6.RELEASE的框架,能使用集成log4j,但是确实有冲突的问题,一直报logback有冲突的信息:SLF4J: Class path contains multiple SLF4J bindings....原创 2020-04-08 21:28:49 · 5379 阅读 · 1 评论 -
Java字节码文件虚拟指令集简介
Java 虚拟机的指令由一个字节长度的、代表着某种特定操作含义的操作码(Opcode)以及跟随其后的零至多个代表此操作所需参数的操作数(Operands)所构成。虚拟机中许多指令并不包含操作数,只有一个操作码。如果忽略异常处理,那 Java 虚拟机的解释器使用下面这个伪代码的循环即可有效地工作:do{ 自动计算PC寄存器以及从PC寄存器的位置取出操作码; if(存在操作数)取出操作转载 2017-02-21 09:43:38 · 656 阅读 · 1 评论 -
深入理解JVM-虚拟机加载机制-类加载过程
本文是基于周志明的《深入理解Java虚拟机》 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行检验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。 从类被加载到虚拟机内存中开始,到卸载出内存为止,类的生命周期包括加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resol转载 2017-02-23 08:31:21 · 1423 阅读 · 0 评论 -
JAVA路径中空格问题
一、类路径TestURL().class.getResource("").getPath()或TestURL.class.getResource("").getFile()获得的路径,不能被FileReader()和FileWriter()直接应用。例如:String Path=this.getClass().getResource("/").toString String原创 2017-02-02 22:25:19 · 7887 阅读 · 0 评论 -
拆分多个字符串放入对应的容器程序代码
描述如下:若干个虚拟机以“2#1c#10G#1M"标识,现需要拆分每个字符串标识,按照#拆分,放到对应的容器中,代码如下:import java.util.ArrayList;import java.util.HashMap;import java.util.HashSet;import java.util.List;import java.util.Map;import原创 2017-02-04 08:31:19 · 925 阅读 · 0 评论 -
JDK源码
为方便查看jdk源码将1.7、1.8、1.9源码整合到maven项目:https://github.com/limm33/jdk-sourceGit下载:https://github.com/limm33/jdk-source.git原创 2018-02-05 13:47:35 · 10668 阅读 · 2 评论 -
Java JSON库Jackson 2.x变化
Jackson库是JSON Java库,用于在Java程序中解析JSON数据。Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。由于要转换原来的的web项目到maven项目,原项目中有ackson-all-1.9.10.jar,但是此jar包在中央仓库中并不存在所以对Jackson的jar包变化做了一个总结。 ...原创 2016-10-14 00:00:50 · 897 阅读 · 0 评论 -
Java中String的不变性理解
我们经常在Java里面提到String的不变性,下面就来说一下对于String的不变性的理解:可以参考以下程序:String str = "Hello"; System.out.println(str);//输出为Hello str.concat("World");//该方法是在原来的变量后面添加一个字符串然后变成新的字符串 System.out.pr原创 2017-02-10 08:31:15 · 2713 阅读 · 1 评论 -
在Eclipse中如何开启断言(Assert)
Eclipse中如何开启断言(Assert):1.Run -> Run Configurations -> Arguments页签 -> VM arguments文本框中加上断言开启的标志:-enableassertions 或者-ea 就可以了2.在myEclipse中,Windows -> Preferences ->Java ->Installed JREs ->点击原创 2017-02-17 15:56:52 · 2251 阅读 · 0 评论 -
Java-大数据常用的开发工具
在许多情况下,使用SQL数据库用于存储/检索数据就足够了。但在另一些情况下,要么SQL数据库规模不够,要么还有更好的工具。这一切都取决于使用情况。现在让我们来讨论一下存储/处理数据用的不同的非SQL工具——NoSQL数据库,内存缓存,全文搜索引擎,实时流,图形数据库,等等。MongoDB—— 一种流行的,跨平台的面向文档的数据库。Elasticsea原创 2016-03-23 14:36:54 · 945 阅读 · 0 评论 -
tomcat下jndi的三种配置方式
jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。命名服务将名称和对象联系起来,使得我们可以用名称访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。 tomcat配置jndi有全局配置和局部配置。大致的有以下三种配置方式:原创 2016-05-19 11:12:59 · 3371 阅读 · 0 评论 -
tomcat中配置解决中文乱码
一、在TOMCAT自带的例子中(/webapps/examples/WEB-INF/classes/filters)找到2个文件RequestDumperFilter.java,SetCharacterEncodingFilter.java,加入到工程文件中去。二、配置 server.xml。 URIEncoding="UTF-8" /> URIEncoding="UTF-8"/>原创 2016-05-30 20:00:06 · 8311 阅读 · 0 评论 -
jar打包命令详解
:如何把 java 程序编译成 .exe 文件。通常回答只有两种,一种是说,制作一个可执行的 JAR 文件包,就可以像.chm 文档一样双击运行了;而另一种回答,则是使用 JET 来进行编译。但是 JET 是要用钱买的,而且,据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣。所以,使用制作可执行 JAR 文件包的方法就是最佳选择了,何况它还能保持 Java 的跨平台原创 2016-07-18 06:40:31 · 3371 阅读 · 0 评论 -
解决中文乱码
1 Mysql数据库在window中,dos界面输入输出正常但是现实表中的数据为乱码。这是因为在window系统中,默认的编码是中文,而写入的时候是UTF-8,此时只需要设置set names gb2312就可以了。2 Mysql数据库中的中文问题:解决Mysql数据库中文问题主要在JDBC驱动的URL上添加:jdbc:mysql://localhost/原创 2016-09-01 18:26:46 · 3287 阅读 · 0 评论 -
Java中包、类、方法、属性、常量的命名规则
1:包(package):用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则:将公司域名反转作为包名。比如www.baidu.com 对于包名:每个字母都需要小写。比如:com.baidu.test;该包下的Test类的全名是:com.baidu.Test.java 。 如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认包里面(def原创 2016-10-08 16:47:31 · 28534 阅读 · 0 评论 -
JNA的使用
一、了解JNAJNA(Java Native Access )提供一组Java工具类用于在运行期动态访问系统本地库(native library:如Window的dll)而不需要编写任何Native/JNI代码。开发人员只要在一个java接口中描述目标native library的函数与结构,JNA将自动实现Java接口到native function的映射。二、JNA的优点原创 2016-03-16 22:26:54 · 3014 阅读 · 1 评论