杨陵区住房和城乡建设局网站,网站项目宣传片,wordpress添加单页,好网站推荐一下其实这个操作和批量添加挺像的 调的同一个方法
首先 我们看数据库结构 这是我本地的 mysql 里面有一个test数据库 里面有一张user_list表
然后创建一个java项目 然后 引入对应的JAR包 在src下创建 dao 目录
在下面创建一个接口 叫 BookDao 参考代码如下
package dao;impo…其实这个操作和批量添加挺像的 调的同一个方法
首先 我们看数据库结构 这是我本地的 mysql 里面有一个test数据库 里面有一张user_list表
然后创建一个java项目 然后 引入对应的JAR包 在src下创建 dao 目录
在下面创建一个接口 叫 BookDao 参考代码如下
package dao;import mydata.user_list;
import java.util.List;public interface BookDao {void reviseUser(ListObject [] user_list);
}这里 我们顶一个了一个reviseUser抽象方法 引入了一个以数组泛型的List集合 然后 我们在dao 目录下创建一个类 我这里叫 BookDaoImpl 参考代码如下
package dao;import mydata.user_list;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;import java.util.Arrays;
import java.util.List;Repository
public class BookDaoImpl implements BookDao {Autowiredprivate JdbcTemplate jdbcTemplate;Overridepublic void reviseUser(ListObject [] user_list) {String sql UPDATE user_list SET user_name ? WHERE user_id ?;;int[] ints jdbcTemplate.batchUpdate(sql,user_list);System.out.println(Arrays.toString(ints));}
}这里 我们实现了BookDao接口 然后重写了 他的 reviseUser方法 这里 我们调用了jdbcTemplate的batchUpdate 第一个参数 接收一段sql语句 第二个参数 则是一个数组泛型集合
然后 在 src下创建目录 叫 senvice 下面创建一个类 叫 BookService 参考代码如下
package senvice;import dao.BookDao;
import mydata.user_list;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;Service
public class BookService {Autowiredprotected BookDao BookDao;public void reviseUser(ListObject [] user_list){BookDao.reviseUser(user_list);}
}这里 我们多做了一层调用而已 为了架构 然后 在src下创建一个 bean.xml配置文件 参考代码如下
?xml version1.0 encodingUTF-8?
beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlns:contexthttp://www.springframework.org/schema/contextxsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd!-- 数据库连接池 --bean iddataSource classcom.alibaba.druid.pool.DruidDataSourcedestroy-methodcloseproperty nameurl valuejdbc:mysql:///test /!--对应SQLyog里的数据库--property nameusername valueroot / !-- 用户名 --property namepassword valueroot / !-- 密码 --property namedriverClassName valuecom.mysql.jdbc.Driver //bean!-- JdbcTemplate对象 --bean idjdbcTemplate classorg.springframework.jdbc.core.JdbcTemplate!--注入dataSource属性--property namedataSource refdataSource/property/beancontext:component-scan base-packagesenvice/context:component-scancontext:component-scan base-packagedao/context:component-scan/beans这些基本的链接数据库配置 我就不多讲了
然后 我们在src目录下创建测试类 编写代码如下
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import senvice.BookService;import java.util.ArrayList;
import java.util.List;public class text {public static void main(String args[]) {ApplicationContext context new ClassPathXmlApplicationContext(bean.xml);BookService bookService context.getBean(bookService, BookService.class);ListObject[] batehArgs new ArrayList();Object[] o1 {曹操,10};Object[] o2 {刘备,11};Object[] o3 {孙权,12};batehArgs.add(o1);batehArgs.add(o2);batehArgs.add(o3);bookService.reviseUser(batehArgs);}
}之所以这样写 是因为我们写的sql 第一个问号对应要修改成什么样的名称 第二个 则是条件id 我们这里写的几个id分别是 10 11 12
我们看一下这几条数据 然后 我们运行测试类代码
运行结果如下 可以看到 系统控制台显示运行成功 返回了每次sql的影响行数都是一行
我们到数据库 刷新表并重新打开 我们这几条数据就修改成功啦