在进行开发时,避免不了要批理更新一些数据,这时候,Hibernate+Spring 要怎么做比较好
执行速度快,性能优
执行速度快,性能优
解决方案 »
- 请高手指导建一个微博网站
- 面向对象分析 面向过程实现,谢谢!
- jdbc连接数据库,怎么监测数据表中有新的记录插入?
- 输入http://localhost:8080/test/出错,但是http://localhost:8080/test/myjsp.jsp可以打开
- tomcat下运行,只执行html部分,jsp不执行,郁闷,是tomcat设置问题吗? 我用的是4.13
- 急急急!!!连接access数据库问题!
- 小问题?
- struts web.xml加载文件问题? 解决即送分 up有分
- 一个输出主体的标记库,死也调试不出结果。。。
- springboot 下 Dubbo 整合Shiro 出错
- 请教如何用JSP与MYSQL连接.
- ssh2构架中对于登陆页面要不要做非法字符的过滤?
楼主【Robin_M】截止到2008-07-28 10:16:43的历史汇总数据(不包括此帖):
发帖的总数量:18 发帖的总分数:470 每贴平均分数:26
回帖的总数量:20 得分贴总数量:1 回帖的得分率:5%
结贴的总数量:18 结贴的总分数:470
无满意结贴数:9 无满意结贴分:350
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:50.00 % 无满意结分率:74.47 %
敬礼!
也可以通过getJdbcTemplate().batchUpdate(sql, setter);
如果要将很多对象持久化,你必须通过经常的调用 flush() 以及稍后调用 clear() 来控制第一级缓存的大小。 Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
for ( int i=0; i<100000; i++ ) {
Customer customer = new Customer(.....);
session.save(customer);
if ( i % 20 == 0 ) { //20, same as the JDBC batch size //20,与JDBC批量设置相同
//flush a batch of inserts and release memory:
//将本批插入的对象立即写入数据库并释放内存
session.flush();
session.clear();
}
}
tx.commit();
session.close();
1.public int[] updatePerson(final String[] ids)
{
String sql ="update person set address=? where id=?";
BatchPreparedStatementSetter setter = new BatchPreparedStatementSetter(){
public void setValues(PreparedStatement ps,int i) throws SQLException{
ps.setString(1, "[email protected]");
ps.setInt(2, Integer.parseInt(ids[i]));
}
public int getBatchSize(){
return ids.length;
}
};
return this.getJdbcTemplate().batchUpdate(sql, setter);
} 2.重载PreparedStatementCreator
public void insertUsers(User ur)
{
this.getJdbcTemplate().update(new PreparedStatementCreator()
{
public PreparedStatement createPreparedStatement(Connection con) throws SQLException
{
String sql = "insert into user (name,age) values(?,?)";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1,"");
ps.setInt(2,0);
return ps;
}
});
}
3.直接写SQL
jdbcTemplate.update("insert into user (name,age) "+"values (' " + name + " ', " +age +")");