package com.spring.jdbcTemplate;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.junit.Test;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import com.spring.User.User;
public class jdbcTemplateQuery {
/**
* 查詢表有多少條記錄
*/
@Test
public void testCount(){
DriverManagerDataSource dataSource = new DriverManagerDataSource();
//設置數據庫信息
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/lihai?useUnicode=true&characterEncoding=utf-8&useSSL=false");
dataSource.setUsername("root");
dataSource.setPassword("111111");
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
String sql = "select count(*) from jdbc_user";
int count = jdbcTemplate.queryForObject(sql, Integer.class);//第二個參數:返回類型的class
System.out.println(count);
}
/**
* 查詢表返回對象
*/
@Test
public void testObject(){
DriverManagerDataSource dataSource = new DriverManagerDataSource();
//設置數據庫信息
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/lihai?useUnicode=true&characterEncoding=utf-8&useSSL=false");
dataSource.setUsername("root");
dataSource.setPassword("111111");
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
String sql = "select * from jdbc_user where username=?";
//int count = jdbcTemplate.queryForObject(sql, rowMapper, args)
//方法第二個參數:需要自己寫類實現接口,自己做數據封裝
User user = jdbcTemplate.queryForObject(sql, new MyRowMapper(), "kylon");
System.out.println(user);
}
/**
* 查詢表返回list
*/
@Test
public void testList(){
DriverManagerDataSource dataSource = new DriverManagerDataSource();
//設置數據庫信息
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/lihai?useUnicode=true&characterEncoding=utf-8&useSSL=false");
dataSource.setUsername("root");
dataSource.setPassword("111111");
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
String sql = "select * from jdbc_user";
//int count = jdbcTemplate.queryForObject(sql, rowMapper, args)
//方法第二個參數:需要自己寫類實現接口,自己做數據封裝
List<User> list = jdbcTemplate.query(sql, new MyRowMapper());
System.out.println(list);
}
}
class MyRowMapper implements RowMapper<User>{
public User mapRow(ResultSet rs, int num) throws SQLException {
//從結果集得到數據
String username = rs.getString("username");
String password = rs.getString("password");
//把得到的數據封裝到對象
User user = new User();
user.setPassword(password);
user.setUsername(username);
return user;
}
}
jdbcTemplate關於crud
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.