文档介绍:1,              what’s BO, DAO, VO? 之间的关系?
VO(value object) 值对象通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,(数据传输对象),在web上传递。
BO(business object) 业务对象从业务模型的角度看,见UML元件领域模型中的领域对象。封装业务逻辑的java对象,通过调用DAO方法,结合PO,VO进行业务操作。
PO(persistant object) 持久对象在o/r映射的时候出现的概念,如果没有o/r映射,没有这个概念存在了。通常对应数据模型(数据库),本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。
 
DAO:
data access object数据访问对象这个大家最熟悉,和上面几个O区别最大,基本没有互相转化的可能性和必要.
主要用来封装对数据库的访问。通过它可以把POJO持久化为PO,用PO组装出来VO、DTO
2,              What is “sequence” in RDBM?
Relational DataBase Machine   关系数据库计算机
Sequence是数据库系统按照一定规则自动增加的数字序列。这个序列一般作为代理主键(因为不会重复),没有其他任何意义。
What is static SQL statement and dynamic SQL?
静态,动态时针对sql而言的,简单说,静态sql在编译时确定,动态sql在运行时确定,可以由用户确定,更加灵活
 
3,              What is the respective benefict?
4,              Please write a java snippet to implement the “singleton” pattern.
//饿汉式
private static UserManager instance = new UserManager();
 
private UserManager() {}
 
public static UserManager getInstance() {
        return instance;
}
 
//      //懒汉式
//      private static UserManager instance;
//     
//      private UserManager() {
//            
//      }
//     
//      public static synchronized UserManager getInstance() {
//             if (instance == null) {
//                    instance = new UserManager();
//