首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

Spring jdbcTemplate施用(二)

2013-07-11 
Spring jdbcTemplate应用(二)1.Java代码public?boolean?switchStartOrderMeeting(String?argument,?String

Spring jdbcTemplate应用(二)

1.Java代码

  1. public?boolean?switchStartOrderMeeting(String?argument,?String?flag)??
  2. ????????????throws?DataAccessException?{??
  3. ????????boolean?result?=?false;??
  4. ????????String?sql?=???
  5. ????????????sql?=?"update?COMPETITION_BASE_T?t?set?T.F_COMPETE_ORDER_STATE?=?'0'"+??
  6. ????????????"?where?T.F_COMPETITION_ID?=??";??
  7. ????????int?i?=?0;??
  8. ????????//返回所影响的行数??
  9. ????????i?=?this.getJdbcTemplate().update(sql,?new?Object[]?{?argument?});??
  10. ????????if?(i?>?0)?{??
  11. ????????????result?=?true;??
  12. ????????}??
  13. ????????return?result;??
  14. ????}??

?

?

?

?这个方法很简单,update方法只要传入sql脚本和脚本参数(Object数组类型)。

?

?

?

2. JdbcTemplate 调用存储过程

?

Java代码
  1. /**代码片段*/??
  2. //5个输入参数,3个输出参数??
  3. String?sql?=?"{call?GENERATEORDERS_P(?,?,?,?,?,?,?,?)}";??
  4. ??????????????????????????????
  5. final?String?company_id?=?result.get("F_COMPANY_ID").toString();???????????//?公司ID??
  6. final?String?competition_id?=?result.get("F_COMPETITION_ID").toString();???//?比赛ID??
  7. final?String?current_phase?=?result.get("F_CURRENT_PHASE").toString();?????//?当前周期??
  8. final?String?market_scope_id?=?result.get("F_MARKET_SCOPE_ID").toString();?//?市场ID??
  9. final?String?market_loca_id?=?result.get("F_MARKET_LOCA_ID").toString();???//?产品类型ID??
  10. ??
  11. Map?mapR?=?(Map)?getJdbcTemplate().execute(sql,new?CallableStatementCallback()?{??
  12. ????????????public?Object?doInCallableStatement(CallableStatement?cs)throws?SQLException,DataAccessException?{??
  13. ????????????????cs.setString(1,?current_phase);????//?输入参数??
  14. ????????????????cs.setString(2,?competition_id);???//?输入参数??
  15. ????????????????cs.setString(3,?market_scope_id);??//?输入参数??
  16. ????????????????cs.setString(4,?market_loca_id);???//?输入参数??
  17. ????????????????cs.setString(5,?company_id);???????//?输入参数??
  18. ????????????????cs.registerOutParameter(6,Types.VARCHAR);//输出参数??
  19. ????????????????cs.registerOutParameter(7,Types.VARCHAR);//输出参数??
  20. ????????????????cs.registerOutParameter(8,Types.VARCHAR);//输出参数??
  21. ????????????????cs.execute();??
  22. ????????????????Map?map?=?new?HashMap();??
  23. ????????????????map.put("RESULT",?cs.getString(6));???????//?订单数量??
  24. ????????????????map.put("F_PRICE",?cs.getString(7));??????//?订单价格??
  25. ????????????????map.put("F_CPUT_MOD_ID",?cs.getString(8));//?产品型号ID??
  26. ????????????????return?map;??
  27. ????????????}??
  28. ????????});??

?

?

?

?

?

?execute方法返回的是一个Object对象,在这里我封装了一个Map对象返回。

热点排行