1.java自定义排序的实现方式:
自定义类实现Comparable接口,重写compareTo()方法,然后用Collections中的sort()进行排序
具体示例:http://blog.csdn.net/yenange/article/details/5947204
2.什么时候重写equals和hashCode(两种回答方式,第二种帮助理解):
1>.TreeSet时候,需要过滤掉重复的对象(重复定义:如果UserInfo对象里面有userId和userName2相对应值都想等),那就需要重写对象里equals()和hashCode()方法:
具体示例:http://jingyan.baidu.com/article/5552ef473a53f2518ffbc9ec.html
2>.重写equals是对象之间进行等值比较;
重写hashCode是为了将数据存入HashSet/HashMap/Hashtable类时进行比较;
重写compareTo是为了不同对象的大小比较。
参考:http://www.cnblogs.com/happyPawpaw/p/3744971.html
3.java的异常分类:
我们比较熟悉的Checked异常有:Java.lang.ClassNotFoundException、Java.lang.NoSuchMetodException、java.io.IOException
我们比较熟悉的RumtimeException类的子类有:Java.lang.ArithmeticException、Java.lang.ArrayStoreExcetpion、Java.lang.ClassCastException、Java.lang.IndexOutOfBoundsException、Java.lang.NullPointerException
参考地址:http://woshixy.blog.51cto.com/5637578/1071966 http://blog.csdn.net/woshixuye/article/details/8230407
4.
第六章 Hibernate与Mybatis对比总结
两者相同点:
Hibernate与MyBatis都可以是通过SessionFactoryBuider由XML配置文件生成SessionFactory,
然后由SessionFactory 生成Session,最后由Session来开启执行事务和SQL语句。
其中SessionFactoryBuider,SessionFactory,Session的生命周期都是差不多的。
Hibernate和MyBatis都支持JDBC和JTA事务处理。
Mybatis优势:
MyBatis可以进行更为细致的SQL优化,可以减少查询字段。
MyBatis容易掌握,而Hibernate门槛较高。
Hibernate优势:
Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。
Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。
Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。
Hibernate有更好的二级缓存机制,可以使用第三方缓存。MyBatis本身提供的缓存机制不佳。