zoukankan      html  css  js  c++  java
  • spring jdbc学习1

    1.queryForObject

      - 其中的 RowMapper 指定如何去映射结果集的行, 常用的实现类为 BeanPropertyRowMapper

      - 使用 SQL 中列的别名完成列名和类的属性名的映射. 例如 last_name lastName

      -不支持级联属性(如:depatmant.id). JdbcTemplate 到底是一个 JDBC 的小工具, 而不是 ORM 框架

    String sql = "select id,last_name name,email from employees where id=?";
    RowMapper<Employee> rowMapper = new BeanPropertyRowMapper<>(Employee.class);
    Employee employee = jdbcTemplate.queryForObject(sql, rowMapper, 1);
    System.out.println(employee);

     2.配置NamedParameterJdbcTemplate,此对象可以使用具名参数,其没有无参数的构造器

    <bean class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate"
          id="namedParameterJdbcTemplate">
        <constructor-arg ref="dataSource"></constructor-arg>
    </bean>

    3.使用具名参数时, 可以使用 update(String sql, SqlParameterSource paramSource) 方法进行更新操作

      -SQL 语句中的参数名和类的属性一致!

      -使用 SqlParameterSource 的 BeanPropertySqlParameterSource 实现类作为参数.

    String sql = "insert into employees (last_name,email,dept_id) values(:name,:email,:deptId)";
    
    Employee employee = new Employee();
    employee.setEmail("gg@gmail.com");
    employee.setName("yaso");
    employee.setDeptId(3);
    
    SqlParameterSource parameterSource = new BeanPropertySqlParameterSource(employee);
    namedParameterJdbcTemplate.update(sql, parameterSource);
  • 相关阅读:
    update 更改字段
    查看 links
    oracle 统计字段空值数
    查看oracle 数据库编码个格式
    oracle 数据库DBA权限
    一文弄懂 Golang 排序
    Golang Linux、Windows、Mac 下交叉编译
    go 简单封装数学运算包
    [Vue warn]: Unknown custom element: did you register the component correctly?
    深度图怎么看行情走势
  • 原文地址:https://www.cnblogs.com/djdjfj/p/9492110.html
Copyright © 2011-2022 走看看