日期:2014-05-16  浏览次数:20410 次

spring simpleJdbcTemplate 事务

?

?

?

这个是别人写的,觉得受用,所以存下来。。。。

?

Spring的JDBC框架能够承担资源管理和异常处理的工作,从而简化我们的JDBC代码,
让我们只需编写从数据库读写数据所必需的代 码。Spring把数据访问的样板代码隐藏到模板类之下,
结合Spring的事务管理,可以大大简化我们的代码.
Spring提供了 3个模板类:
JdbcTemplate:Spring里最基本的JDBC模板,利用JDBC和简单的索引参数查询提供对数据库的简单访问。
NamedParameterJdbcTemplate: 能够在执行查询时把值绑定到SQL里的命名参数,而不是使用索引参数。
SimpleJdbcTemplate:利用Java 5的特性,比如自动装箱、通用(generic)和可变参数列表来简化JDBC模板的使用。
具体使用哪个模板基本上取决于个人喜好。
使 用Spring的JdbcTemplate来实现简单的增删改查,首先建立测试数据表person
create table person(
id int not null primary key auto_increment,
name varchar(20) not null
)
导入依赖的jar包,由于测试中数据源使用的是dbcp数据源,需要以下jar包支持:
commons-logging.jar
commons-pool.jar
commons-dbcp.jar
同时还必须导入数据库驱动jar包:mysql-connector-java-3.1.8- bin.jar
建立实体bean
Person.java

Java 代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=package%20com.royzhou.jdbc%3B%0A%0Apublic%20class%20PersonBean%20%7B%0A%09private%20int%20id%3B%0A%09private%20String%20name%3B%0A%0A%09public%20PersonBean()%20%7B%0A%09%7D%0A%09%0A%09public%20PersonBean(String%20name)%20%7B%0A%09%09this.name%20%3D%20name%3B%0A%09%7D%0A%09%0A%09public%20PersonBean(int%20id%2C%20String%20name)%20%7B%0A%09%09this.id%20%3D%20id%3B%0A%09%09this.name%20%3D%20name%3B%0A%09%7D%0A%09%20%0A%09public%20int%20getId()%20%7B%0A%09%09return%20id%3B%0A%09%7D%0A%0A%09public%20void%20setId(int%20id)%20%7B%0A%09%09this.id%20%3D%20id%3B%0A%09%7D%0A%0A%09public%20String%20getName()%20%7B%0A%09%09return%20name%3B%0A%09%7D%0A%0A%09public%20void%20setName(String%20name)%20%7B%0A%09%09this.name%20%3D%20name%3B%0A%09%7D%0A%09%0A%09public%20String%20toString()%20%7B%0A%09%09return%20this.id%20%2B%20%22%3A%22%20%2B%20this.name%3B%0A%09%7D%0A%7D%0A" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. package ?com.royzhou.jdbc;??
  2. ??
  3. public ? class ?PersonBean?{??
  4. ????private ? int ?id;??
  5. ????private ?String?name;??
  6. ??
  7. ????public ?PersonBean()?{??
  8. ????}??
  9. ??????
  10. ????public ?PersonBean(String?name)?{??
  11. ????????this .name?=?name;??
  12. ????}??
  13. ??????
  14. ????public ?PersonBean( int ?id,?String?name)?{??
  15. ????????this .id?=?id;??
  16. ????????this .name?=?name;??
  17. ????}??
  18. ???????
  19. ????public ? int ?getId()?{??
  20. ????????return ?id;??
  21. ????}??
  22. ??
  23. ????public ? void ?setId( int ?id)?{??
  24. ????????