Java
文章平均质量分 74
Roger6650
这个作者很懒,什么都没留下…
展开
-
PowerDesigner 模型类型介绍
PowerDesigner 主要图形模型介绍原创 2022-12-14 10:22:59 · 1008 阅读 · 1 评论 -
Java 字符串格式化成固定长度的字符串
String name = "Li";name = String.format("%-12s", name);System.out.println("The String Start is:" + name + ":End:" + name.length()); 执行结果:The String Start is:Li :End:12原创 2015-10-13 13:57:03 · 5004 阅读 · 0 评论 -
String ,StringBuffer, StringBuilder
参考地址:http://blog.csdn.net/rmn190/article/details/1492013 String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 Strin...原创 2014-12-02 10:23:28 · 72 阅读 · 0 评论 -
JDK1.8集合框架源码分析二-------------LinkedList
0.LinkedList特点 0.1) 删除或新增效率高:不会移动数据元素,只会维护内部节点的关系 0.2) 查询慢: 在其内部没有下标,也即没有索引,需要使用for循环遍历,LInkedList为了提高效率,采用折半查找算法1.LinkedList的成员属性 1.1 int size --- LinkedList容器现有的节点个数 1.2 Node<E...原创 2018-12-13 14:26:39 · 104 阅读 · 0 评论 -
JDK1.8集合框架源码分析三-------------HashMap
1.HashMap的一些重要成员属性 1.1) 默认的初始容量 DEFAULT_INITIAL_CAPACITY = 1 << 4,官方建议必须时2的次方数 1.2) 负载因子DEFAULT_LOAD_FACTOR = 0.75f; 用来HashMap扩容判断 1.3) Node<K,V>[] table; ---容器中的元素2...原创 2018-12-14 17:07:52 · 144 阅读 · 0 评论 -
自定义 Exception
第一步: 定义一个Exception父类public class BaseException extends Exception{private static final long serialVersionUID = 1L;//异常类别 根据返回的不同数字信息得到不同的异常信息protected int exceptionKey;//异常信息protected String mes...原创 2014-08-27 10:03:50 · 148 阅读 · 0 评论 -
java 异常捕捉 ( try catch finally ) 你真的掌握了吗?
前言:java 中的异常处理机制你真的理解了吗?掌握了吗?catch 体里遇到 return 是怎么处理? finally 体遇到 return 怎么办?finally 体里有 System.exit() 方法怎么处理?当 catch 和 finally 体里同时遇上 return 怎么办?相信你在处理异常的时候不是每次都把它 throws 掉就完事了,很多时候异常是需要我们自己来 catc...原创 2014-09-16 12:19:49 · 80 阅读 · 0 评论 -
Thow 和Throws 的区别
1. throws出现在方法函数头,可以单独使用;而throw出现在函数体,不可以单独使用,throw要么和try-catch-finally语句配套使用,要么与throws配套使用。2.throws主要是声明这个方法会抛出这种类型的异常,使其他地方调用它时知道要捕获这个异常。 throw是具体向外抛异常的动作,所以它是抛出一个异常实例。3. throws表示出现异常的一种可能性,并不一定会发...原创 2014-09-12 11:07:36 · 1303 阅读 · 0 评论 -
JDK1.8集合框架源码分析一-------------ArrayList
0.ArrayList特点: 0.1)查询效率高:在其内部有下标,即有索引,直接就可以取到数据 0.2) 删除慢:因为需要将当前后面的数据往前移动移位,这时会用到数据扩容技术,这样效率非常低1.ArrayList初始化 1.1 无参构造函数,默认一个空数组 1.2 带容量的有参构造函数:根据容量参数的值范围来初始化 1....原创 2018-12-12 14:00:16 · 145 阅读 · 0 评论 -
Log4j的进阶使用-自定义Logger类 + 自定义打印文件位置
1.log4j配置文件信息#自定义日志打印类的配置文件信息log4j.logger.customerLogger = INFO,customerLogger#文件大小到达指定尺寸的时候产生一个新的文件log4j.appender.customerLogger = org.apache.log4j.RollingFileAppender #指定输出目录log4j.appender....原创 2019-05-05 10:59:35 · 3828 阅读 · 0 评论 -
Java SPI (Service Provider Interface) 机制
Java SPI具体约束规范: 1: 提供一个开放式的服务接口,任何人都可以实现这个接口 2: 实现接口的工程的META-INF/services/目录下,创建一个以接口全类名为名称的文件,文件内容为接口的实现类的全类名注意:1 接口实现类必须有无参的构造函数 2 如果有多个实现类,文件一行一个实现类 3: 可以...原创 2019-07-04 17:29:58 · 163 阅读 · 0 评论 -
jvisualvm安装插件的方法
1.到jdk安装目录下打开jvisual2.导航栏 工具-->插件通过编辑按钮可以修改插件中心的地址,更新成最新的即可3.然后点击可用的插件标签,选择你需要的插件即可4.安装visual gc插件后的效果...原创 2019-09-10 10:04:34 · 412 阅读 · 0 评论 -
Eclipse 代码注释模板
设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后展开Comments节点就是所有需设置注释的元素啦。现就每一个元素逐一介绍:文件(Files)注释标签:/** * @Title: ${file_name} * @Package ${package_name} * @Description:...原创 2014-10-09 10:27:21 · 76 阅读 · 0 评论 -
java中判断字符串是否为数字的三种方法
第一种利用java自带的函数public static boolean isNumeric(String str){ for(i<str.length();--i>=0;){ if(!Character.isDigit(str.CharAt(i))){ return false; ...原创 2015-06-29 09:57:42 · 112 阅读 · 0 评论 -
获取Jsp向后台发送请求获取参数的方法
public Map getParameterMap(String[] stcd) { Map map = new HashMap();//获取客户端提交的信息: //1)HttpServletRequest.getParameterNames():获取所有表单信息 //2)HttpServletRequest.getParameter(key):获取指定key的信息 /...原创 2014-09-10 10:30:45 · 627 阅读 · 0 评论 -
分布式锁的几种实现方式
github源码下载一.分布式锁的几种实现方式和对比 实现思路 优点 缺点 利用MySQL数据库实现 利用数据库自身提供的锁 要求数据库支持行级锁 实现简单,稳定可靠 性能差,挖坟适应高并发场景 容易出现死锁的的情况 无法优雅的实现阻塞式锁 利用缓存(redis)的实现方案 ...原创 2018-09-15 19:55:45 · 609 阅读 · 2 评论 -
HashMap 1.8 源码分析
1.HashMap的底层数据结构---数组+单向链表 2.一个完整的节点存数数据,在java中一切皆对象,所以在HashMap中应该存在一个类public class Node{ int hash; String key; Object value; Node next;}3.当想要往HashMap中存数数据的时候,肯定需要初始...原创 2018-09-15 09:05:20 · 215 阅读 · 0 评论 -
Java虚拟机内存结构——JDK1.8
一、Java虚拟机整体结构二、JVM内存结构 (1)线程私有部分 1.本地方法栈:登记native方法,在执行引擎执行时加载本地方法库 2.程序计数器:就是一个指针,存储指向下一条指令的地址 ,由执行引擎读取下一条指令,是一个非常小的空间,可以忽略不计 - 程序计数器的原因时CPU执行线程的时间分片导致的 3.java栈:Java线程...转载 2018-10-20 14:31:42 · 1880 阅读 · 1 评论 -
JVM类的加载机制
1.类的初始化过程2.触发类的初始化情况3.双亲委派机制 Java向上委派加载,只有当上层找不到对应的class文件时,才会交给下一级类加载器加载4.类加载的时序图 5.自定义类加载器 1.验证类加载顺序package com.roger.classloader;import com.sun.java.accessibility....原创 2018-10-28 14:59:33 · 102 阅读 · 0 评论 -
分布式ID生成器
1.自定义算法 package com.roger;import java.net.Inet4Address;import java.net.InetAddress;import java.net.NetworkInterface;import java.text.SimpleDateFormat;import java.util.Date;import java.util.E...转载 2018-11-20 16:34:28 · 93 阅读 · 0 评论 -
Colse and Open CheckStyle
// CHECKSTYLE:OFF NCSS **********Method***********// CHECKSTYLE:ON NCSS原创 2015-01-22 16:38:15 · 92 阅读 · 0 评论 -
Java 导出Excel
[i][b]参考地址:[/b][/i][url]http://www.shuyangyang.com.cn/jishuliangongfang/Javabiancheng/2013-03-09/37.html[/url]原创 2015-02-13 16:02:24 · 78 阅读 · 0 评论 -
XStream处理JSON和XML
1.1 创建序列化的类 public class ExcuteJob{ private String name; private String group; private String className; private String cronExpression;}public class ExcuteJobs{ private Arr...原创 2014-08-27 11:26:40 · 119 阅读 · 0 评论 -
java定时器 quartz
1.quartz 定时器包结构见附件2.初始化定时器容器: // 初始化容器 SchedulerFactory sf = new StdSchedulerFactory(); Scheduler scheduler = null;3.创建触发器 CronTrigger cronTrigger = new CronTr...原创 2014-08-27 14:02:43 · 98 阅读 · 0 评论 -
Java Long 对象的相等比较
[code="java"]Long originalLong = (long) -128; Long newLong = (long) -128; System.out.println("Object Compare:" + (originalLong == newLong)); System.out.println("LongValue Compare:" + (origi...原创 2015-04-22 15:17:53 · 221 阅读 · 0 评论 -
开发处理技巧整理
1.把一个数字字符串中右边起第一个不为0的数字前的所有0清空: 比如:00000012023500-------> 12023500 00001000012 -------> 1000012 方法: String numStr = "00000012023500"; ------------------...原创 2015-05-21 14:25:25 · 89 阅读 · 0 评论 -
Java动态代理 - InvocationHandler - Proxy
参考博客代码github地址一:准备工作: 1.定义接口类(一个或者多个) 2.定义接口实现类,实现一个或者多个接口二:实现动态代理 自定义一个代理类实现InvocationHandler接口 关键点: A:这个...原创 2018-09-01 12:09:52 · 529 阅读 · 0 评论