广告
返回顶部
首页 > 资讯 > 数据库 >ssm框架---MyBatis基础知识(一)
  • 175
分享到

ssm框架---MyBatis基础知识(一)

mybatisjavamysql 2023-09-04 21:09:51 175人浏览 泡泡鱼
摘要

mybatis特性         1)MyBatis是支持定制化sql、存储过程以及高级映射的优秀持久层框架         2)MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集         3)MyBatis可

        1)MyBatis是支持定制化sql、存储过程以及高级映射的优秀持久层框架

        2)MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集

        3)MyBatis可以使用简单的xml或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录

        4)MyBatis是一个半自动的ORM(Object Relation Mapping,对象关系映射)框架

  • MyBatis和其他持久层技术的比较

       1)JDBC:SQL夹杂在Java代码中,耦合度高;不易维护和修改;开发效率低。

       2)Hibernate和JPA:操作简单,开发效率高;程序中的长难复杂SQL,需要绕过框架;内部自动生产的SQL,不容易做特殊优化;基于全映射的全自动框架,大量字段的POJO进行部分映射时比较困难;反射操作太多,导致数据库性能下降

       3)MyBatis:轻量级,性能出色;SQL和Java编码分开,功能边界清晰;Java代码专注业务,sql语句专注数据;开发效率略低于Hibernate

  • 搭建MyBatis

     1.开发环境

IDE:idea 2020.3.4

构建工具Maven3.6.3

Mysql版本:5.1

Mybatis版本:3.5.6

mysql不同版本的注意事项:

驱动类driver-class-name

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

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

连接地址url

MySQL 5版本的url:

jdbc:mysql://localhost:3306(端口号)/SSM数据库名称

MySQL 8版本的url:

jdbc:mysql://localhost:3306/ssm?serverTimezone=UTC(设置时区)

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

  • 创建maven工程

打包方式:jar

引入依赖:

建立空的文件夹,在项目结构中设置jdk版本

 在设置的构建、执行、部署中找到Maven工具,设置路径(需要先设置好maven的本地仓库和镜像网站)

建立maven工程

在pom.xml文件中引入依赖

    4.0.0    org.example    maven_project    1.0-SNAPSHOT    jar                                org.mybatis            mybatis            3.5.6                                    junit            junit            4.12            test                                    mysql            mysql-connector-java            5.1.44                        8        8    

在MySQL里创建数据库和数据库表

 在个人的开发项目里构造数据库表的实体类

package com.mabatis.pojo;public class user {    private Integer id;    private String username;    private String passWord;    private Integer age;    private String gander;    private String email;    public user(){    }    public user(Integer id, String username, String password, Integer age, String gander, String email) {        this.id = id;        this.username = username;        this.password = password;        this.age = age;        this.gander = gander;        this.email = email;    }    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }    public String getGander() {        return gander;    }    public void setGander(String gander) {        this.gander = gander;    }    public String getEmail() {        return email;    }    public void setEmail(String email) {        this.email = email;    }    @Override    public String toString() {        return "user{" +                "id=" + id +                ", username='" + username + '\'' +                ", password='" + password + '\'' +                ", age=" + age +                ", gander='" + gander + '\'' +                ", email='" + email + '\'' +                '}';    }}

搭建MyBatis准备框架的基本工作完成!!

 项目工程里面:main文件夹中放主程序,test文件夹中放测试程序,java中放Java类,resources里面放配置文件;test文件夹里面的Java放测试类。

  •  创建MyBatis的核心配置文件

核心配置文件主要用于配置连接数据库的环境以及MyBatis的全局配置信息,存放于src/main/resources目录下。习惯上将它命名为mybatis-config.xml,并没有强制要求。将来整合spring之后,这个配置文件可以忽略。

在该文件中配置连接数据库:

                                                                                                                                
  • 创建Mapper接口

MyBatis中的mapper接口相当于以前dao。但是区别在于,mapper仅仅是接口,不需要提供实现类。

  •  创建MyBatis的映射文件

ORM(对象关系映射):Java实体类关系型数据库二者之间的对应关系

Java概念数据库概念
属性字段/列
对象记录/行

映射文件的命名规则:实体类类名+Mapper.xml

一个映射文件代表一个实体类,映射文件里面写sql语句

mapper接口和映射文件要保持两个一致:

1、mapper接口的全类名和映射文件的namespace一致

2、mapper接口中的方法名要和映射文件中的sql的id保持一致

                insert into user values(null,'admin','12345',23,'男','12345@qq.com')    

该文件保存在resources的mappers文件夹下,命名为UserMapper.xml

最后,需在MyBatis-config.xml中引入MyBatis的映射文件

 

来源地址:https://blog.csdn.net/qq_52847281/article/details/128096224

您可能感兴趣的文档:

--结束END--

本文标题: ssm框架---MyBatis基础知识(一)

