DAO 데이터 액세스 객체, 구축

DAO: Data Access Objects는 애플리케이션을 위한 통합 프로그래밍 인터페이스
DAO 계층 구축
1.    :   。(      )
2.     (JavaBean):        。      ,    :domain、vo、ao  
    :
	   (1)(2)(3)      getter/setter  。
	   (4)3.  DAO   :IXXXDAO.class
      :DAO                。
      :queryAll(),queryById(int id),insert(User u),update(int id),delete(int id)
4.  DAO    :IXXXDAOImpl.class
      DAO        。
5.      DAO   

케이스
package com.dragon.usermanager.domain;
import java.io.Serializable;

public class User implements Serializable{
     
	private static final long serialVersionUID = 1L;
	
	private int uid;//               
	private String uname;
	private String upad;
	private int uage;
	private String usex;
	public int getUid() {
     
		return uid;
	}
	public void setUid(int uid) {
     
		this.uid = uid;
	}
	public String getUname() {
     
		return uname;
	}
	public void setUname(String uname) {
     
		this.uname = uname;
	}
	public String getUpad() {
     
		return upad;
	}
	public void setUpad(String upad) {
     
		this.upad = upad;
	}
	public int getUage() {
     
		return uage;
	}
	public void setUage(int uage) {
     
		this.uage = uage;
	}
	public String getUsex() {
     
		return usex;
	}
	public void setUsex(String usex) {
     
		this.usex = usex;
	}		
}
package com.dragon.usermanager.dao;
import java.util.List;
import com.dragon.usermanager.domain.User;

public interface IUserDao {
     
	public List<User> queryAll();//           
	public boolean insert(User u);
	public void delete(int uid);
}
package com.dragon.usermanager.daoimpl;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import com.dragon.usermanager.dao.IUserDao;
import com.dragon.usermanager.domain.User;

import jdbc.DBUtil;

/**
 * @author Dragon
 *
 */
public class IUserDaoImpl implements IUserDao{
     

	@Override
	public List<User> queryAll() {
     
		
		List<User> userlist = new ArrayList<User>();
		
		try {
     
			Connection conn =DBUtil.getConnection();//    
			Statement st=conn.createStatement();	//    
			String sql ="select * from user";		//  SQL  
			ResultSet rs =st.executeQuery(sql);		//  ,     
			while(rs.next()){
     
				User u = new User();
				u.setUid(rs.getInt("uid"));
				u.setUname(rs.getString("uname"));
				u.setUpad(rs.getString("upwd"));
				u.setUage(rs.getInt("uage"));
				u.setUsex(rs.getString("usex"));
				userlist.add(u);
			}
		} catch (SQLException e) {
     
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
			
		return userlist;
	}

	@Override
	public boolean insert(User u) {
     
		boolean b = false;
		try {
     
			Connection conn = DBUtil.getConnection();//    
			Statement st = conn.createStatement();//    
			String sql = "insert into user values (null,'"+u.getUname()+"','"+u.getUpad()+"',"+u.getUage()+",'"+u.getUsex()+"')";
		    System.out.println(sql);
		    b = st.execute(sql);	
		    
		} catch (SQLException e) {
     
			
			e.printStackTrace();
		}
		return b;
	}

	@Override
	public void delete(int uid) {
     
		try {
     
			Connection conn = DBUtil.getConnection();
			Statement st = conn.createStatement();
			String sql="delete from user where uname='zhangsan'";
			int i = st.executeUpdate(sql);
			System.out.println(i);		
			
		} catch (SQLException e) {
     
			e.printStackTrace();
		}			
	}	
}
package com.dragon.usermanager.test;
import java.util.List;
import com.dragon.usermanager.dao.IUserDao;
import com.dragon.usermanager.daoimpl.IUserDaoImpl;
import com.dragon.usermanager.domain.User;

public class Test {
     

	public static void main(String[] args) {
     
		User u =new User();
		u.setUname("zhaoliu");
		u.setUpad("1212345");
		u.setUage(15);
		u.setUsex("t");
		IUserDao userdao =new IUserDaoImpl();
		userdao.insert(u);			//    
		
		List<User> user1 = userdao.queryAll();
		for (int i = 0; i < user1.size(); i++) {
     
			System.out.println(user1.get(i).getUname());
		}
		
		userdao.delete(3);			//    
	}

}

좋은 웹페이지 즐겨찾기