读书人

调用JdbcTemplate兑现修改更新

发布时间: 2012-12-28 10:29:05 作者: rapoo

调用JdbcTemplate实现修改更新

下面的代码是实现了根据对象的id来更新改对象的信息。

1、在serviceImpl.java中写如下代码实现

public class ConGoodsServiceImpl extends HibernateServiceSupport implements ConGoodsService{private JdbcTemplate jdbcTemplate;public JdbcTemplate getJdbcTemplate() {return jdbcTemplate;}public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {this.jdbcTemplate = jdbcTemplate;}public  void updateOutput(ConGoods conGoods) throws Exception{jdbcTemplate.update("UPDATE ast_consumables_goods SET inid = ? , outid = ? , goodsname = ? , unit = ? , goodsstyle = ? , goodsnumber = ? , unitprice = ? , amount = ? , productdate = ? , brand = ? WHERE id = ?", new Object[] {conGoods.getInid(),conGoods.getOutid(),conGoods.getGoodsname(),conGoods.getUnit(),conGoods.getGoodsstyle(),conGoods.getGoodsnumber(),conGoods.getUnitprice(),conGoods.getAmount(),conGoods.getProductdate(),conGoods.getBrand(),conGoods.getId()});  }//其实jdbcTemplate.update(中是一条SQL语句)。在w3cschool中可以看到sql的基本操作}

?2、在applicationContext.xml中添加如下配置

<bean id="conGoodsTarget" ref="astHibernateTemplate"></property>//引入jdbctemplate <property name="jdbcTemplate" ref="astJdbcTemplate"></property></bean><bean id="conGoodsService" parent="conGoodsTarget" ></bean>

?3、在后台中调用updateOutput()就可以实现

       ConGoods conGoods = new ConGoods();       conGoods.setOutid(uuid);       conGoods.setInid(jo.getString("inid"));       conGoods.setId(jo.getString("id"));    conGoods.setGoodsname(jo.getString("goodsname"));     conGoods.setUnit(jo.getString("unit"));    conGoods.setGoodsstyle(jo.getString("goodsstyle"));    conGoods.setGoodsnumber(jo.getString("goodsnumber"));    conGoodsService.updateOutput(conGoods);

?JdbcTemplate将我们使用的JDBC的流程封装起来,包括了异常的捕捉、SQL的执行、查询结果的转换等等。spring大量使用Template Method模式来封装固定流程的动作,XXXTemplate等类别都是基于这种方式的实现。

读书人网 >其他数据库

热点推荐