
JAVA基础
hjm4702192
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
若依 验证码出不来 Fontconfig head is null, check your fonts or fonts configuration
是因为使用的OenJDK不支持awt包下的字体。安装FontConfig组件即可。原创 2023-11-09 21:15:34 · 3548 阅读 · 0 评论 -
java 判断是否是周末
package untitled7; import java.util.Date; import java.text.SimpleDateFormat; import java.util.Calendar; import java.text.DateFormat; public class test {转载 2014-06-23 16:54:21 · 4378 阅读 · 0 评论 -
java计算时间差
现在是2004-03-26 13:31:40 过去是:2004-01-02 11:30:24要获得两个日期差,差的形式为:XX天XX小时XX分XX秒方法一:DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");try{ Date d1 = df.parse("2004-03-26 13:31:40");转载 2014-03-31 17:32:05 · 961 阅读 · 0 评论 -
java中两个字符串如何比较大小
有两个日期 如20131011,20131030,类型为String,如何比较出20131030大于20131011,求java代码有三种方法实现第一种直接用字符串类的compareTo方法:123 String t1="20131011"; String t2="20131030"; int result = t1.compareTo(t2);第二种是把这个日期字符串转转载 2014-03-28 16:22:53 · 10905 阅读 · 0 评论 -
java Serializable 生成随机序列
如果你implements 了 Serializable接口 但是没写 UID,eclipse会在你的类名边上有一个警告,你点击一下,有一个选项自动生成 UID,所以请用eclipse写java代码原创 2014-02-27 10:12:51 · 2719 阅读 · 0 评论 -
什么是md5盐值
简单说就是为了使相同的密码拥有不同的hash值的一种手段 就是盐化MD5自身是不可逆的 但是目前网路上有很多数据库支持反查询如果用户密码数据库不小心被泄露 黑客就可以通过反查询方式获得用户密码或者对于数据库中出现频率较高的hash码(即很多人使用的)进行暴力破解(因为它通常都是弱口令)盐值就是在密码hash过程中添加的额外的随机值比如我的id是癫ω倒④ゞ 密码是123456 存在数据原创 2012-10-22 18:51:30 · 2274 阅读 · 1 评论 -
java compiler level does not match the version of the installed java project facet
java compiler level does not match the version of the installed java project facet错误的解决因工作的关系,Eclipse开发的Java项目拷来拷去,有时候会报一个很奇怪的错误。明明源码一模一样,为什么项目复制到另一台机器上,就会报“java compiler level does not match th原创 2013-03-27 10:58:57 · 871 阅读 · 0 评论 -
[Java]读取文件方法大全
public class ReadFromFile { public static void readFileByBytes(String fileName) { File file = new File(fileName); InputStream in = null; try { System原创 2012-12-11 16:21:08 · 582 阅读 · 0 评论 -
java获得CPU使用率,系统内存,虚拟…
程序计算时间:longstartTime=System.currentTimeMillis(); //获取开始时间。。。。。。。。。。。。long endTime=System.currentTimeMillis(); //获取结束时间System.out.println("程序运行时间: "+(endTime-startTime)+"ms(毫秒)");原创 2012-12-11 16:20:38 · 707 阅读 · 0 评论 -
如何保护Java程序 防止Java反编译
Java是一种跨平台的、解释型语言。Java 源代码编译中间“字节码”存储于class文件中。Class文件是一种字节码形式的中间代码,该字节码中包括了很多源代码的信息,例如变量名、方法名等。因此,Java中间代码的反编译就变得非常容易。目前市场上有许多免费的、商用的反编译软件,都能够生成高质量的反编译后的源代码。所以,对开发人员来说,如何保护Java程序就变成了一个非常重要的挑战。本文首先讨论了原创 2012-11-09 09:25:08 · 1133 阅读 · 0 评论 -
JAVA 取系统当前日期 少8个小时
Date now = new Date(); DateFormat data = newjava.text.SimpleDateFormat("yyyyMMddHHmmss"); TimeZone timeZoneChina =TimeZone.getTimeZone("Asia/Shanghai");//获取中国的时区原创 2012-12-11 16:20:33 · 807 阅读 · 0 评论 -
JAVA Iterator 详解 代码
Iterator接口 1。所有实现了Collection接口的容器类都有一个Iterator方法用以返回一个实现了Iterator接口的对象 2.Iterator对象称为迭代器,用以方便的操作实现对象内数据的遍历 3。Iterator接口定义以下几个方法: boolen hasNext(); //判断游标右边是否还有元素 object next()原创 2013-03-20 10:33:12 · 1639 阅读 · 0 评论 -
java 字符串操作大全2 split 详解
Java代码 String s2="this is a test";String sarray[]=s2.split("/s");System.out.println("sarray.length="+sarray.length);这个输出是什么还是编译出错?我想那个split方法中的参数要是"s"的话,输出一定是4了,就是将原来字符串分成了数组{"thi","原创 2013-02-03 13:55:37 · 2590 阅读 · 0 评论 -
java7 新特性 总结版
Java7语法新特性:前言,这是大部分的特性,但还有一些没有写进去,比如多核 并行计算的支持加强 fork join 框架;这方面并没有真正写过和了解。也就不写进来了。1. switch中增加对String类型的支持。Java代码 public String generate(String name, String gender) { String title = ""原创 2014-06-11 17:40:31 · 6260 阅读 · 1 评论 -
linux配置java环境变量 转过几个,这个最详细和靠谱
一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录,之后会在当前目录下生成一个jdk1.6.0_14目录二. 需要配置的环境变量 1. PATH环境变量。作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把 jdk安装目录下的bin目录增加到现有的PATH变量中,bi原创 2015-05-19 13:52:10 · 2469 阅读 · 0 评论 -
Java多线程之Lock的使用
import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.Re转载 2016-04-08 16:48:49 · 1956 阅读 · 0 评论 -
java 判断文件是否存在 按行读取 自己的修改版 测试通过
首先,这样的代码这十多年写过不少次了,但好像每次写的都不太一样。以前一直都流行按字节读取。每次都从网上找来差不多的,然后用。但网上有不少按行读取再写出的代码,但我在使用之后发现读取时总会有些莫名其妙的问题,比如少读,重读。有不少网上代码直接使用了while ((tempString = reader.readLine())!= null) ,但这样会有少读的情况发生。比如第一行。我不知道大家会不会...原创 2018-08-02 18:25:45 · 1344 阅读 · 0 评论 -
Spring Boot 启动后自动运行
有时候我们需要在应用启动或者重启后做一些工作,比如删除一些临时文件或者Redis中的缓存,这在没有使用Spring Boot之前,在Spring框架下是通过ApplicationListener监听器来实现的,在Spring Boot下也有一些办法,可以通过使用CommandLineRunner和ApplicationRunner接口来实现。在这两个接口中都有run()方法,在Spring Boo转载 2018-01-09 14:46:06 · 10044 阅读 · 1 评论 -
Java中Cloneable接口
预备知识为了理解java的clone,有必要先温习以下的知识。java的类型,java的类型分为两大类,一类为primitive,如int,另一类为引用类型,如String,Object等等。java引用类型的存储,java的引用类型都是存储在堆上的。Java代码 public class B { int a; String b; public B(int a, String转载 2018-01-05 21:22:54 · 430 阅读 · 0 评论 -
Java追加文件内容的三种方法
import java.io.BufferedWriter;import java.io.File;import java.io.FileOutputStream;import java.io.FileWriter;import java.io.IOException;import java.io.OutputStreamWriter;import java.io.RandomAccessFile转载 2018-01-04 20:49:20 · 505 阅读 · 0 评论 -
java json map
package com.zkn.newlearn.json;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import java.util.Map;/** * JSON字符串自动转换 * Created by zkn on 2016/8/22. */public class JsonToMapTest转载 2018-01-04 09:42:00 · 399 阅读 · 0 评论 -
Java InputStream、String、File相互转化
String --> InputStreamByteArrayInputStream stream = new ByteArrayInputStream(str.getBytes());InputStream --> StringString inputStream2String(InputStream is){ BufferedReader in = new BufferedRead转载 2017-12-19 11:05:31 · 1850 阅读 · 0 评论 -
Spring MVC restful 路径小数点问题
之前有个小伙伴问了我一个问题,就是在使用Spring MVC的时候。当使用www.xxx.com/abc/1.11这个路径。然后在Controller使用@PathVariable注解来接收这个值的时候得到的却是1,遇到这种情况如何解决。如果没有遇到过这种问题那么我们应该如何解决它呢?首先要解决这个问题我们先来看一下Spring MVC的原理图。如下:在Spring MVC初始化的时候会把@Req转载 2017-12-21 15:34:20 · 782 阅读 · 0 评论 -
java float 详解
数据类型关键字内置类内存占用字节数可存储的取值范围默认值布尔型booleanBoolean1字节true,falsefalse字符型charCharacter2字节16位Unicode字符,可容纳各国字符集。Unicode范围为‘\u0000’到‘ufff’。整数范围是0~65535。例如,65代表‘A’,97代表‘a’‘\u0000’Null字节型byteByte1字节-128~127(-27~转载 2017-12-21 14:24:14 · 33635 阅读 · 2 评论 -
linux环境下 java nio 文件名 乱码 utf-8 gbk
这个事情一下困扰了好几天,今天终于解决了。做个记录事情的原因为在linux下环境下需要用流输出一个文件,其实这是是件很简单的事情。但麻烦的是输出的文件中文件内容的确被编码成了GBK,可是文件名却一直是utf-8。百思不得其解。也初步调过linux的字符集,确认了的确是GB2312.可是问题还是不能被解决。回头还是以为程序的问题,把短的可怜的几段代码,反复测试,用byte【】把文件名都进行了GBK编原创 2017-08-24 11:37:54 · 2842 阅读 · 1 评论 -
关于ANT指定系统工程编译JDK的设置
直接修改ANT的运行文件:ant.bat ,设置JAVA_HOME,这样所有的ANT都使用设定的JDK也是一种方法; 我以前做Jetty也是这么做的,挺方便; destdir="${build}" fork="yes" executable="/opt/java/jdk1.1/bin/javac" comp转载 2017-08-15 16:34:05 · 1853 阅读 · 0 评论 -
(透彻)java String.getBytes()编码问题
String.getBytes()的问题String 的getBytes()方法是得到一个字串的字节数组,这是众所周知的。但特别要注意的是,本方法将返回该操作系统默认的编码格式的字节数组。如果你在使 用这个方法时不考虑到这一点,你会发现在一个平台上运行良好的系统,放到另外一台机器后会产生意想不到的问题。比如下面的程序:class TestCharset { public static void m转载 2017-08-08 11:07:01 · 1515 阅读 · 0 评论 -
java http post tomcat解除 长度限制
1. Get方法长度限制Http Get方法提交的数据大小长度并没有限制,HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。如:IE对URL长度的限制是2083字节(2K+35)。下面就是对各种浏览器和服务器的最大处理能力做一些说明.Microsoft Internet Explorer (Browser)IE浏览器对URL的最大限制为2083个字符,如果超原创 2016-08-19 14:56:42 · 11483 阅读 · 0 评论 -
JAVA JSON 数据 大全
在网页中想后台传递多个数据时,有时数据还是多个动态列表,数据很复杂时,JavaScript程序员喜欢把他们作为json串进行处理,后台收到后需要对json字符串进行解析,幸好有JSON-lib,这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean。下载地址:http://json-lib.sourceforge.net/原创 2013-02-02 17:43:22 · 1290 阅读 · 0 评论 -
java 字符串操作大全1
1、length() 字符串的长度 例:char chars[]={'a','b'.'c'}; String s=new String(chars); int len=s.length();2、charAt() 截取一个字符 例:char ch; ch="abc".charAt(1); 返回'b'3、getChars() 截取多个字符原创 2013-02-01 18:00:35 · 972 阅读 · 0 评论 -
详解 JAVA 创建对象 NEW
假设我们在函数中写了如下这个简单的语句: StringBuffer str = new StringBuffer("Hello world"); 别看这个语句简单,其实包含了如下三个步骤: 首先,newStringBuffer("Helloworld")在堆里申请了一坨内存,把创建好的StringBuffer对象放进去。 其次,StringBufferstr声明了一个指针。原创 2012-12-11 16:19:50 · 790 阅读 · 0 评论 -
类型转换与强制转换
自动转换:举一个例子:把一个小的东西放到一个大的盒子里,是件非常容易的事,不用做任何改变,在这里理解成自动转换。若把一个大的东西放到一个小的盒子,那就要对这个东西做些舍弃,加工一下,强制把它放进小盒子里,可理解成强制类型转换。byte->short->int->long->float->double 如果要把一个大类型塞到小类型中去,就要进行强制转换。 类型转换发生的时机:1)赋值原创 2012-12-11 16:19:43 · 873 阅读 · 0 评论 -
数据类型、变量、数组类
感言:JAVA是一种强类型语言,JAVA的安全性和健状有部分来源与此,JAVA区分大小写。定义数据的时候可以有两种写法。(先声明变量)double num11; (不预先定义,直接上,学名叫“动态初始化”)floatnum = (float)1.3666222222222222222222222;也可以这样float num =1.3666222222222222222222222f;原创 2012-12-11 16:19:41 · 736 阅读 · 0 评论 -
JAVA synchronized 线程经典 生产者消费者 两个完全不同的实现的方式
package sell_ticket;public class ThreadTicket { public static void main(String[] args) { MyThread m = new MyThread(); Thread t1 = new Thread(m);原创 2012-08-23 16:36:37 · 1363 阅读 · 0 评论 -
java 线程 stop sleep interruptedException
stop方法是过时,不被推荐的。因为它直接杀死了进程,比如线程进在写,或是在打开一个资源,后果严重!除非不得已,比如线程无响应。、 run方法结束,就代表了线程被结束!! interruptedException是一个抛异常模式,虽然它也不太好。但有一定特点。 public class testthread{ public static void main(){原创 2012-08-20 15:35:41 · 1112 阅读 · 0 评论 -
java 线程同步 synchronized
Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 二、然而,当一个线程访问object的一个synchronize原创 2012-08-20 15:04:46 · 1066 阅读 · 0 评论 -
详解 JAVA 适配模式 和 接口适配器
JAVA适配模式意图将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。(GoF)场景相信很多人都知道什么是显卡,也有很多人知道显卡的本名——图形适配器。恩,是的,正好这回说说Apater模式,就拿显卡来例子来分析一下Adapter模式。我们知道显示器(Client)是用来显示图形的,它是不能显示数原创 2012-08-20 16:22:16 · 1305 阅读 · 0 评论 -
java 正常的线程停止操作思想
publicclass ttt{ runnnr = new runn(); threah t =new threah(r); t.start; .......................} classrunnn implements Runnable{ private booleanflag = ture; public voidru原创 2012-08-20 15:00:17 · 674 阅读 · 0 评论 -
JAVA 线程 开启线程 一个类里只开一个线程的简单办法
进程和线程一样,可以多个。进程是静态的,一个进程里可以有多个线程。 起动线程有两个方法:一个是接口RUNABLE,一个是继承THERAD public class testthread{ public static void main(){ Runner1 r = new Runner1(); Thread t = new Thread(r); t.star原创 2012-08-20 15:36:50 · 2706 阅读 · 0 评论 -
JAVA 线程 yield
yield,可以使线程放手一下CPU。然后再抓!放一下手,就可以让后面的线程先上了CPU。例子:public class TestYield { public static void main(String[] args) { MyThread3 t1= new MyThread3("t1"); MyThread3 t2= new MyThread3("t2");原创 2012-08-20 15:34:49 · 809 阅读 · 0 评论