1創(chuàng)建Java bean 與表名一致
? 在里面定義變量 生成getset 方法
2? 創(chuàng)建mapping 實(shí)現(xiàn) EntityMapping
//將結(jié)果集一行轉(zhuǎn)換為一個(gè)對象
(EntityMapping
public Object mapping(ResultSet rs) throws SQLException;
})
@Override
public Object mapping(ResultSet rs) throws SQLException {
add addd=new add();
addd.setId(rs.getInt("ID"));
addd.setName(rs.getString("NAME"));
addd.setWord(rs.getString("WORD"));
return addd;
}
3.將對象保存到工廠(MappingFactory) 里
保存到map集合中
// 向Map集合中保存xxxMapping對象
mappingFactory.maps.put(ADD_MAPPING, new addMapping());
mappingFactory.maps.put(ADD_MAPPING 全大寫, 新對象());
然后再上面定義一個(gè)常量
? public static final String ADD_MAPPING = "addMapping";
4.建立DAO 接口
寫一個(gè)登入的方法
/**
* 登錄
* @param username
* @param password
* @return add對象登入者的名字
* 返回一個(gè)add對象,因?yàn)橐陧撁嫔巷@示
*/
public? add login(String username,String password);
5.寫DAO 的實(shí)現(xiàn)類
public class addDAOimpl extends BaseDAO implements addDAO{}
方法:
public add login(String name, String word) {}
重寫:
先寫一條sql語句
String sql = "SELECT * FROM ADD WHERE NAME=? AND PASS=?";
然后調(diào)用模板類中的方法
? ? 接著對象要從工廠里取
? ? //從工廠里通過類名取常量
? EntityMapping? mapping =
? mappingFactory.getMapping(MappingFactory.ADD_MAPPING);
? EntityMapping接口? 屬性名? ? =? BaeDAO里的屬性名.獲取(類名(工廠).工廠里的常量)? ? ? ? ? ? ? ? ? ? ? ? ?
List<Object> list = jdbcTemplate.query(sql, mapping, name,word);
? 查詢用query
jdbcTemplate.query(sql, mapping, name(方法里的參數(shù)),word(方法里的參數(shù)));
然后誰調(diào)用的拿誰接? , 前面用list集合接
然后因?yàn)閍dd對象此時(shí)已經(jīng)在list集合里了要取出來
if (list.size()>0) {
//里面只有一個(gè)元素 如果list.size>0則有元素,反之則無
return (add) list.get(0);
}
return null;(反之)
6.創(chuàng)建業(yè)務(wù)層service
public interface addService {
/**
* 業(yè)務(wù)層登入的方法
* @param name
* @param word
* @return add
*/
? public add isValidate(String name,String word);
}
7.創(chuàng)建實(shí)現(xiàn)類
public class addServiceimpl implements addService{}
重寫:
? ? 1.連接數(shù)據(jù)庫獲取Connection接口
DBManager dbManager = DBManager.getInstance();
Connection conn = dbManager.getConnection();
? ? 2.調(diào)用DAO層的addDAO
addDAOimpl dao = new addDAOimpl();
3.將conn傳遞給BaseDAO中的setConnection(conn)方法
dao.setConnection(conn);
//調(diào)用DAO方法
return dao.login(name, word);
main測試
//new當(dāng)前類的對象
addServiceimpl ss = new addServiceimpl();
//調(diào)用方法
add addd = ss.isValidate("haha", "123456");
if (addd!=null) {
System.out.println(addd.getName());
}else {
System.out.println("沒有查詢到信息");