Java
文章平均质量分 53
一位程序员小生的奋斗史
我的地盘我做主
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
枚举注解校验字段
枚举实现校验逻辑1:枚举注解类import javax.validation.Constraint;import javax.validation.Payload;import java.lang.annotation.Documented;import java.lang.annotation.Retention;import java.lang.annotation.Target;import static java.lang.annotation.ElementType.*;impo.原创 2020-11-04 18:50:07 · 1093 阅读 · 0 评论 -
Java虚拟机—垃圾回收算法(整理版)
1.概述 由于垃圾收集算法的实现涉及大量的程序细节。因此本节不打算过多地讨论算法的实现,只是介绍几种算法的思想及其发展过程。主要涉及的算法有标记-清除算法、复制算法、标记-整理算法、分代收集算法。2.标记-清除算法 最基础的收集算法是”标记-清除“(Mark-Sweep)算法,如同它的名字一样,算法分为”标记“和”清除两个阶段“:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。之所以说它是最基础的收集算法,是因为后续的收集算法都是基于这种思路并对其不足进行改进而得...转载 2020-06-29 10:31:44 · 596 阅读 · 0 评论 -
主题:java并发编程-Executor框架
http://www.iteye.com/topic/366591转载 2017-05-04 16:52:11 · 408 阅读 · 0 评论 -
分布式计算开源框架Hadoop入门实践
http://blog.youkuaiyun.com/cenwenchu79/article/details/2847529转载 2017-05-04 16:54:49 · 423 阅读 · 0 评论 -
BigDecimal的应用
import java.math.BigDecimal;public class DoubleDemo {public static void main(String[] args) {System.out.println("0.05+0.01=" + (0.05 + 0.01));System.out.println("1.0-0.42=" + (1.0 - 0.原创 2017-05-05 23:24:18 · 378 阅读 · 0 评论 -
Runtime的操作一个记事本的例子
import java.io.IOException;public class RuntimeDemo3 {public static void main(String[] args) throws IOException, InterruptedException {Runtime runtime = Runtime.getRuntime();//执行一个运行原创 2017-05-07 18:27:05 · 776 阅读 · 0 评论 -
Timer定时器的使用
import java.text.SimpleDateFormat;import java.util.Date;import java.util.TimerTask;public class MyTask extends TimerTask{@Overridepublic void run() {SimpleDateFormat sim=new Simple原创 2017-05-07 20:04:37 · 441 阅读 · 0 评论 -
对日期的相关操作
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class Util { static SimpleDateFormat sdf = new Simpl原创 2017-04-28 11:56:32 · 398 阅读 · 0 评论 -
去除字符串前后的双引号
//去除字符串前后的双引号private String SubString(String fdId) {if(fdId.indexOf("\"")==0){fdId = fdId.substring(1,fdId.length()); //去掉第一个 "} if(fdId.lastIndexOf("\"")==(fdId.length()-1)){} fdId =原创 2017-08-25 16:16:13 · 10497 阅读 · 0 评论 -
Java常用方法总结
1://获取当前方法的名称String methodName = Thread.currentThread().getStackTrace()[1].getMethodName();2:字符串和整形数据之间 的想换转换 String a = String.valueOf(2); int i = Integer.parseInt(a);3:文件末尾添加数据原创 2017-09-11 00:40:53 · 436 阅读 · 0 评论 -
有关并发和并行的问题解析
首先并发和并行是操作系统中的相关名词,“并行”是指无论从微观还是宏观,二者都是一起执行的,就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑,即双发执行中没有相关的影响而“并发”在微观上不是同时执行的,CPU只是把时间分成若干段,使多个线程快速交替的执行,从宏观外来看,好像是这些线程都在执行,这就好像两个人用同一把铁锨,轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点原创 2017-09-30 14:24:29 · 481 阅读 · 0 评论 -
有关Java常用的几个类方法的使用
String osName = System.getProperty("os.name");//获取系统的名称 String user = System.getProperty("user.name");//获取系统的用户名 System.out.println("当前操作系统是:" + osName); System.out.println("当前用户是:" + user)原创 2017-09-30 14:48:21 · 350 阅读 · 0 评论 -
SpringBoot配置文件
spring: application: name: jiuqian-qph jackson: date-format: yyyy-MM-dd hh:mm:ss# 使用jsp mvc: view: prefix: /WEB-INF/jsp/ suffix: .jsp server: p原创 2018-02-05 17:45:33 · 361 阅读 · 0 评论 -
枚举创建单例模式和懒汉式加锁单例模式分析与比较
枚举创建单例的模式的优势比较:方式优点缺点饿汉式线程安全, 调用效率高不能延迟加载懒汉式线程安全, 可以延迟加载调用效率不高双重检测锁线程安全, 调用效率高, 可以延迟加载-静态内部类线程安全, 调用效率高, 可以延迟加载-枚举线程安全, 调用效率高不能延迟加载枚举创建单例模式的案例如下:1:创建一个类实现对象的调用public class Resource { private String na...原创 2018-04-20 11:13:48 · 680 阅读 · 0 评论 -
发送一个http请求
public class CommonUtil { // 实现信息传递到接口地址中 public static String postDataToMingYuan(String url, String json) { OutputStreamWriter out = null; StringBuilder sTotalString = new StringBuilder(); try { ...原创 2018-05-09 09:48:14 · 512 阅读 · 0 评论 -
Servlet调用返回信息以及传递json
servlet接收json以及返回json方法一:package com.test;import java.io.BufferedReader;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.Htt...原创 2018-05-25 00:12:21 · 2836 阅读 · 0 评论 -
System的identityHashCode()
//对象的identityHashCode()相同,一定是相等的对象public class IdentityHashCodeDemo {public static void main(String[] args) {String str1 = new String("Hello World");String str2 = new String("Hello World原创 2017-05-04 00:07:48 · 1124 阅读 · 0 评论 -
System获取当前系统时间
public class SystemGetTimeDemo {public static void main(String[] args) throws InterruptedException {//获取当前系统时间与UTC1970年1月1日午夜时间的差long startTime = System.currentTimeMillis();;//此为毫秒为单位Threa原创 2017-05-03 23:57:13 · 2995 阅读 · 1 评论 -
Java异常try里面有return,finally代码会执行吗
try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后? 肯定会执行。finally{}块的代码只有在try{}块中包含遇到System.exit(0);之类的导致Java虚拟机直接退出的语句才会不执行。当程序执行try{}遇到return时,程序会先执行return语句,但并不会立即返回——也就是把r原创 2016-10-28 11:00:11 · 11536 阅读 · 3 评论 -
线程的同步和异步有何异同
如果有一个资源需要被一个或多个线程共享,这个资源就变成了“竞争”资源,此时多条线程必须按某种既定的规则、依次访问、修改这个“竞争”资源,当一条线程正在访问、修改该“竞争”资源时,其他线程不能同时修改这份“竞争”资源,这就是同步处理。对于一个银行账户,如果有多个线程试图去访问这个账户时,如果不对多个线程进行同步控制,有可能账户余额只有1000块,但多个线程都试图取款800块时,这些线程同时判断余原创 2016-10-28 11:12:10 · 693 阅读 · 0 评论 -
Java语言如何进行异常处理,关键字:throws、throw、try、catch、finally分别代表什么意义?在try块中可以抛出异常吗?
try块表示程序正常的业务执行代码。如果程序在执行try块的代码时出现了“非预期”情况,JVM将会生成一个异常对象,这个异常对象将会被后面相应的catch块捕获。catch块表示一个异常捕获块。当程序执行try块引发异常时,这个异常对象将会被后面相应的catch块捕获。throw用于手动地抛出异常对象。throw后面需要一个异常对象。throws用于在方法签名中声明抛出一个或多个异常类原创 2016-10-28 11:07:27 · 19002 阅读 · 2 评论 -
运行时异常(不需要捕捉)与一般异常有何异同(需要捕捉)
Checked异常体现了Java的设计哲学:没有完善错误处理的代码根本就不会被执行!对于Checked异常的处理方式有两种:A.当前方法明确知道如何处理该异常,程序应该使用try...catch块来捕获该异常,然后在对应的catch块中修补该异常。B.当前方法不知道如何处理这种异常,应该在定义该方法时声明抛出该异常。但Runtime异常则更加灵活,Runtime异常无须显式声明抛出原创 2016-10-28 11:04:57 · 5444 阅读 · 0 评论 -
线程中的sleep和wait的区别
sleep指线程被调用时,占着CPU不工作,形象地说明为“占着CPU睡觉”(霸道的占用系统资源,独享系统资源不释放),此时,系统的CPU部分资源被占用,其他线程无法进入,会增加时间限制。wait指线程处于进入等待状态,形象地说明为“等待使用CPU”(释放系统资源给其他的线程使用),此时线程不占用任何资源,不增加时间限制。所以sleep(500L)意思为:占用CPU,线程休眠500毫秒wai原创 2016-10-28 15:17:20 · 977 阅读 · 0 评论 -
final, finally, finalize的区别
final是一个修饰符,它可以修改类、方法、变量,final修饰类时表明这个类不可以被继承。final修饰方法时表明这个方法不可以被其子类重写。final修饰变量时可分为局部变量、实例变量和静态变量,当final修饰局部变量时,该局部变量可以被一次赋值,以后该变量的值不能发生该变量;当final修饰实例变量时,实例变量必须由程序在构造器、初始化块、定义时这3个位置的其中之一指定初始值;原创 2016-10-28 11:02:12 · 485 阅读 · 1 评论 -
怎么实现对List集合中数组的遍历
思路1:集合嵌套数据foreach循环遍历2:实现对遍历集合的数组的遍历 //创建一个集合对象实现对数组的存放 List<String[]> arr=new LinkedList<String[]>(); String[] aa=new String[]{"上海","广州","北京"}; arr.add(a...原创 2016-11-01 17:06:32 · 8486 阅读 · 0 评论 -
java命令执行jar包的方式
大家都知道一个java应用项目可以打包成一个jar,当然你必须指定一个拥有main函数的main class作为你这个jar包的程序入口。 具体的方法是修改jar包内目录META-INF下的MANIFEST.MF文件。 比如有个叫做test.jar的jar包,里面有一个拥有main函数的main class:test.someClassName我们就只要在MANIFEST.MF转载 2016-12-07 13:51:20 · 414 阅读 · 0 评论 -
eclipse中注释常用的方法
设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后展开Comments节点就是所有需设置注释的元素啦。现就每一个元素逐一介绍:文件(Files)注释标签: /** * @Title: ${file_name} * @Package ${package_name} * @Description转载 2017-01-04 15:25:35 · 767 阅读 · 0 评论 -
Java 集合List Set Map 循环的遍历 EnumMap集合的操作
1:List集合遍历的方式(ArrayList为例) 1.1 实体类 public class User { private String username; private String address; private int age;public User() { super();}public User(String username原创 2017-02-05 15:20:28 · 863 阅读 · 0 评论 -
JDBC2.0批处理数据
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;public class JDBC20BatchDemo {// 定义MySQL的数据库驱动程序public static final String DBDRIVER = "com.mysq原创 2017-04-28 14:09:44 · 480 阅读 · 0 评论 -
Java枚举常量的使用
public enum SeasonEnum { spring(1,"春天"), summer(2,"夏天"), aut(3,"秋天"), win(4,"冬天"), ; private int type; private String tag; AccountEnum(int type, String原创 2017-04-18 22:58:38 · 889 阅读 · 0 评论 -
Scanner实现对文件的操作
import java.io.File;import java.io.FileNotFoundException;import java.util.Scanner;/** * 实现一个对文件操作 * @author caowh * E-mail: 458584881@qq.com * @date 创建时间:2017年5月3日 下午11:26:23 */原创 2017-05-03 23:34:54 · 413 阅读 · 0 评论 -
System的操作类
import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.util.Map;import java.util.Properties;public class System原创 2017-05-03 23:47:04 · 358 阅读 · 0 评论 -
RMI
RMI(即Remote Method Invoke 远程方法调用)。在Java中,只要一个类extends了java.rmi.Remote接口,即可成为存在于服务器端的远程对象,供客户端访问并提供一定的服务。JavaDoc描述:Remote 接口用于标识其方法可以从非本地虚拟机上调用的接口。任何远程对象都必须直接或间接实现此接口。只有在“远程接口”(扩展 java.rmi.Remote 的接口)中转载 2016-10-28 10:54:53 · 367 阅读 · 0 评论
分享