DAO设计模式
1.domain/pojo对象
domain(指的是实例类)
2.dao接口
//新建Dao接口
package com.ful.dao;
import com.ful.domain.Users;
public interface UsersDao {
Users findByUserName(String parUserName);
}
3.接口实现(单例设计模式)
public class UsersDAOImp implements UsersDao{
private UsersDAOImp(){
}
public static UsersDAOImp getInstance(){
return new UsersDAOImp();
}
private String sql = "";
@Override
public Users findByUserName(String parUserName){
sql = "select * from Users where uname = '"+ parUserName +"'";
List> data = DBHelper.query(sql);
if(!data.isEmpty()){
Map row = data.get(0);
int uid = Integer.parseInt(row.get("uid").toString());
String uname = row.get("uname").toString();
String upwd = row.get("upwd").toString();
Date addtime = (Date)(row.get("addtime"));
Users users = new Users(uid,uname,upwd,addtime);
return users;
}
return null;
}
}
4.dao工厂
public class DaoFactory {
public static UsersDao getUsersDAO(){
return UsersDAOImp.getInstance();
}
}
5.service调用
public Users login(String parUName, String parUpwd){
UsersDao usersDao = DaoFactory.getUsersDAO();
Users users = usersDao.findByUserName(parUName);
if(users != null){
if(users.getUpwd().equals(parUpwd)) {
return users;
}
}
return null;
}