当前位置: 首页 > 图文教程 > Java技术 > 数据库持久层 > 流行持久层框架对数据库操作
Hibernate and Spring
删除
hibernateTemplate.delete(对象);
保存
hibernateTemplate.save(对象);
更新
hibernateTemplate.update(对象);
查询返回一个值
hibernateTemplate.get(对象.class, id);
查询返回多个值
hibernateTemplate.find(hql查询语句);
String hql = "from Info";
this.hibernateTemplate = this.getHibernateTemplate();
List list = this.hibernateTemplate.find(hql);
参数绑定查询
queryString.append(" from UserInfo user ");
queryString.append(" where user.userName =:name and user.passWord = :password ");
this.hibernateTemplate = this.getHibernateTemplate();
String[] strParanertName = { "name", "password" };//参数名
String[] strPanrentValue = { name, passWord };//参数值
List list = this.hibernateTemplate.findByNamedParam(queryString
.toString(), strParanertName, strPanrentValue);
Ibatic and Spring
保存
sqlMapTemplate.update("saveInfo", 对象);
更新
sqlMapTemplate.update("updateInfo", 对象);
删除
sqlMapTemplate.delete("deleteInfo", 对象);
查询返回一个值
sqlMapTemplate.queryForObject("getInfo", 参数);
查询返回多个值
sqlMapTemplate.queryForList("searhInfoAll");
参数绑定查询
//保存多个参数
Map paramertMap = new HashMap();
paramertMap.put("userName", name);
paramertMap.put("passWord", passWord);
List list = sqlMap.queryForList("searchUserInfo", paramertMap);
Jdbc and Spring
保存
String strSql = "insert into info(name,othername,depart,result) values (:name,:othername,:depart,:result)";
NamedParameterJdbcTemplate template = new NamedParameterJdbcTemplate(
this.getDataSource());
Map namedParameters = new HashMap();
namedParameters.put("name", info.getName());
namedParameters.put("othername", info.getOthername());
namedParameters.put("depart", info.getDepart());
namedParameters.put("result", info.getResult());
template.update(strSql, namedParameters);
更新
String strSql = "update info set name=:name,othername=:othername,depart=:depart,result=:result where id=:id";
NamedParameterJdbcTemplate template = new NamedParameterJdbcTemplate( this.getDataSource());
Map namedParameters = new HashMap();
namedParameters.put("name", newInfo.getName());
namedParameters.put("othername", newInfo.getOthername());
namedParameters.put("depart", newInfo.getDepart());
namedParameters.put("result", newInfo.getResult());
namedParameters.put("id", newInfo.getId());
template.update(strSql, namedParameters);
删除
String strSql = "delete from info where id=:id";
NamedParameterJdbcTemplate template = new NamedParameterJdbcTemplate(
this.getDataSource());
SqlParameterSource namedParameters = new MapSqlParameterSource("id", id);
template.update(strSql, namedParameters);
查询返回一个值
String strSql = "select id,name,depart,result,othername from info where id=:id";
NamedParameterJdbcTemplate template = new NamedParameterJdbcTemplate(
this.getDataSource());
SqlParameterSource namedParameters = new MapSqlParameterSource("id", id);
RowMapper mapper = new RowMapper() {
public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
Info info = new Info();
info.setId(rs.getInt("id"));
info.setDepart(rs.getString("depart"));
info.setName(rs.getString("name"));
info.setOthername(rs.getString("othername"));
info.setResult(rs.getInt("result"));
return info;
}
};
Info info = (Info) template.queryForObject(strSql, namedParameters, mapper);
查询返回多个值
final List list = new ArrayList();
this.getJdbcTemplate().query("select * from info",
new RowCallbackHandler() {//接口回调
Info info = null;
//结果集映射
public void processRow(ResultSet rs) throws SQLException {
while (rs.next()) {
info = new Info(); info.setId(rs.getInt("id")); info.setDepart(rs.getString("depart"));
info.setName(rs.getString("name"));
info.setOthername(rs.getString("othername"));
info.setResult(rs.getInt("result"));
list.add(info);
}
}
});
参数绑定查询
private class UserInfoMapper implements RowMapper {
private class UserInfoMapper implements RowMapper {
@Override
public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
// TODO Auto-generated method stub
UserInfo user = new UserInfo();
user.setId(rs.getInt("id"));
user.setUserName(rs.getString("userName"));
user.setPassWord(rs.getString("passWord"));
user.setEmail(rs.getString("email"));
return user;
}
}
//查询操作
StringBuffer strSql = new StringBuffer();
strSql.append(" select id,userName,passWord,email from userinfo where userName=? and passWord=? ");
this.jdbcTemplate = this.getJdbcTemplate();
List list = this.jdbcTemplate.query(strSql.toString(), new Object[] {
name, passWord }, new UserInfoMapper());
return list;
}
评论 (0) All