zoukankan      html  css  js  c++  java
  • mybatis

    mybatis框架

    1.简介:mybatis是支持sql查询,存储过程(https://baike.baidu.com/item/%E5%AD%98%E5%82%A8%E8%BF%87%E7%A8%8B/1240317?fr=aladdin)和高级映射(https://blog.csdn.net/liweizhong193516/article/details/53688995?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-2)的优秀持久层框架。使用xml配置编写sql语句,将java代码和sql语句分离,避免像jdbc一样硬编码,sql的拼接也变得简便,支持自定义sql语句。

    2.主配置文件的编写:

    <?xml version="1.0" encoding="UTF-8" ?>

    <!DOCTYPE configuration

     PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

     "http://mybatis.org/dtd/mybatis-3-config.dtd">

     <!--dtd约束文档,用来约束当前xml文档能够使用的标签和属性  -->

    <configuration>

    <!--配置mybatis使用的数据库环境  -->

     <environments default="development">

     <environment id="development">

     <transactionManager type="JDBC"/>

     <!--表示mybatis管理事务的方式,依赖于jdbc管理事务  -->

     <!--数据源配置  -->

     <dataSource type="POOLED">

     <property name="driver" value="com.mysql.jdbc.Driver"/>

     <property name="url" value="jdbc:mysql://127.0.0.1:3306/数据库名?useUnicode=true&characterEncoding=utf-8"/>

     <property name="username" value=" "/>

     <property name="password" value=" "/>

     </dataSource>

     </environment>

     </environments>

     <!--加载映射配置文件  -->

     <mappers>

     <mapper resource="com/offcn/mapper/*.xml"/>

     </mappers> </configuration>

    3.映射配置文件的配置

    <?xml version="1.0" encoding="UTF-8" ?>

    <!DOCTYPE mapper

     PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

     "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

     <!--namespace:表示命名空间,如果要使用接口代理的方式操作数据库,

     必须保证接口的全限定名称和namesapce一致

    必须保证接口方法名称和sql语句id值一致 -->

     <mapper namespace="对应的接口全类名">

     <select id="findPersonByPid"  resultType="对应返回的实体全类名">

     sql查询语句

     </select>

    ...

     </mapper>

    4.使用mybatis提供的API(应用程序接口)操作数据库

    //加载主配置文件

    InputStream inputStream = Resources.getResourceAsStream("主配置文件名.xml");

    //构建SqlSessionFactory

    SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

    //获取sqlsession

    SqlSession sqlSession = sessionFactory.openSession();

    PersonMapper personMapper = sqlSession.getMapper(接口.class);

    Person person = personMapper.方法名;

    //提交事务

    sqlSession.commit();

    //关闭session

    sqlSession.close();

  • 相关阅读:
    【积累总结】JS基础日常总结
    【积累总结】CSS日常总结
    【学习】JavaScript单线程与异步
    【学习指南】淘宝首页性能优化实践
    【学习】JS中的跨域
    007_stdc_C语言基础
    006_stdc_C语言基础
    005_stdc_C语言基础
    004_stdc_C语言基础
    003_stdc_linux基本常用命令_C语言基础
  • 原文地址:https://www.cnblogs.com/seaWaveQin/p/13152143.html
Copyright © 2011-2022 走看看