您的位置:首页 > 编程语言 > Java开发

java日常技巧

2015-09-18 14:39 435 查看
1:List.class.isAssignableFrom(f.getType())2:
java.beans.Introspector.getBeanInfo(Bean.class)
3:
AtomicLong AtomicInteger voliate
4:
Guava 瓜娃  Apache commons包
5:Runtime.getRuntime().addShutdownHook
6:
isDeamond Deamond线程
7:
ToStringBuilder.reflectionToString(this,ToStringStyle.MULTI_LINE_STYLE);
8:
LazyDynaBean懒惰动态的bean 可以动态添加属性值
9:
Java 提供了很多服务提供者接口(Service Provider Interface,SPI),允许第三方为这些接口提供实现。常见的 SPI 有 JDBC、JCE、JNDI、JAXP 和 JBI 等。
10:[code]identityHashCode  拿到一个对象的hash值,不同于hashCode()方法的是不论对象是否重载该方法都能够通过native函数identityHashCode拿到对象的hash值
[/code]
11:
Collections.unmodifiableCollection
12:
在velocity中调用一个变量如student.name的话,velocity会按照以下方法去寻找name,查找有没有public的name域->查找有没有getName方法->查找有没有get(String)方法,如果有get(String)方法就直接把name作为string扔进去得到返回值。
13:
Java and javax:java 是java j2sdk 中的类库,也就是Java Development kit 。 它提供也一些基础的东西,如io库、桌面程序的类库,如awt。集合库(如Collection、List、Map)。等这些最基础的类库14:
MD5加签原理,post请求的参数key和value拼接后+签名Key进行MD5计算,然后在请求中把这个MD5算出来的结果带到服务端,服务端接收到请求后,也把请求中的key和value拼接起来(不包含签名Key)和服务端存储的签名Key拼接,然后进行MD5计算,将计算结果和请求中带过来的那个计算结果进行比对,如果一样就说明是持有Key的发送发发送的请求,如果不一样,就是非法请求,注意拼接的顺序。javax是java的扩展包,如j2ee 中的类库,包括servlet,jsp,ejb,数据库相关的一些东西,xml的等
15:
JAVA基础类型自动拆装箱;
Long i = null; long j = i; 以上代码会报NullPointerException
16:
ibatis resultMap和resultClass坑爹,resultClass为基础类型,resultMap为对象和数据库的映射表
17:
public class Main {public static void main(String[] args) {Long l1 = new Long(1);Long l2 = new Long(1);System.out.println(l1 == l2);System.out.println(l1.equals(l2));}}
输出结果为fasle,true 对象比较用==会返回false,不要和l1==1自动拆装箱混淆
18:
Bean在实例化的过程中:Constructor > @PostConstruct >InitializingBean > init-methodBean在销毁的过程中:@PreDestroy > DisposableBean > destroy-method19:转义的含义就相当于功能切换按键fn,如果一个字符在某种语言中含有特殊含义,那么转义后就变成了普通字符,如果某个字符原本是普通字符,那么转义后就变成了含有特殊含义的元字符

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: