Spring 操作数据库

时间:2022-06-01 05:20:37

试了一下spring的JdbcTemplate觉得很好用。首先增加一个连接到mysql数据库的dataSource

<bean id="dataSource2" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close">
<property name="driverClassName"><value>org.hibernate.dialect.MySQLDialect</value></property>
<property name="url">
<value>jdbc:mysql://192.168.0.240:3306/wordpressωuseUnicode=true&amp;characterEncoding=utf8</value>
</property>
<property name="username"><value>root</value></property>
<property name="password"><value></value></property>
</bean>
 public void testCopyData() throws Exception{
DataSource ds = (DataSource)applicationContext.getBean("dataSource2"); CategoryManager cateManager = (CategoryManager) applicationContext.getBean("categoryManager"); JdbcTemplate jt = new JdbcTemplate(ds);
System.out.println("Total posts:"+jt.queryForInt("select count(*) from wp_posts"));
assertNotNull(ds); List cates = jt.queryForList("select * from wp_categories");
int i= 0;
for(Iterator ite = cates.iterator(); ite.hasNext();){
i++;
Map result = (Map) ite.next();
Category cate = new Category();
cate.setName((String)result.get("cat_name"));
cate.setOrder(i);
if(i==1)
cate.setDefaultCategory(true);
cateManager.saveCategory(cate);
System.out.println("cat_name:"+result.get("cat_name")+"\n");
}
}