本文链接: https://www.lsjlt.com/news/394418.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ssm框架---MyBatis基础知识(一)
    MyBatis特性         1)MyBatis是支持定制化SQL、存储过程以及高级映射的优秀持久层框架         2)MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集         3)MyBatis可...
    99+
    2023-09-04
    mybatis java mysql
  • vue.js框架的基础知识
    今天就跟大家聊聊有关vue.js框架的基础知识,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一.Vue基本介绍Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,V...
    99+
    2023-05-31
    vue框架 vue.js ue
  • Mybatis的基础知识点
    小编给大家分享一下Mybatis的基础知识点,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!mybatismybatis-conf...
    99+
    2022-10-18
  • Django框架基础知识01-配置环境
    Django框架   Django是个怎样的东西呢   Web应用框架----Django     http服务器:用来接受用户请求,并将请求转发给web应用框架进行处理。   Web应用框架处理完以后再发送给http服务器,http服务...
    99+
    2023-01-31
    基础知识 框架 环境
  • 一、PyQt基础知识
    一、基础知识 (一)简介 1. 什么是PyQt5 PyQt是基于Digia公司强大的图形程序框架Qt的Python接口,由一组Python模块构成,它是一个创建GUI应用程序的工具包,由Phil Th...
    99+
    2023-09-11
    pyqt qt python
  • MongoDB基础知识(一)
     互联网行业的发展非常的迅速,数据存储以及架构优化方面也有很多不同的解决方案,例如关系型数据库、非关系型数据库、数据仓库技术等。更多数据库类产品的出现,为我们很好的解决了数据存储的问题,例如Red...
    99+
    2022-10-18
  • Python基础知识(一)
      #Python中开始那个Hello World挺简单的。  #!user/bin/env python3  #这一行是shebang,用以指示用哪个解释器来执行,如果有的话,必须在程序第一行  print("Hello World!")...
    99+
    2023-01-31
    基础知识 Python
  • (3)Powershell基础知识(一)
    上节介绍了Windows自带的Powershell开发工具:命令行行窗体和集成开发环境ISE的启动及一些配置注意事项,具体细节使劲戳Powershell开发工具。这一节介绍Powershell的基础知识,包含以下知识点Powershell的...
    99+
    2023-01-31
    基础知识 Powershell
  • 第一章 Python基础知识
    1.1 介绍1.1.1 特点Python是一种面向对象、解释型计算机程序设计语言。语法简洁清晰,强制用空白符作为语句缩进。Python具有丰富和强大的库,又被称为胶水语言。能把其他语言(主要C/C++)写的模块很轻松的结合在一起。1.1.2...
    99+
    2023-01-31
    基础知识 Python
  • Python基础知识(一)—简介
    一、Python 简介 Python定义:是一个免费、开源、跨平台、动态、面向对象的编程语言。 Python程序的执行(运行)方式有两种:交互式、文件式 交互式在命令行输入指令,回城即可得到结果。1.打开终端2.进行交互式:python3...
    99+
    2023-01-31
    基础知识 简介 Python
  • Python基础知识入门(一)
    Python基础知识入门(二) Python基础知识入门(三) Python基础知识入门(四) Python基础知识入门(五) 一、发展历程        Python的创始人为荷兰人吉多·范罗苏姆(Guido van Rossum)。1...
    99+
    2023-09-05
    开发语言 python 基础学习
  • Java基础之MapReduce框架总结与扩展知识点
    目录一、MapTask工作机制二、MapTask工作流程:三、ReduceTask工作机制四、ReduceTask工作流程:五、数据清洗(ETL)六、计数器应用七、计数器案例八、Ma...
    99+
    2022-11-12
  • Python基础知识两部曲:一
    1.起步 2.变量和简单数据类型 1.变量 message = "hello world python" print(message) 2.命名 1.命名与使用 2.使用变量时避免命名错误 3.字符串 1.使用方法修改字符串的大小写 nam...
    99+
    2023-01-31
    两部 基础知识 Python
  • Linux知识点 -- 网络基础(一)
    Linux知识点 – 网络基础(一) 文章目录 Linux知识点 -- 网络基础(一)一、网络发展二、协议1.OSI七层模型2.TCP/IP五层(或四层)模型 三、网络传输基本流程1.局域网中的两台主机通信流程2.跨网段的两台主...
    99+
    2023-08-30
    网络 linux 运维
  • 【MySQL】MySQL基础知识详解(一)
    MySQL select列的别名去除重复行空值参与运算着重号查询常数显示表结构过滤数据 排序使用 ORDER BY 对查询到的数据进行排序操作。使用列的别名,进行排序二级排序 分页LI...
    99+
    2023-09-04
    mysql 数据库 SQL
  • 新手了解java基础知识(一)
    目录1.java基础1.1Java历史1.2Java特点1.2.1 简单性1.2.2 面向对象1.2.3 分布式(微服务)1.2.4 健壮性1.2.5 安全性1.2.6 体系结构中立...
    99+
    2022-11-12
  • 零基础Python知识点回顾(一)
    如果你是小白,建议只要安装官网的python-3.7.0-amd64.exe 然后在电脑cmd命令提示符  输入检查是否已经安装pip,一般安装了python都会有的。 >pip            (有的话会提示一大串说明,没有...
    99+
    2023-01-30
    知识点 基础 Python
  • MySQL 主从的一些基础知识
    本篇文章给大家分享的是有关MySQL 主从的一些基础知识,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。MySQL复制原理1. 主库修改时会把数...
    99+
    2022-10-18
  • 一些前端基础知识整理
    这篇文章主要讲解了“一些前端基础知识整理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“一些前端基础知识整理”吧!Call, bind, apply实现//&...
    99+
    2022-10-19
  • 学习 Python 框架 numy,你需要了解哪些基础知识?
    学习 Python 框架 numpy,你需要了解哪些基础知识? Python 是一门非常强大的编程语言,它拥有许多优秀的第三方库和框架,其中最重要的就是 numpy 了。numpy 是一款高性能的科学计算库,它提供了很多高效的数组操作函数,...
    99+
    2023-10-24
    框架 numy 学习笔记
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作