http://www.verejava.com/?id=17046009508185
1. 安装见 VereORM 之 入门安装 2.在 test/src 中新建一个DAO 接口 com.test.dao.UserDAO package com.test.dao; import java.util.List; import com.test.entity.User; public interface UserDAO { public boolean add(User user); public boolean deleteById(int id); public boolean update(User user); public User findById(int id); public List<User> find(); public List<User> find(User searchItem,int pageId,int pageSize); //分页查询 } 3.在 test/src 中新建一个DAO 实现类 com.test.dao.impl.UserDAOImpl package com.test.dao.impl; import java.util.ArrayList; import java.util.List; import com.test.dao.UserDAO; import com.test.entity.User; import com.vere.orm.db.Session; import com.vere.orm.db.SessionManager; public class UserDAOImpl implements UserDAO{ private SessionManager sessionManager; public UserDAOImpl() { sessionManager=new SessionManager(); } @Override public boolean add(User user) { Session session= sessionManager.openSesstion(); //打开一个session try { return session.save(user); }catch(Exception e) { e.printStackTrace(); } finally { if(session!=null) { session.close();//关闭session } } return false; } @Override public boolean deleteById(int id) { Session session= sessionManager.openSesstion(); //打开一个session try { User user=new User(); user.setId(id); return session.delete(user); }catch(Exception e) { e.printStackTrace(); } finally { if(session!=null) { session.close();//关闭session } } return false; } @Override public boolean update(User user) { Session session= sessionManager.openSesstion(); //打开一个session try { return session.update(user); }catch(Exception e) { e.printStackTrace(); } finally { if(session!=null) { session.close();//关闭session } } return false; } @Override public User findById(int id) { Session session= sessionManager.openSesstion(); //打开一个session User user=null; try { Object obj=session.findOne(User.class, "select * from user where id=?" ,new Object[]{id}); //obj=session.findOne(User.class, "select * from user where id="+id); if(obj!=null) { user=(User)obj; } }catch(Exception e) { e.printStackTrace(); } finally { if(session!=null) { session.close();//关闭session } } return user; } @Override public List<User> find() { Session session= sessionManager.openSesstion(); //打开一个session List<User> userList=new ArrayList<User>(); try { List list=session.find(User.class, "select * from user"); if(list!=null) { for(int i=0;i<list.size();i++) { User user=(User)list.get(i); userList.add(user); } } }catch(Exception e) { e.printStackTrace(); } finally { if(session!=null) { session.close();//关闭session } } return userList; } @Override public List<User> find(User searchItem, int pageId, int pageSize) { Session session= sessionManager.openSesstion(); //打开一个session List<User> userList=new ArrayList<User>(); try { boolean b=false; StringBuffer where=new StringBuffer(); String fvalue=null; fvalue=Integer.toString(searchItem.getAge()); if(fvalue!=null &&!fvalue.equals("0")) { if(b) where.append(" and"); where.append(" age ="+fvalue); b=true; } fvalue=searchItem.getName(); if(fvalue!=null && fvalue.length()>0) { if(b) where.append(" and"); where.append(" name ='"+fvalue+"'"); b=true; } if(!where.toString().equals("")) where.insert(0," where "); String sql="select * from user "+where.toString()+" limit "+(pageId-1)*pageSize+","+pageSize ; List list=session.find(User.class, sql); if(list!=null) { for(int i=0;i<list.size();i++) { User user=(User)list.get(i); userList.add(user); } } }catch(Exception e) { e.printStackTrace(); } finally { if(session!=null) { session.close();//关闭session } } return userList; } } 4.在 test/src 新建测试类 com.test.orm.Test4 package com.test.orm; import java.util.Calendar; import java.util.List; import com.test.dao.UserDAO; import com.test.dao.impl.UserDAOImpl; import com.test.entity.User; public class Test4 { public static void main(String[] args) { testAdd(); testFindOne(); testUpdate(); testFind(); //testDelete(); //testFindPage(); } public static void testAdd() { User user=new User(); user.setId(2); user.setName("lijun"); user.setAge(30); user.setSalary(20000); user.setBirthday(Calendar.getInstance()); UserDAO userDAO=new UserDAOImpl(); userDAO.add(user); } public static void testFindOne() { UserDAO userDAO=new UserDAOImpl(); User user=userDAO.findById(2); if(user!=null) { System.out.println(user.getId()+" | "+user.getName()+" | "+user.getAge()+" | "+user.getSalary()); } } public static void testUpdate() { User user=new User(); user.setId(2); user.setName("lijun"); user.setAge(30); user.setSalary(25000); user.setBirthday(Calendar.getInstance()); UserDAO userDAO=new UserDAOImpl(); userDAO.update(user); } public static void testFind() { UserDAO userDAO=new UserDAOImpl(); List<User> list=userDAO.find(); if(list!=null) { for(int i=0;i<list.size();i++) { User user=(User)list.get(i); System.out.println(user.getId()+" | "+user.getName()+" | "+user.getAge()+" | "+user.getSalary()); } } } public static void testDelete() { UserDAO userDAO=new UserDAOImpl(); userDAO.deleteById(2); } public static void testFindPage() { int pageId=1; int pageSize=1; User searchItem=new User(); //searchItem.setName("huyang"); UserDAO userDAO=new UserDAOImpl(); List<User> list=userDAO.find(searchItem,pageId,pageSize); if(list!=null) { for(int i=0;i<list.size();i++) { User user=(User)list.get(i); System.out.println(user.getId()+" | "+user.getName()+" | "+user.getAge()+" | "+user.getSalary()); } } } } 5.运行测试类 com.test.orm.Test4
文章来源: VereORM 之 DAO 数据访问封装类