1创建Java bean 与表名一致
在里面定义变量 生成getset 方法
2 创建mapping 实现 EntityMapping
//将结果集一行转换为一个对象
(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 全大写, 新对象());
然后再上面定义一个常量
public static final String ADD_MAPPING = "addMapping";
4.建立DAO 接口
写一个登入的方法
/**
* 登录
* @param username
* @param password
* @return add对象登入者的名字
* 返回一个add对象,因为要在页面上显示
*/
public add login(String username,String password);
5.写DAO 的实现类
public class addDAOimpl extends BaseDAO implements addDAO{}
方法:
public add login(String name, String word) {}
重写:
先写一条sql语句
String sql = "SELECT * FROM ADD WHERE NAME=? AND PASS=?";
然后调用模板类中的方法
接着对象要从工厂里取
//从工厂里通过类名取常量
EntityMapping mapping =
mappingFactory.getMapping(MappingFactory.ADD_MAPPING);
EntityMapping接口 属性名 = BaeDAO里的属性名.获取(类名(工厂).工厂里的常量)
List
查询用query
jdbcTemplate.query(sql, mapping, name(方法里的参数),word(方法里的参数));
然后谁调用的拿谁接 , 前面用list集合接
然后因为add对象此时已经在list集合里了要取出来
if (list.size()>0) {
//里面只有一个元素 如果list.size>0则有元素,反之则无
return (add) list.get(0);
}
return null;(反之)
6.创建业务层service
public interface addService {
/**
* 业务层登入的方法
* @param name
* @param word
* @return add
*/
public add isValidate(String name,String word);
}
7.创建实现类
public class addServiceimpl implements addService{}
重写:
1.连接数据库获取Connection接口
DBManager dbManager = DBManager.getInstance();
Connection conn = dbManager.getConnection();
2.调用DAO层的addDAO
addDAOimpl dao = new addDAOimpl();
3.将conn传递给BaseDAO中的setConnection(conn)方法
dao.setConnection(conn);
//调用DAO方法
return dao.login(name, word);
main测试
//new当前类的对象
addServiceimpl ss = new addServiceimpl();
//调用方法
add addd = ss.isValidate("haha", "123456");
if (addd!=null) {
System.out.println(addd.getName());
}else {
System.out.println("没有查询到信息");