VereORM 之 DAO 数据访问封装类

匿名 (未验证) 提交于 2019-12-03 00:30:01

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

http://www.verejava.com/?id=17046009508185

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!