package D1; import org.junit.Test; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.BeanPropertyRowMapper; import org.springframework.jdbc.core.JdbcTemplate; import java.util.List; /** * @Author: {---Kyousuke---} * @Date: 2019/8/9 21:22 */ public class Demo3 { private static JdbcTemplate temp = new JdbcTemplate(JDBCUtils.getDataSource()); public static void main(String[] args) { // temp.queryForList(); //返回一个元素为map的list集合 // temp.queryForObject(); //返回一个封装了记录的对象 // temp.queryForMap(); //返回一个元素为一行记录的一个map集合 // temp.update(); //执行sql(增删改) // temp.execute(); //执行sql语句 // temp.query(); //查询结果返回一个一组javabean对象的list集合 } @Test @SuppressWarnings("all") public void test1(){ //查询student3表里的所有记录并封装成对象 String sql1="select * from student3"; //会匹配字段名,如果没有就不赋值 //如果不写set方法,对象就不会被赋值 List<Student> list = temp.query(sql1, new BeanPropertyRowMapper<Student>(Student.class)); for (Student student : list) { System.out.println(student); } } @Test public void test2(){ //执行DML语句 String sql2="update student3 set address=‘广东‘ where id=?"; int count = temp.update(sql2, "1"); System.out.println(count); } @Test public void test3(){ //执行任意sql语句 String sql3="insert into student3 values(‘10‘,‘Sam‘,‘22‘,‘男‘,‘广东‘,‘77‘,‘88‘)"; temp.execute(sql3); } @Test public void test4(){ //执行单条记录查询 String sql4="select * from student3 where id=?"; Student student1=null; try { student1= temp.queryForObject(sql4, new BeanPropertyRowMapper<Student>(Student.class),8); } catch (DataAccessException e) { e.printStackTrace(); } if(student1!=null){ System.out.println(student1); }else{ System.out.println("没有记录"); } } @Test public void test5(){ //执行聚合查询 String sql5="select count(id) from student3"; Integer count = temp.queryForObject(sql5, Integer.class); System.out.println(count); } @Test public void test6(){ //执行多条sql语句 String[] ss = {"insert into student3 values(‘11‘,‘友利奈绪‘,‘22‘,‘女‘,‘广东‘,‘77‘,‘88‘)", "insert into student3 values(‘12‘,‘高坂桐乃‘,‘22‘,‘女‘,‘广东‘,‘77‘,‘88‘)"}; temp.batchUpdate(ss); } }
JDBCTemplate是spring提供简化的JDBC封装
package D1; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSource; import java.sql.Connection; import java.util.Properties; /** * @Author: {---Kyousuke---} * @Date: 2019/8/9 21:23 */ public class JDBCUtils { @SuppressWarnings("all") public static DataSource getDataSource(){ try { Properties proper = new Properties(); proper.load(Demo2.class.getClassLoader().getResourceAsStream("druid.properties")); DataSource ds = DruidDataSourceFactory.createDataSource(proper); return ds; } catch (Exception e) { e.printStackTrace(); } return null; } }
package D1; /** * @Author: {---Kyousuke---} * @Date: 2019/8/9 21:43 */ public class Student { private int id; private String name; private int age; private String sex; private String address; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } @Override public String toString() { return "Student{" + "id=" + id + ", name=‘" + name + ‘\‘‘ + ", age=" + age + ", sex=‘" + sex + ‘\‘‘ + ", address=‘" + address + ‘\‘‘ + ‘}‘; } }
各各查询语句的结果
test1
public void test1(){ //查询student3表里的所有记录并封装成对象 String sql1="select * from student3"; //会匹配字段名,如果没有就不赋值 //如果不写set方法,对象就不会被赋值 List<Student> list = temp.query(sql1, new BeanPropertyRowMapper<Student>(Student.class)); for (Student student : list) { System.out.println(student); } }
test2
@Test public void test2(){ //执行DML语句 String sql2="update student3 set address=‘广东‘ where id=?"; int count = temp.update(sql2, "1"); System.out.println(count); }
test3
@Test public void test3(){ //执行任意sql语句 String sql3="insert into student3 values(‘10‘,‘Sam‘,‘22‘,‘男‘,‘广东‘,‘77‘,‘88‘)"; temp.execute(sql3); }
test4
@Test public void test4(){ //执行单条记录查询 String sql4="select * from student3 where id=?"; Student student1=null; try { student1= temp.queryForObject(sql4, new BeanPropertyRowMapper<Student>(Student.class),8); } catch (DataAccessException e) { e.printStackTrace(); } if(student1!=null){ System.out.println(student1); }else{ System.out.println("没有记录"); } }
test5
@Test public void test5(){ //执行聚合查询 String sql5="select count(id) from student3"; Integer count = temp.queryForObject(sql5, Integer.class); System.out.println(count); }
test6
@Test public void test6(){ //执行多条sql语句 String[] ss = {"insert into student3 values(‘11‘,‘友利奈绪‘,‘22‘,‘女‘,‘广东‘,‘77‘,‘88‘)", "insert into student3 values(‘12‘,‘高坂桐乃‘,‘22‘,‘女‘,‘广东‘,‘77‘,‘88‘)"}; temp.batchUpdate(ss); }
http://music.163.com/song?id=27969909&userid=342547956
原文:https://www.cnblogs.com/kyousuke/p/11342091.html