Spring5——JdbcTemplate笔记(springmvc jdbctemplate)

  本篇文章为你整理了Spring5——JdbcTemplate笔记(springmvc jdbctemplate)的详细内容,包含有spring-jdbc springmvc jdbctemplate spring-jdbc.jar org.springframework.jdbc Spring5——JdbcTemplate笔记,希望能帮助你了解 Spring5——JdbcTemplate笔记。

  template,翻译过来是模板的意思,顾名思义,JdbcTemplate就是一个JDBC的模板,它对JDBC进行了封装,可以很方便地实现对数据库的CRUD(增、删、改、查)的操作。

  JdbcTemplate准备工作

  引入相关的依赖

  druid-1.1.9.jar

  mysql-connector-java-5.1.7-bin.jar

  spring-tx-5.2.6.RELEASE.jar

  spring-orm-5.2.6.RELEASE.jar

  在这里要注意相关jar包的版本,比如说Java连接MySQL的驱动包的版本应该与目的数据库的版本一致

  配置数据库连接池、在JdbcTemplate对象中注入DataSource(数据源)

  这里用xml配置文件来配置相关的信息

  

 ?xml version="1.0" encoding="UTF-8"? 

 

   beans xmlns="http://www.springframework.org/schema/beans"

   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

   xmlns:context="http://www.springframework.org/schema/context"

   xmlns:aop="http://www.springframework.org/schema/aop"

   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

   http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd

   http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"

   !-- 开启注解扫描--

   context:component-scan base-package="com.ws.spring" /context:component-scan

   !-- 数据库连接池 --

   bean id="dataSource" destroy-method="close"

   property name="url" value="jdbc:mysql:///study" /

   property name="username" value="root" /

   property name="password" value="123" /

   property name="driverClassName" value="com.mysql.jdbc.Driver" /

   /bean

   !-- JdbcTemplate --

   bean id="jdbcTemplate"

   !-- 注入DataSource --

   property name="dataSource" ref="dataSource" /property

   /bean

   /beans

  

 

  JdbcTemplate的使用

  创建service类、创建dao类

  

package com.spring.service;

 

  // service类

  @Service

  public class UserService {

  

 

  

package com.spring.dao;

 

  // dao类

  public interface UserDao {

  

 

  

package com.spring.dao;

 

  // dao的实现类

  @Repository

  public class UserDaoImpl implements UserDao {

  

 

  在service类中注入dao类的对象属性

  

package com.spring.service;

 

  @Service

  public class UserService {

   //注入dao对象

   @Autowired

   private UserDao userDao;

  

 

  在dao类中注入JdbcTemplate对象

  

package com.spring.dao;

 

  @Repository

  public class UserDaoImpl implements UserDao {

   //注入jdbcTemplate对象

   @Autowired

   private JdbcTemplate jdbcTemplate;

  

 

  
String sql = "insert into userinfo values (?,?,?,?)";

   Object[] args = {user.getId(),user.getName(),user.getAge(),user.getEmail()};

   int update = jdbcTemplate.update(sql,args);

   System.out.println(update);

   @Override

   public void updateUser(User user) {

   String sql = "update userinfo set name=? where id=?";

   Object[] args = {user.getName(),user.getId()};

   int update = jdbcTemplate.update(sql, args);

   System.out.println("修改了:"+update);

   @Override

   public void deleteUser(int id) {

   String sql = "delete from userinfo where id=?";

   int update = jdbcTemplate.update(sql, id);

   System.out.println("删除了:"+update);

   //查询表中的记录数

   @Override

   public int selectCount() {

   String sql = "select count(*) from userinfo";

   Integer count = jdbcTemplate.queryForObject(sql, Integer.class);

   return count;

   //查询返回对象

   @Override

   public User findUserInfo(int id) {

   String sql = "select * from userinfo where id=?";

   User user = jdbcTemplate.queryForObject(sql, new BeanPropertyRowMapper User (User.class), id);

   return user;

   //查询返回集合

   @Override

   public List User findAllUser() {

   String sql = "select * from userinfo";

   List User users = jdbcTemplate.query(sql, new BeanPropertyRowMapper User (User.class));

   return users;

   //批量添加

   @Override

   public void batchAddUser(List Object[] batchArgs) {

   String sql = "insert into userinfo values (?,?,?,?)";

   int[] ints = jdbcTemplate.batchUpdate(sql, batchArgs);

   System.out.println(Arrays.toString(ints));

  
List Object[] batchArgs = new ArrayList ();

   Object[] o1 = {11,"java",24,"java@126.com"};

   Object[] o2 = {12,"python",30,"python@126.com"};

   Object[] o3 = {13,"c++",40,"c++@126.com"};

   batchArgs.add(o1);

   batchArgs.add(o2);

   batchArgs.add(o3);

   userService.batchAdd(batchArgs);

  

 

 

  以上就是Spring5——JdbcTemplate笔记(springmvc jdbctemplate)的详细内容,想要了解更多 Spring5——JdbcTemplate笔记的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: