首页 > 技术文章 > Spring-JDBCTemplate操作数据库(增删改)

orzjiangxiaoyu 2020-08-18 15:41 原文

1.对应数据库表创建实体类

2.编写service和dao

(1)在dao进行数据库添加操作

(2)调用jdbcTemplate对象里面update的方法实现添加操作

update(String sql, Object... args)

有两个参数

第一个参数:sql语句

第二个参数:可变形参,设置sql语句值

 

1.对应数据库表创建实体类

package com.orzjiangxiaoyu.spring.entity;

import org.springframework.stereotype.Component;

/**
 * @author orz
 * @create 2020-08-18 9:48
 */
public class User {
    private int userId;
    private String username;
    private String ustatus;

    public int getUserId() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getUstatus() {
        return ustatus;
    }

    public void setUstatus(String ustatus) {
        this.ustatus = ustatus;
    }

    @Override
    public String toString() {
        return "User{" +
                "userId=" + userId +
                ", username='" + username + '\'' +
                ", ustatus='" + ustatus + '\'' +
                '}';
    }
}

2.编写service和dao

(1)在dao进行数据库添加操作

(2)调用jdbcTemplate对象里面update的方法实现添加操作

package com.orzjiangxiaoyu.spring.dao;

import com.orzjiangxiaoyu.spring.entity.User;

import java.util.List;

/**
 * @author orz
 * @create 2020-08-18 9:36
 */
public interface UserDao {

    public void add(User user);

    public void update(User user);

    public void delete(int id);

    
}
package com.orzjiangxiaoyu.spring.dao;

import com.orzjiangxiaoyu.spring.entity.User;
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;

/**
 * @author orz
 * @create 2020-08-18 9:37
 */
@Repository
public class UserDaoImpl implements UserDao {

    //注入JdbcTemplate
    @Autowired
    private JdbcTemplate jdbcTemplate;


    @Override
    public void add(User user) {
        //1.创建sql语句
        String sql = "insert into t_user(user_id,username,ustatus) values(?,?,?)";
        //2.调用方法实现
        Object[] args = {user.getUserId(), user.getUsername(), user.getUstatus()};
        int i = jdbcTemplate.update(sql, args);
        System.out.println(i);


    }

    @Override
    public void update(User user) {
        //1.创建sql语句
        String sql = "update t_user set username=?,ustatus=? where user_id=?";
        //2.调用方法实现
        Object[] args = {user.getUsername(), user.getUstatus(), user.getUserId()};
        int i = jdbcTemplate.update(sql, args);
        System.out.println(i);
    }

    @Override
    public void delete(int id) {
        //1.创建sql语句
        String sql = "delete from t_user where user_id=?";
        //2.调用方法实现

        int i = jdbcTemplate.update(sql, id);
        System.out.println(i);
    }

   

}
package com.orzjiangxiaoyu.spring.service;

import com.orzjiangxiaoyu.spring.dao.UserDao;
import com.orzjiangxiaoyu.spring.entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @author orz
 * @create 2020-08-18 9:36
 */
@Service
public class UserService {
    //注入dao
    @Autowired
    private UserDao userDao;

   //  添加的方法
    public void add(User user)
    {
        userDao.add(user);
    }

    //修改的方法
    public void update(User user)
    {
        userDao.update(user);
    }

    //删除的方法
    public void delete(int id)
    {
        userDao.delete(id);
    }

}

测试

package com.orzjiangxiaoyu.spring.mysqltestdemo;

import com.orzjiangxiaoyu.spring.entity.User;
import com.orzjiangxiaoyu.spring.service.UserService;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.util.ArrayList;
import java.util.List;

/**
 * @author orz
 * @create 2020-08-18 10:20
 */
public class Test2 {
    //增加

    @Test
    public void test1()
    {
        ApplicationContext context=new ClassPathXmlApplicationContext("jdbcbean.xml");

        UserService userService = context.getBean("userService", UserService.class);
        User user = new User();
        user.setUserId(1);
        user.setUsername("Tom");
        user.setUstatus("islive");
        userService.add(user);
    }

    //修改

    @Test
    public void test2()
    {
        ApplicationContext context=new ClassPathXmlApplicationContext("jdbcbean.xml");

        UserService userService = context.getBean("userService", UserService.class);
        User user = new User();
        user.setUserId(1);
        user.setUsername("Cat");
        user.setUstatus("fat");
        userService.update(user);
    }

    //删除

    @Test
    public void test3()
    {
        ApplicationContext context=new ClassPathXmlApplicationContext("jdbcbean.xml");

        UserService userService = context.getBean("userService", UserService.class);

        userService.delete(1);
    }


}

 

推荐阅读