美文网首页Mysql
JDBC 4.Spring Jdbc

JDBC 4.Spring Jdbc

作者: 第二套广播体操 | 来源:发表于2019-03-28 19:48 被阅读0次

Spring 框架对JDBC的简单封装 提供一个JDBC Template对象简化JDBC的开发

步骤:
1 导入Jar包
2 创建JdbcTemplate对象依赖于数据源DataSourse
JdbcTemplate jdbcTemplate = new JdbcTemplate(DruidUnits.getDataSource());
方法:调用JdbcTempalte方法来完成操作
update();执行增删改语句
queryForMap();查询结果将结果集封装为map集合 只能操作一行数据的
queryForList();查询结果将结果集封装为list集合 操作多行数据
query查询结果 将结果封装为JavaBean对象 将数据库数据封装成对象
传入参数为RowMapper对象
一般使用new BeanPropertyRowMapper<类型>(类型.class)
queryForObject查询结果 将结果封装成对象想· 应用于聚合函数上

例子:

public class JdbcTemplateDemo {
    public static void main(String[] args) {
        JdbcTemplate jdbcTemplate = new JdbcTemplate(DruidUnits.getDataSource());
        String sql="update change_money set money=? where id =?";
        int count = jdbcTemplate.update(sql, 1500, 1);
        System.out.println(count);
    }
}

各方法演示

public class JdbcTemplateDemo2 {
    JdbcTemplate jdbcTemplate = new JdbcTemplate(DruidUnits.getDataSource());

    //queryForMap  只能查询一行结果
    @Test
    public void test1() {
        String sql = "select * from galary where id= ?";
        Map<String, Object> map = jdbcTemplate.queryForMap(sql, 1);
        System.out.println(map);
    }
    //    queryForList 可以查询多行结果
    @Test
    public void test2(){
        String sql = "select * from galary ";
        List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
        System.out.println(list);
    }

    @Test
    public void test3(){
        String sql = "select * from galary ";
        List<Person> people = jdbcTemplate.query(sql, new RowMapper<Person>() {
            @Override
            public Person mapRow(ResultSet resultSet, int i) throws SQLException {
                Person person = new Person();
                int id = resultSet.getInt("id");
                person.setId(id);
                String name = resultSet.getString("name");
                person.setName(name);
                int galary = resultSet.getInt("galary");
                person.setGalary(galary);
                return person;
            }
        });
        for (Person person : people) {
            System.out.println(person);
        }
    }

    @Test
    public void test4(){
        String sql = "select * from galary ";
        List<Person> people = jdbcTemplate.query(
                sql,new BeanPropertyRowMapper<Person>(Person.class));
        for (Person person : people) {
            System.out.println(person);
        }
    }

}
//为了防止无法将赋值的null写入 设置为类型为包装器类
public class Person {
    private Integer id;
    private String name;
    private Integer galary;

    @Override
    public String toString() {
        return "Person{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", galary=" + galary +
                '}';
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getGalary() {
        return galary;
    }

    public void setGalary(Integer galary) {
        this.galary = galary;
    }
}

相关文章

  • JDBC 4.Spring Jdbc

    Spring 框架对JDBC的简单封装 提供一个JDBC Template对象简化JDBC的开发 步骤:1 导入J...

  • JDBC

    JDBC原理: JDBC: 抽取JDBC工具类 : JDBCUtils JDBC控制事务:

  • JDBC 的使用

    JDBC JDBC什么是JDBCJDBC 的使用JDBC 的数据类型 什么是JDBC JDBC(Java Data...

  • Java和MySQL简建立连接

    JDBC JDBC插入多条数据 JDBC查询 JDBC动态传参 JDBC回滚 JDBC将数据库中的信息装入List...

  • JDBC

    JDBC JDBC:Java DataBase Connectivity JDBC的本质是什么?JDBC是SUN公...

  • java异常合集

    jdbc com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExce...

  • Day05--JDBC

    JDBC: 抽取JDBC工具类:JDBCUtils JDBC控制事务

  • JDBC

    JDBC: 抽取JDBC工具类 : JDBCUtils JDBC控制事务:

  • JDBC编程目录

    JDBC编程目录 SQL基础JDBC基础JDBC进阶

  • JDBC和数据库连接池

    1.JDBC介绍1.1 1.1 JDBC介绍 2.JDBC之API2.1 2.1 JDBC之API 3.JDBC例...

网友评论

    本文标题:JDBC 4.Spring Jdbc

    本文链接:https://www.haomeiwen.com/subject/fqscbqtx.html