1. 确认开发环境​

    • MySQL不同版本的注意事项

      1、驱动类driver-class-name

      MySQL 5版本使用jdbc5驱动,驱动类使用:com.mysql.jdbc.Driver

      MySQL 8版本使用jdbc8驱动,驱动类使用:com.mysql.cj.jdbc.Driver

      2、连接地址url

      MySQL 5版本的url:

      jdbc:mysql://localhost:3306/ssm

      MySQL 8版本的url:

      jdbc:mysql://localhost:3306/ssm?serverTimezone=UTC

      否则运行测试用例报告如下错误:

      java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or

      represents more

  2. 创建Maven工程

    • 打包方式 : jar
    • 引入依赖
  3. 创建Mybatis的核心配置文件​

    • 习惯上命名为mybatis-config.xml,这个文件名仅仅只是建议,并非强制要求。将来整合Spring

      之后,这个配置文件可以省略,所以大家操作时可以直接复制、粘贴。

      核心配置文件主要用于配置连接数据库的环境以及MyBatis的全局配置信息

      核心配置文件存放的位置是src/main/resources目录下

  4. 创建mapper接口​

    • MyBatis中的mapper接口相当于以前的dao。但是区别在于,mapper仅仅是接口,我们不需要

      提供实现类。

  5. 创建Mybatis的映射文件​

    • 1、映射文件的命名规则:

      表所对应的实体类的类名+Mapper.xml

      例如:表t_user,映射的实体类为User,所对应的映射文件为UserMapper.xml

      因此一个映射文件对应一个实体类,对应一张表的操作

      MyBatis映射文件用于编写SQL,访问以及操作表中的数据

      MyBatis映射文件存放的位置是src/main/resources/mappers目录下

      2、 MyBatis中可以面向接口操作数据,要保证两个一致:

      a>mapper接口的全类名和映射文件的命名空间(namespace)保持一致

      b>mapper接口中方法的方法名和映射文件中编写SQL的标签的id属性保持一致

    • 相关概念:ORMObject Relationship Mapping)对象关系映射。

      • 对象:Java的实体类对象
      • 关系:关系型数据库
      • 映射:二者之间的对应关系
      Java概念 数据库概念
      属性 字段/列
      对象 记录/行
  6. 通过junit测试功能​

    • SqlSession:代表Java程序和****数据库之间的会话。(HttpSession是Java程序和浏览器之间的会话)
    • SqlSessionFactory:是“生产”SqlSession的“工厂”。
    • 工厂模式:如果创建某一个对象,使用的过程基本固定,那么我们就可以把创建这个对象的

    相关代码封装到一个“工厂类”中,以后都使用这个工厂类来“生产”我们需要的对象。

    //读取MyBatis的核心配置文件
    InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
    //创建SqlSessionFactoryBuilder对象
    SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new
    SqlSessionFactoryBuilder();
    //通过核心配置文件所对应的字节输入流创建工厂类SqlSessionFactory,生产SqlSession对象
    SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
    //创建SqlSession对象,此时通过SqlSession对象所操作的sql都必须手动提交或回滚事务
    //SqlSession sqlSession = sqlSessionFactory.openSession();
    //创建SqlSession对象,此时通过SqlSession对象所操作的sql都会自动提交
    SqlSession sqlSession = sqlSessionFactory.openSession(true);
    //通过代理模式创建UserMapper接口的代理实现类对象
    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
    //调用UserMapper接口中的方法,就可以根据UserMapper的全类名匹配元素文件,通过调用的方法名匹配
    映射文件中的SQL标签,并执行标签中的SQL语句
    int result = userMapper.insertUser();
    //sqlSession.commit();
    System.out.println("结果:"+result);

  1. 加入log4j日志功能

    • ①加入依赖

    • ②加入log4j的配置文件

      log4j的配置文件名为log4j.xml,存放的位置是src/main/resources目录下

    • 日志的级别:

      FATAL(致命)>ERROR(错误)>WARN(警告)>INFO(信息)>DEBUG(调试)

      从左到右打印的内容越来越详细

