Spring-JDBCTemplate操作數據庫(查詢)


jdbcTemplate操作數據庫(查詢)

 

一、查詢返回某個值

 查詢表里面有多少條記錄,返回是某個值

queryForObject(String sql, Class<T> requiredType)

 第一個參數:sql語句

 第二個參數:返回類型Class

 

 

二、查詢返回對象

queryForObject(String sql, RowMapper  rowMapper, Object... args) 

 第一個參數:sql語句

 第二個參數:RowMapper,是接口,返回不同類型數據,使用這個接口里面實現類完成數據封裝

 第三個參數:sql語句值

 

 

三、查詢返回集合

query(String sql, RowMapper<T> rowMapper, @Nullable Object... args)
第一個參數:sql
第二個參數:RowMapper,是接口,返回不同類型數據,使用這個接口里面實現類完成數據封裝
第三個參數:sql語句值



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 int findCount();

    public User findUserInfo(int id);

    public List<User> findUserListInfo();

}
 
        
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 int findCount() {
        //1.創建sql語句
        String sql = "select count(*) from t_user";
        //2.調用方法實現

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

        return count;
    }

    @Override
    public User findUserInfo(int id) {

        //1.創建sql語句
        String sql = "select * from t_user where user_id=?";
        //2.調用方法實現

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

    }

    @Override
    public List<User> findUserListInfo() {
        //1.創建sql語句
        String sql = "select * from t_user ";
        //2.調用方法實現

        List<User> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper<User>(User.class));


        return list;
    }

   
}
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 int selectCount()
    {
        int i=userDao.findCount();
        return i;
    }

    //查詢返回對象
    public User findUser(int id)
    {

        return userDao.findUserInfo(id);

    }

    //查詢返回集合
    public List<User> findUserList()
    {
        return userDao.findUserListInfo();
    }


    
}
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 test4()
    {
        ApplicationContext context=new ClassPathXmlApplicationContext("jdbcbean.xml");

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

        int i = userService.selectCount();
        System.out.println(i);
    }

    //查詢返回對象
    @Test
    public void test5()
    {
        ApplicationContext context=new ClassPathXmlApplicationContext("jdbcbean.xml");

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

        User user = userService.findUser(1);
        System.out.println(user);
    }

    //查詢返回集合
    @Test
    public void test6()
    {
        ApplicationContext context=new ClassPathXmlApplicationContext("jdbcbean.xml");

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

        List<User> userList = userService.findUserList();
        System.out.println(userList);
    }

  

}

 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM