1、在mysql数据库 test数据库执行语句
/*
Navicat MariaDB Data Transfer
Source Server : 本地1
Source Server Version : 100221
Source Host : localhost:3336
Source Database : test
Target Server Type : MariaDB
Target Server Version : 100221
File Encoding : 65001
Date: 2019-04-11 10:31:00
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for t_test
-- ----------------------------
DROP TABLE IF EXISTS `t_test`;
CREATE TABLE `t_test` (
`t_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`t_id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=1224 DEFAULT CHARSET=latin1;
2、增加po数据模型
public class Test {
private int t_id;
private String name;
public int getT_id() {
return t_id;
}
public void setT_id(int t_id) {
this.t_id = t_id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
3、创建Mapper类
public class TestRow implements RowMapper<Test> {
@Override
public Test mapRow(ResultSet rs, int rowNum) throws SQLException {
Test test = new Test();
test.setName(rs.getNString("name"));
test.setT_id(rs.getInt("t_id"));
return test;
}
}
4、建立查询
DruidDataSource dataSource = new DruidDataSource();
dataSource.setName("test");
dataSource.setUrl("jdbc:mysql://localhost:3336/test");
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUsername("root");
dataSource.setPassword("32365sun");
JdbcTemplate template = new JdbcTemplate();
template.setDataSource(dataSource);
List<Object> params = new ArrayList<>();
params.add(1);
params.add(3);
StringBuffer buffer = new StringBuffer("select * from t_test where t_id in (");
for(int i = 0;i<params.size();i++){
buffer.append("?,");
}
String sql = buffer.substring(0,buffer.length()-1);
sql += ")";
List<Test> list = template.query(sql, params.toArray(),new TestRow());
for (Test item : list){
System.out.println(item.getName()+" "+item.getT_id());
}