2. 搭建Mybatis的更多相关文章

  1. 通过Maven搭建Mybatis项目

    学习通过maven工程搭建Mybatis工程开启对M ybaits的学习总结之旅. 1.首先创建Maven工程. 2.在pom.xml文件中加入依赖的jar <!-- mybatis核心包 -- ...

  2. 关于搭建MyBatis框架(二)

    由于在[关于使用Mybatis的使用说明(一)http://www.cnblogs.com/zdb292034/p/8675766.html]中存在不太完善地方,通过此片文档进行修订: 阅读指南:(1 ...

  3. 搭建MyBatis开发环境及基本的CURD

    目录 一.MyBatis概述 1. MyBatis 解决的主要问题 二.快速开始一个 MyBatis 1. 创建mysql数据库和表 2. 创建maven工程 3. 在pom.xml文件中添加信息 4 ...

  4. 如何在Eclipse中搭建MyBatis基本开发环境?(使用Eclipse创建Maven项目)

    实现要求: 在Eclipse中搭建MyBatis基本开发环境. 实现步骤: 1.使用Eclipse创建Maven项目.File >> New >> Maven Project ...

  5. MyBatis_02_(搭建Mybatis)

    搭建MyBatis 1-开发环境 2-创建Maven工程 2.1- 打包方式 2.2 导入依赖 <!-- 打包方式jar--> <packaging>jar</packa ...

  6. [刘阳Java]_快速搭建MyBatis环境_第2讲

    1.MyBatis的环境配置 导入MyBatis包, mybatis-3.2.8.jar 导入MySQL驱动包, mysql-connector-java-5.1.24-bin.jar 创建表的实体类 ...

  7. 由“单独搭建Mybatis”到“Mybatis与Spring的整合/集成”

    在J2EE领域,Hibernate与Mybatis是大家常用的持久层框架,它们各有特点,在持久层框架中处于领导地位. 本文主要介绍Mybatis(对于较小型的系统,特别是报表较多的系统,个人偏向Myb ...

  8. 搭建MyBatis框架

    一.开发环境 1.JDK 1.6.0_22 2.MyEclipse 10.7.1 3.Oracle_10g_10.2.0.4 注:各软件版本不是必须的,正常任意版本都行,文件较大就不附上下载地址了,推 ...

  9. 移动商城第三篇【搭建Mybatis和Spring环境、编写Dao、Service在Core模块】

    Mybatis和Spring环境搭建 由于我们的所编写的dao层.service代码可能前台和后台都需要用到的,因此我们把环境搭建在core模块中 逆向工程 首先,我们要做的就是品牌管理,我们首先来看 ...

  10. 第三章.搭建MyBatis工程环境

    1.数据库的准备: 数据库: create DATABASE mybatis: 数据表: CREATE TABLE `user` ( `id` int(10) NOT NULL AUTO_INCREM ...

随机推荐

  1. 面对AI的兴起,从人类发展到个人发展,普通人应当如何抉择?

    这一周被各种 AI 卷的不行,从 ChatGPT 4.0 上线到百度文心一言发布会,再到微软的 Microsoft 365 Copilot. 网上有很多人.公众号吐嘈百度,而晓衡接触到的圈子还有一些不 ...

  2. Thread 线程中的 Synchronized block and lock

    Thread Definition of Synchronized Synchronized block in java are marked with the synchronized keywor ...

  3. RxJava--create源码分析

    使用示例: Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe( ...

  4. 香,一套逻辑轻松且智能解决PyQt中控件数值验证的问题

    在PyQt开发中,时常需要对控件的值进行校验,如需要校验QCheckBox是否被选中,QLabel是否校验值是否为空等等.在复杂的业务场景下,这类控件如果数量很多,逐个校验就显得麻烦,需要一一获得控件 ...

  5. 优化故事: BLOOM 模型推理

    经过"九九八十一难",大模型终于炼成.下一步就是架设服务,准备开门营业了.真这么简单?恐怕未必!行百里者半九十,推理优化又是新的雄关漫道.如何进行延迟优化?如何进行成本优化 (别忘 ...

  6. Rainbond 结合 Jpom 实现云原生 & 本地一体化项目管理

    Jpom 是一个简而轻的低侵入式在线构建.自动部署.日常运维.项目运维监控软件.提供了: 节点管理:集群节点,统一管理多节点的项目,实现快速一键分发项目文件 项目管理:创建.启动.停止.实时查看项目控 ...

  7. 笔记:网络IP数据包头部详解

    笔记:网络IP数据包头部详解          传了无数次,每次图片都没了,真是郁闷,这编辑器,需要改下啊,各位CSDN的大神们!!!        由于最近看了一些相关的资料想起来这篇文章,所以补充 ...

  8. 高精度地形DEM数据下载(NASA数据 12.5米分辨率)

    本文介绍从NASA阿拉斯加卫星设备处网站下载高精度DEM数据,下载的数据精度是12.5米分辨率. 目前国内大部分可以下载的dem数据都是30米或90米分辨率的,对于更高精度的数据要不就是需要付费下载, ...

  9. Prism Sample 15-FilteringEvents

    例14演示了怎样事件聚合器怎样发布与接收信息. 例15增加了一个事件的过滤功能,即设定一个条件,符合的才接收. _ea.GetEvent<MessageSentEvent>().Subsc ...

  10. SRIO接口卡航电总线解决方案

    TES600是天津拓航科技的一款基于FPGA与DSP协同处理架构的通用高性能实时信号处理平台,该平台采用1片TI的KeyStone系列多核浮点/定点DSP TMS320C6678作为主处理单元,采用1 ...