zoukankan      html  css  js  c++  java
  • MyBatis

    mybatis 中全局配置文件绑定sql映射文件或者绑定接口(注解开发),映射文件(select,insert,update,delete)又绑定dao层(增删改查),dao层又绑定pojo实体类层
    实体类层与数据库中的信息一一对应。

    Hongkong
    什么是MyBatis:
    MyBatis 是一款优秀的持久层框架
    MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程
    MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。

    持久化:
    即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的对象存储在数据库中,或者存储在磁盘文件中、XML数据文件中等等。
    JDBC就是一种持久化机制。文件IO也是一种持久化机制。

    持久层:
    完成持久化工作的代码块 . ----> dao层 【DAO (Data Access Object) 数据访问对象,作用是封装对数据库的访问:增删改查,不涉及业务逻辑,只是达到按某个条件获得指定数据的要求;】

    MyBatis的思路流程:
    搭建环境(jdk 8 + MySQL 5.7.19 maven-3.6.1 IDEA)
    导入MyBatis相关 jar 包,在pom.xml

    编写MyBatis核心配置文件 mybatis-config 在里面绑定.xml映射配置文件

    db.properties存放mybatis-config的数据库相关配置信息

    编写MyBatis工具类MybatisUtils

    创建实体类与数据库一一对应

    在dao层编写Mapper接口类(封装对数据库的访问:增删改查)

    在dao层编写Mapper.xml配置文件 (绑定接口类,并且负责sql语句)

    根据全局配置文件,用SqlSessionFactoryBuilder创建SqlSessionFactory,使用SqlSessionFactory获取SqlSession对象。

    全局配置文件
    configuration(配置)
    environments(环境配置) environment(环境变量)
    mappers(映射器)(绑定映射xml,用class比较好)
    Properties(数据库这些属性都是可外部配置且可动态替换的)
    typeAliases(起别名)

    映射文件中namespace中的名称为对应Mapper接口或者Dao接口的完整包名,必须一致!
    select
    (id:接口中的方法名与映射文件中的SQL语句ID 一一对应)
    (parameterType:传入SQL语句的参数类型 。【万能的Map,可以多尝试使用】)
    (resultType:SQL语句返回值类型。【完整的类名或者别名】)
    (所有的增删改操作都需要提交事务,接口所有的普通参数,尽量都写上@Param参数(用于给方法参数起一个名字),尤其是多个参数时,必须写上!)
    (ResultMap:结果集映射)

    limit实现分页
    SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15

    一对多和多对一处理
    多对一:按查询嵌套处理

    一对多:按查询嵌套处理

    动态SQL指的是根据不同的查询条件 , 生成不同的Sql语句.

    模糊查询like语句该怎么写?

    问题:Maven静态资源过滤问题 在pom.xml

  • 相关阅读:
    SQL-LINQ-Lambda 语法对照
    C#.NET面向对象(语法点)
    4.5 基于STM32+MC20远程短信控制开关
    4.4 使用STM32控制MC20进行GPS帧数据解析
    4.3 使用STM32控制MC20进行GPRS通讯
    4.2 使用STM32控制MC20发送短信
    4.1 使用STM32控制MC20拨打电话
    3.6.使用STC89C52控制MC20解析GPS的经纬度数据上传到指定服务器
    3.5.基于STC89C52+MC20的短信远程控制开关LCD1602显示
    3.4 使用STC89C52控制MC20解析GPS的经纬度数据在LCD1602上显示
  • 原文地址:https://www.cnblogs.com/guobaoqing/p/14465706.html
Copyright © 2011-2022 走看看