zoukankan      html  css  js  c++  java
  • 总结

    一、ORM简介

    1、ORMObject Relation Mapping

    ObjectJavaBean对象

    Relation:关系型数据库

    Mapping:映射(存在着对应关系)

    2、ORM框架:HibernateMyBatisiBatis)、JPAJava Persitence APIjava持久化框架,规范)

    3、简单的JDBC框架:这些框架只是对JDBC的操作进行了简单的封装。比如DBUtilsSpring JDBCTemplate

    二、DBUtils框架的使用

    1、QueryRunner

    int[] batch(String sql, Object[][] params):执行批处理

    sql:执行的sql语句

    params:二维数组。高维表示执行的语句的条数;地维表示每条语句需要的参数

    返回:每条语句影响到的记录行数

    <T> T query(String sql, ResultSetHandler<T> rsh)

    适合sql中没有参数的查询,把结果封装到JavaBean中

    <T> T query(String sql, ResultSetHandler<T> rsh, Object... params)

    适合sql中有参数的查询,把结果封装到JavaBean中

    int update(String sql)

    执行insert update delete语句的,没有参数的情况

    int update(String sql, Object... params)

    执行insert update delete语句的,有参数的情况

    int update(String sql, Object param)(画蛇添足)

    执行insert update delete语句的,有一个参数的情况

    三、DBUtils中的结果处理器详解

    四、ThreadLocal(很重点)

    1、ThreadLocal该类提供了线程局部变量

    2、分析原理:

    ThreadLocal内部有一个Map。Map的key是当前线程对象,value是一个Object对象。

    模拟该类:

    public class ThreadLocal<T>{

    private Map<Runnable,T> map = new HashMap<Runnable,T>();

    public void set(T t){

    map.put(Thread.currentThread(),t);

    //把传入的参数绑定到当前线程上

    }

    public void remove(){

    map.remove(Thread.currentThread());

    //从当前线程上删除对象

    }

    public T get(){

    return map.get(Thread.currentThread());

    //获取当前线程上绑定的对象

    }

    }

    五、真实案例中的事务控制(难度)

    六、多表存取

    6.1一对多(Hibernate映射时还会讲)

    6.2多对多

    6.3一对一

  • 相关阅读:
    tool公用工具方法
    angular5.x 拦截器 switchMap
    angular5.x拦截器 给get post请求添加参数user_token
    flex布局 阮一峰
    json.stringify()和json.parse()
    年份月数天数
    打印字母塔
    打印形状
    打印九九乘法表
    C语言猜数字游戏
  • 原文地址:https://www.cnblogs.com/bwcx1375/p/7123490.html
Copyright © 2011-2022 走看看