spring RowMapper回调接口的使用 以及jdbc模板提供的queryfor系列的方法摘要

时间:2021-04-28 23:18:40

 

public void queryFor() throws Exception {

StringBuilder sql=new StringBuilder()

.append("select pid,pname,psex,pnationality,phobby,pdescription from person where pid=?")

;

Object args[]={12};

Person p=(Person)this.getJdbcTemplate().queryForObject(

sql.toString(), 

args, 

new RowMapper(){

public Object mapRow(ResultSet rs, int arg1)throws SQLException {

Person p=new Person();

p.setPid(rs.getInt(1));

p.setPname(rs.getString(2));

p.setPsex(rs.getString(3));

p.setPnationality(rs.getString(4));

p.setPhobby(rs.getString(5));

p.setPdescription(rs.getString(6));

return p;

}

}

);

System.out.println(p.getPid());

System.out.println(p.getPname());

}

 

 

注:spring的jdbc模板提供的queryfor系列的方法摘要:

queryForList(String sql,Object args[],Class elementType)

Object args[]:sql语句中的 问号查询

Class elementType 可以查多条记录的一列 这列的类型可以自己定义 如:String.class

 

queryForObject(String sql,Class requiredType)只能查询一条记录的一列