java
风里来云里去
这个作者很懒,什么都没留下…
展开
-
xml reader
http://coolshell.cn/articles/8745.html#more-8745原创 2014-03-19 19:02:22 · 410 阅读 · 0 评论 -
一个统计文件中关键词数量的小程序
public class computeFileNum{ public static void main(String[] args) throws IOException { File sourceFile = new File("e:\\55-tmp\\xxx.log"); FileReader in = new FileRea原创 2015-10-12 14:48:52 · 2262 阅读 · 1 评论 -
Java多线程 要点分析
Java提供的并发相关的包:java.util.concurrent主要提供并发过程中可以用到的工具类 一些重点可以分状体理解 可以分析一下多线程条件下wait/notify/sleep之间相互协作的用法。锁的理解 进程间对锁的竞争通过例子理解synchronized关键字的使用:§ 非静态方法使用synchronized修饰,相当于synchronized(thi原创 2015-10-28 01:39:03 · 390 阅读 · 0 评论 -
一个统计文件中关键词数量的小程序-优化版本
public class computeWxxFileNum{ public static void main(String[] args) throws IOException { //读文件 File sourceFile = new File("e:\\55-tmp\\xxx.log"); FileReader in = n原创 2015-10-13 10:55:27 · 798 阅读 · 0 评论 -
多线程简单例子
package com.hj.com;class ThreadNew implements Runnable { private String name; private static Integer lock = 1; public ThreadNew(String name) { this.name = name; }原创 2015-10-29 01:53:10 · 368 阅读 · 0 评论 -
Java HashMap的数据结构以及put和get方法
1 HashMap的数据结构HashMap实际上是一个链表数组,也就是最外层是数组,数组的元素是链表。 2 HashMap的put方法:源代码如下: public V put(K key, V value) { //1 如果Key为Null 则put到Key为null的位置 if (key == null) return p原创 2015-10-29 23:28:32 · 6886 阅读 · 0 评论 -
Java Servlet原理学习(一)
关键词:sessionFilter(过滤器)init方法(初始化) service方法(响应请求,接收并作出反应) destroy方法(移除) request对象 response对象 doPost doGet 请求 响应 socketweb.xml文件(配置各种上下文信息,比如mapping) Servlet对象ServletConfig对象创建servlet类(需要继承ja原创 2015-10-31 16:05:25 · 312 阅读 · 0 评论 -
hashmap hashtable concurrenthashmap的区别
hashmap和hashtable源码级别的区别不同点:1 hashtable在put和get的时候都加了synchronized2 hashtable中没有Key为null位置了可以看出hashtable每次锁定的是整个hashtable,所以并发效率比较低。 public synchronized V get(Object key) public synchroniz原创 2015-11-02 15:04:56 · 735 阅读 · 0 评论 -
Java基础常问问题 二
java基础: 其他问题: 1 try catch中catch没有触发的情况下finally会不会执行? finally不论catch有没有触发都会执行。 2 ==和equals有什么区别?对象中equal比较的是地址,==比较的是值。 3 为什么一般自定义的对象如果要比较值是否相等要重写equals方法?为什么重写equals方法原创 2015-10-20 10:51:45 · 294 阅读 · 0 评论 -
hashMap的再认识
1 红黑树的引入 jdk1.8在原有jdk1.6的基础上在底层数据结构引入了红黑树,以提高数据访问的效率。 在当前行元素数量大于8时,将当前行的链表转换成红黑树。2 最底层元素节点其实还是 Entry。3 底层的基本数据结构大的层面还是数组链表或者数组红黑树。 每行是一个链表或者红黑树,第i行的第一个元素是table[i]或者tab[i],作为当前行的访问入口。原创 2015-11-28 15:44:02 · 245 阅读 · 0 评论 -
Java基础概要(一)
1 Java基础---虚拟机堆 栈 常量池 静态域---基本类型和引用类型(类的对象)---Java采用Unicode编码(全球语言统一编码)---int 4字节 32位float精度 6-7位,安全的是6位 double精度15-16位,安全的是15位---运算符的结合性 一般都是从左到右 针对++a的情况,是先计算a+1再进行赋值计算而原创 2015-12-02 20:19:37 · 257 阅读 · 0 评论 -
Java基础概要(二)
-----------string的内部方法,一些常用的操作indexOf 字符串模式匹配大小写转换split 字符串按照分隔符拆分---StringBufferappend 添加insert(位置 字符串)delete(位置 字符串)---java.lang.IntegerMAX_VALUEMIN_VALUEintValue原创 2015-12-02 20:20:34 · 248 阅读 · 0 评论 -
Java 文件读写最好是用buffer对于大文件可以加快速度
参考例子:FileReader fileReader = new FileReader(filename); BufferedReader bufferedReader = new BufferedReader(fileReader); List lines = new ArrayList(); String line = null;原创 2016-11-29 18:43:39 · 2706 阅读 · 0 评论 -
产出文件乱码问题
产出到文件的部分繁体字字符串出现乱码主要原因是从数据库读取的字符是GBK,产出的字符串编码设置成立GB2312,字符集部分不匹配,产出字符串的编码改成GBK后问题解决。原创 2017-03-01 10:59:42 · 351 阅读 · 0 评论 -
MAC下idea常用操作
看javadoc Ctrl+J debug 参考https://blog.csdn.net/Alvin_Lam/article/details/78660225alt+f8 debug时选中查看值 f8相当于eclipse的f6跳到下一步 shift+f8相当于eclipse的f8跳到下一个断点,也相当于eclipse的f7跳出函数 f7相当于eclipse的f5就是进入到...转载 2018-11-26 20:53:47 · 384 阅读 · 0 评论 -
关于Java虚拟机运行时数据区结构的理解
原创 2018-11-30 12:39:48 · 218 阅读 · 0 评论 -
Java事务的深入理解 JAT
主要参考如下博客http://jackyin5918.iteye.com/blog/1922042#bc2372671关键词resume(Transaction tobj)- 继续suspend()- 挂起begin()- 开始事务commit()- 提交事务rollback()- 回滚事务getStatus()- 返回当前事务状态setRollba原创 2015-10-26 01:39:59 · 1978 阅读 · 0 评论 -
Java虚拟机垃圾回收的几个关键问题
20151008GC的几个关键问题,触发条件,触发的机制主线是数据的移动,从什么位置到什么位置,移动的条件是什么?1 垃圾收集在什么时候触发?GC都是在带满了的时候触发的,每次触发都是把不会用的不可达的对象空间回收了,留下还在用的对象。1) MinorGC的触发是伊甸园空间满的时候2) FullGC的触发是在老年代满的时候2 垃圾回收的时候做哪些工作?1)原创 2015-10-08 16:01:46 · 415 阅读 · 0 评论 -
java多线程(一) ThreadLocal
ThreadLocal机制主要是提供独立的变量副本。例子如下:主要参考:http://blog.csdn.net/lufeng20/article/details/24314381package com.test;public class TestNum { //1 声明ThreadLocal类型的对象 //2 通过匿名内部类覆盖重写ThreadLocal的initia原创 2015-10-23 11:44:25 · 323 阅读 · 0 评论 -
Java模拟js的escape方法
public static String escape(String src) { int i; char j; StringBuffer tmp = new StringBuffer(); tmp.ensureCapacity(src.length() * 6); for (i = 0; i < src.lengt转载 2014-05-16 13:59:41 · 1162 阅读 · 0 评论 -
Java语言学习要点(001) JAVA中的权限控制符 注意的要点 protected class和成员
1 protected是只有同一个package或者子类能够fang原创 2014-05-30 10:05:50 · 766 阅读 · 0 评论 -
Java语言学习要点(002) final关键字
1 final修饰data 表示对象是是常量值不变原创 2014-05-30 10:12:14 · 534 阅读 · 0 评论 -
OJ 排序后去重复
import java.util.Stack;public class Demo{ public int [] getResultArray(int[] inputArray, int n) { //todo int[] temp = deleteSameNum(sortNum(inputArray)); return temp原创 2014-08-08 15:08:28 · 376 阅读 · 0 评论 -
Java中for循环的高级用法
1 for语句里面可以定义多个变量,但是必须是同型的原创 2014-07-22 23:47:27 · 4542 阅读 · 0 评论 -
OJ 求1-n之间的质数list
找1-n之间的所有质数1 如果是1 则没有质数2 >=2有2.1 初始化质数 primeList = {2}2.2 遍历1-n 循环for(int i = 2 ; i { int maxTempPrime = i ^ (1/2); boolean isPrime = true; for(int j = 1;primeList(j)原创 2014-08-08 17:15:51 · 568 阅读 · 0 评论 -
OJ硬币组合数量的分析
/* 10元=1000分 硬币额度 1 2 5 10 50 100 取3种硬币 1 取每种最大的情况 只有1个 1 每个只有1个的情况 是基本的 2 每个最大的情况 每种最大: 不考虑性能的情况 1000/额度1 1000/额度2 1000/额度3 所有这些组合加起来刚好等于1000的有几种情况原创 2015-06-07 12:11:40 · 817 阅读 · 0 评论 -
OJ 求硬币组合数
public static int calculateChanges(String coinTypes) { final int totleMoney = 1000; int totlceChangesNum = 0; //1 正确性校验 //1.1 必须有且只有2个逗号 int sep1 = -1; int sep2 = -1; int sep3 = -1;原创 2015-06-07 12:00:59 · 608 阅读 · 0 评论 -
JAVA NIO的笔记
Java中的NIO IO-文件的读写NIO是Java4开始提供的用来解决IO问题的API。Channel(通道) Buffer(缓存区) Selector(选择器)inputStream outPutStream 都是以Stream为观点看的 所以input为读 output为写 两个对象文件盒streamChannel读写操作都能做 Channel是执行读写操作这个工作的东西原创 2015-09-28 00:54:50 · 355 阅读 · 0 评论 -
Java基础常问问题 一
java基础: java对象的hashcode是怎么算的? hashCode的常规协定是: http://www.bysocket.com/?p=263 1、在 Java 应用程序执行期间,在对同一对象多次调用 hashCode 方法时,必须一致地返回相同的整数,前提是将对象进行 equals 比较时所用的信息没有被修改。从某一应用程序的一次执行到同一应用程序的另一次执行,该原创 2015-10-16 16:12:27 · 353 阅读 · 0 评论 -
简单理解JMS
生产者、消费者、jms server(MQ)。原创 2015-11-04 19:18:57 · 326 阅读 · 0 评论 -
Java 虚拟机中的存储的理解 堆栈 GC
栈 主要存放基本类型数据和对象的引用堆 主要存放对象实体 新生带(New generation)使用的垃圾收集器叫MninorGC,新生代由Eden Space和两块相同大小的Survivor Space(FromSpace和ToSpace)组成,后两者主要用于Minor GC时的对象复制。 老年带(Old generation)使用的垃圾收集器叫FullGC ,当新生代中原创 2015-09-19 17:52:47 · 688 阅读 · 0 评论 -
定位cpu占用过高的线程和对应的方法
如何定位cpu占用过高的线程和对应的方法?主要是通过线程id找到对应的方法。1 查询某个用户cpu占用最高的进程号top -u 用户名2 查询这个进程中占用cpu最高的线程号top –p 进程号-H 3 查询到进程id后把进程相关的代码打印到jstack文件jstack -l pid > jstack.txt4 在jstack文件中通过16进制的线程id搜索到原创 2015-10-09 14:50:57 · 1480 阅读 · 0 评论 -
Java Web基础技能常问问题
数据库 多线程条件下事务的安全性如何保障?如何保证对资源的读写不出错?事务有那几个特性?sql查询优化怎么做?数据仓库 事实表 维度表 明细表 cube 元数据多线程 死锁是怎么造成的?锁有什么用?具体锁是怎么用的?多线程情况下如何保证资源不冲突?对资源的读写不出错?数据结构 二叉树 二叉树的前序遍历 中序遍历 后序原创 2015-10-22 00:14:32 · 415 阅读 · 0 评论 -
转 Java字节码 wiki
https://en.wikipedia.org/wiki/Java_bytecode_instruction_listingsFrom Wikipedia, the free encyclopediaJump to navigationJump to searchMain article: Java bytecodeThis is a list of the instructio...转载 2018-11-28 20:09:36 · 291 阅读 · 0 评论