- 博客(33)
- 资源 (20)
- 收藏
- 关注
原创 重构随笔
一个函数多长才算合适?长度其实并不是问题,重要的是函数名称和函数本体的语义距离。如果提炼的动作可以强化代码的清晰度就去做,就算函数名称比提炼出的代码还长也没关系。条件表达式1.合并条件表达式 if(onVacation()){ if(lengthOfService()>10){ return 1
2012-03-05 17:14:29 260
原创 Oracle数据库执行update和insert注意事项!
今天受教了。注意:oralce中的sysdate是以秒为单位的(YYYYMMDD HHMMSS)所以当执行update和insert要更新某一字段为sysdate时,一定要小心,如果该字段是主键,那么很可能会存在隐患。即,当代码的执行速度足够快,而且循环执行更新sysdate的SQL文时,就会出现主键重复异常。解决办法:在更新数据时,在java代码中延迟1秒。特附代码:
2012-03-02 16:09:30 1567
原创 2011年番茄时间初实践,涉猎到的unplanned的知识点备忘(3个)
<br />1.在子类中如果要对构造方法进行实例化操作时,一定要先在父类中写一个不带参数的什么都不做的无参构造方法。<br />2.静态方法可以是抽象的吗?<br />|-不可以,抽象方法肯定不可用类名调用,因为他一定不是编译绑定的,一定是运行绑定的 <br />抽象方法是这个抽象类的可实例的子类实例化的实例,他的抽象方法已经在创建实例时动态绑定了, <br />所以才可以调用 <br />为什么抽象类不可以实例化,因为一但定义为抽象类,就有可能(只是有可能)有方法没有被实现,不能被编译时静态绑定或运行时动
2011-05-17 16:31:00 519
原创 El表达式 empty用法
<c:if test="${! empty key}">${key}</c:if><br /><c:if test="${empty key}">所有</c:if><br /><br />当key不为空时输出key的值。当key为空时,输出“所有”<br /><br /><br />规则:<br />1若key为null时,返回true<br />2若key为空String时,返回true<br />3若key为空Array时,返回true<br />4若key为空Map时,返回true<br />5若ke
2011-05-16 16:48:00 1932
原创 为实现非系统类作为Map的key需要覆写hashCode()和equals()方法
<br /> public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof Person)) { return false; } Person p = (Person) obj; if (this.name.equals(p.name) && this.age == p.age) { return true; } else
2011-01-12 22:30:00 448
原创 Map的iterator()遍历输出
<br />如下代码所示:public class ForeachMapDemo {public static void main(String[] args) {Map<String, Integer> map = new HashMap<String, Integer>();map.put("zhangsan", 1);map.put("zhangsan", 2);map.put("lisi", 3);map.put("wangwu", 5);for (Map.Entry<S
2011-01-12 22:27:00 4823
原创 Collections的实用方法
无聊,翻翻文档,发现Collections中有很多有用而且以前我不知道的方法,晒晒~binarySearch()二分搜索查找指定元素,与Arrays同,用之前要先排序。没有返回-1,有返回位置。addAll()设定元素,个人感觉比fill()方法要好用,因为fill()是替换填充,何为替换填充,就是你得在先确保有值的时候才能填充,而addAll()第一个参数是Collection对象,第二个是一个动态的参数列表-->用来添加想要填充的元素。checked系列,现在还没用过,不解...copy()这个
2011-01-11 22:52:00 1793
原创 数组的实用功能
<br /><br />数组比较:数组相等的条件是数组的个数必须相等,并且相应的位置的元素也相等,这可以通过equals()方法对每个元素进行判断。<br /> Arrays.equals(a1,a2) ;<br /> String[] s1 = new String[4] ;Arrays.fill(s1,"Hi") ;String[] s2 = {newString("Hi"),newString("Hi"),newString("Hi"),newString("Hi")} ;Arrays.equals(
2011-01-10 22:47:00 455
转载 复习public default protected private
<br /><br />在Java中有四种不同的作用域,分别是 public protected default 和private,这四种不同的作用域的限制由前到后逐渐的增加。<br />现在来看看public的作用域,在所有的作用域中,public可谓是最宽松的,在编写类文件的时候,只要该类以public关键字修饰,那么这个类的类文件就必须以该类的简单类名来命名。在类的内部,被它修饰的无论是参数还是方法,都可以在任何地方访问的到(当然前提是这个类是公开的,就是上文说到的是以public关键字修饰的类)
2011-01-10 20:12:00 1315 2
转载 改变编码坏习惯
1.对局部变量(local variables),字段(fields),参数(method arguments)这三种变量的命名没有区分,造成了代码的阅读困难,增加了代码的维护成本。作者举了个例子:Java代码 public boolean equals (Object arg) { if (! (arg instanceof Range)) return false; Range other = (Range) arg; return start.equals(other.start)
2011-01-10 19:40:00 474
原创 每次看都有收获!
<br /> <br />1我的目标不要是那种没有意义,却有巨大的压力的目标<br />2就业。职业。事业(可能产生)<br />3think big do small<br />4不变浮躁,有耐性<br />5把自己放低,放低,放低!<br />6我以为我做好准备了,可是我还差的很远,不管多么愤怒,生气这个时候千万别做决定<br />7success is never final<br />8最低限:对自己有用;对别人无害<br />9最高境界:对自己有用,对别人有用<br />10天才:天生就是这样,别
2011-01-08 16:21:00 335
原创 在线人员控制代码
<br /><br />package org.lxh.demo;<br /> <br />import java.util.ArrayList;<br />import java.util.List;<br /> <br />import javax.servlet.ServletContext;<br />import javax.servlet.ServletContextEvent;<br />import javax.servlet.ServletContextListener;<br />imp
2011-01-08 12:41:00 346
原创 枚举
<br />代码:<br />package hxl.calendar;<br /><br />enum OpStatus{<br /> //枚举常量定义的同时指定状态码<br /> S_OK(0), S_PROTOCOL(1), S_AUTH(2), S_ITEMEXISTED(3), S_ITEMNOTFOUND(4), S_SQL(<br /> 15), S_UNKNOWN(16);<br /> private int code; //状态码值 <br /> OpStatus(int code)
2011-01-08 12:39:00 283
原创 评语
<br />生活中,有的人在人际交往时如鱼得水,轻松处理各种关系,在面对问题和困境时,也能沉着应对;而有的人则对人对事都表现得不合时宜。这体现了个体的成熟程度。 <br />通常情况下,个体会随着年龄的增长而逐渐成熟起来,但是还另有一些除了年龄以外的因素对个体的成熟程度起着重要的作用。 <br />一个人的成熟程度与其阅历、经验、成长环境及性格也有着密切的联系。事实证明,一个经历过很多生活的艰辛、有着拼搏奋斗历程的人要比一个未经世事、初出茅庐的人成熟很多。一个从小成长在有着很多人际交往关系的家庭中的儿童也要
2011-01-08 12:39:00 352
原创 想跳槽时看看
<br />不要一味的用薪水来和奖金来衡量跳槽的好坏:真正衡量的标准只有三个,第一是这个公司是不是正在处于发展时期,而且有很大的发展空间;第二这份工作是不是对你是一个挑战,是一个新的尝试,而且是自己所希望做的工作;第三,在接受这份工作的时候,会不会对你未来的5年的发展产生一定的影响。
2011-01-08 12:37:00 311
原创 工厂设计模式
<br />工厂代码:<br />package org.lxh.demo ;<br />import java.io.* ;<br />import java.util.* ;<br />interface Fruit<br />{<br /> // 生长<br /> public void grow() ;<br /> // 采摘<br /> public void pick() ;<br />}<br />class Apple implements Fruit<br />{<br /> public
2011-01-08 12:36:00 347
原创 工厂设计模式
<br />工厂代码:<br />package org.lxh.demo ;<br />import java.io.* ;<br />import java.util.* ;<br />interface Fruit<br />{<br /> // 生长<br /> public void grow() ;<br /> // 采摘<br /> public void pick() ;<br />}<br />class Apple implements Fruit<br />{<br /> public
2011-01-08 12:36:00 249
转载 String--formart
在JDK1.5中,String类增加了一个非常有用的静态函数format(String format, Objece... argues),可以将各类数据格式化为字符串并输出。其中format参数指定了输出的格式,是最复杂也是最难掌握的一点,而argues则是一系列等待被格式化的对象。该函数对c语言中printf函数的用法进行了一定的模仿,因此有c语言基础的人学起来会轻松许多。下面我们着重讨论一下format 参数的格式及含义。 format参数中可以包含不需要转化的字符串,这些字符串是你写
2011-01-06 22:39:00 3007
原创 Map
Map petMap = new HashMap() ;petMap.put("My Cat",new Cat("Molly")) ;petMap.containsKey("My Cat") ; ---->truePet dog = petMap.get("My Dog") ;petMap.containsValue(dog) ; ---->trueMap:映射表,又称关联数组。|-性能:当在get()中使用线性搜索时,执行的代码的速度会非常的慢,而
2010-12-21 23:34:00 378
原创 Stack--->栈--->“后进先出”的容器
<br />LinkedList能够直接实现栈的所有功能:<br />public class Stack<T>{<br />private linkedList<T> storage = new LinkedList<T>() ;<br /> public void push(T v){ storage.addFirst(v);}<br /> public T peek(){ return storage.getFirst() ;}<br /> public T pop(){ return stor
2010-12-21 00:06:00 477
原创 List
两种类型的List:ArrayList:它长于随机访问元素,但是在List的中间插入和移除元素时比较慢。|-用contains()方法来确定对象是否在列表中。|-若移除一个对象,则可以将这个对象的引用传递给remove()方法。|-indexOf()方法返回查询对象在List中的位置(从零开始),不存在的话返回-1。|-subList()方法允许你很容易的从较大的列表中创建出一个片段,其中两个参数start,end,截取的是从start到end-1。|-retainAll()方法是一个有效地交集操作Link
2010-12-19 21:52:00 326
原创 我感觉,人活着不能太潇洒
原来我错了,我想我错了。是的,我过去错了。 麻生的项目进入到了后期测试阶段,周末就没加班,周日闲来无事逛逛家门口的百联,依然是四楼,依然是JackJones。 没什么特别想买的就是想看看。正巧看到了一件蛮漂亮的毛衣,价格也ok,就想看看裤子,可惜一条非常好看的十分的束缚,太崩了,其实我并不胖,里面也就穿了一条保暖衬裤,在舒服与好看面前我毫不犹豫的放下了裤子。往常这时候,我会非常爽快的喊一声,“衣服包了”,可是当我回试衣间换回自己的衣服的时候那种要买衣服的冲动消失了,我向服务人员道谢,说声
2010-12-19 15:38:00 940
转载 String永远的问题
String a = "ab"+"c";这时候生成的"abc"会放入StringPool(正解),String a="ab";String c=b+"c";由于和字面量"c"进行+运算的是一个对象而不是字面量,这样Java虚拟机就会在堆里面生成一个新的对象并返回该对象引用,此时变量a和变量c指向了两个不同的地址。即使String a = new String("abc"),虽然这样一来a和c都是指向堆的,但她们还是指向两个不同的对象,因为b+"c"会新生成一个对象。
2010-12-18 11:24:00 268
原创 持有对象--->容器
<br />题外话:@SuppressWarnings:表示只有有关“”<br />Collection:ArrayS.asList方法接受一个数组或是一个用逗号分隔的元素列表(可使用可变参数列表),并将其转成List对象,Collections.addAll()方法接受一个Collection对象,以及一个数组或是一个用逗号分隔的列表,将元素添加到Collection中。<br />|-List:必须按照插入的顺序保存元素。<br />|-Set:不能有重复元素。<br />|-Queue:按照排队规则来
2010-12-17 22:54:00 247
原创 持有对象--->容器
<br />题外话:@SuppressWarnings:表示只有有关“”<br />Collection:ArrayS.asList方法接受一个数组或是一个用逗号分隔的元素列表(可使用可变参数列表),并将其转成List对象,Collections.addAll()方法接受一个Collection对象,以及一个数组或是一个用逗号分隔的列表,将元素添加到Collection中。<br />|-List:必须按照插入的顺序保存元素。<br />|-Set:不能有重复元素。<br />|-Queue:按照排队规则来
2010-12-17 22:54:00 267
原创 数组的那些续
<br />直接捞干的:<br />|-基本类型的数组的值在不进行显示的初始化的情况下,会自动初始化。对象数组会被初始化为null。<br />|-Arrays中的fill()方法,只能通过一个值填充各个位置,而这对对象而言,就是复制同一个引用进行填充。如下:<br />boolean[] a1 = new boolean[size] ;<br />Arrays.fill(a1,true) ;<br />|-数组复制System.arrayCopy():五个参数-->源数组,从什么位置开始,目标数组,从什么
2010-12-16 23:16:00 435
转载 Spring面试
<br />今天有一哥们去面试 ,哥们说自己会ssh <br />面试官就问了几个spring的概念性的问题 ,哥们平时只专注于写代码,回来后一脸的无奈 <br />本人总结了一些ssh常见的面试题 例举如下 <br />强调在回答的时候不要光回答概念,要思维扩散性的讲些相关的东西 <br />spring 的优点? <br />1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 <br />2.可以使用容易提供的众多服务,如事务管理,消息服务等 <br />3.容器提供单例模式支持 <br />4.容
2010-12-15 23:12:00 3299 1
原创 数组的那些事儿~
首先, 数组在声明是不允许指定数组的大小-->因为,编译器不允许指定数组的大小-->因为声明数组时只是拥有对数组的一个引用,并没有给数组本身分配任何空间。所以为了个数组创建空间,必须初始化。 初始化方式: int[] a = {1,2,3,5,6} ;int[] a = new int[rand.nextInt(20)] ;(注意数组中的基本数据类型会自动的初始化成空值,对于数值和字符都是0,对于布尔都是false。而且即使用new创建了数组,他还只是个数组的引用,知道通过创建新的值,并把值赋
2010-12-15 23:02:00 459
原创 String中的“+”和StringBuilder
<br />如题,大家都能看出来这是要做字符串连接操作,有些基础的人都会知道,String是不可修改的,而正因为此,大家一定会认为,用“+”将String相连接会随着“+”的增多,而产生越来越多的String,性能一定十分低,而真是这样吗?<br />例如:<br />public class Concatenation{<br /> public static void main(String[] args){<br /> String mango = "mango" ;<br /> Str
2010-12-14 23:49:00 331
原创 可变参数列表
<br /> 今晚是个激动人心的日子,我立志从今晚起,每天学习一部分感兴趣的内容,现在目标锁定在《Java编程思想》。<br /> 立志啦哈,小学时,于老师就对我们说过,要立长志,不要常立志,这点我做的就不好,总是不太坚持!惭愧,但是我感觉自从干了IT之后,自己任性的那股子邪劲儿好像转移过来了,大有一种--老子不把他研究透就不回家--的干劲儿,呵,看来我的韧性可能会在这儿开始!<br /> 首先,恶补一下基本概念,可恶,这种东西都能忘,是该整理一下啦!!!<br /> |-“重载指的
2010-12-13 23:26:00 308
原创 期待---即将转正
今天,就在CSDN安家啦~白虎白虎我和IT的故事~ 最近收到邮件,人力资源部通知我转正,看到的时候好兴奋啊,以为自己提前转正了呢,可再一看日期,正好......不知不觉,我在这儿已经干了这么久(虽说只有半年......)。 说道转正,好想跟人力的说说加薪的事儿啊,可是得忍住啊,据我估计,和我一批来的兄弟们中,一定有沉不住气的,一定有申请加薪的。而我,刚来半年,就干了三个项目,leader们都对我十分信赖,我坚信我的实习期间的评价一定不错,如果这个时候,我还不提加薪的话,一定会更加显得我志
2010-12-13 22:18:00 345
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人