Mybatis的简介+简单实现增删改查案例
@
总结内容
1. 基本概念
- Mybatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。
2. Mybatis的使用
需求
- 实现简单增删改查
代码地址:https://blog.csdn.net/zzvar/article/details/115830222
配置文件简介
添加项目需要的jar包
1)mysql-connection-java-5.1.26-bin.jar(jar包可以根据自己需要更换)
MySQL数据库的JDBC驱动包,访问MySQL必须导入的jar包
2)mybatis-3.4.5.jar(jar包可以根据自己需要更换)
MyBatis 框架的核心jar包XxxMapper.xml 配置文件
<?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">
<!-- mapper 是跟标签,只能有一个
namespace 属性,对应的值必须是改文件所在包名 + "." + 该文件的名称(不带后缀名)
用于区分sql的唯一性-->
<mapper namespace="com.yy.homework.mapper.TeacherMapper">
<!-- insert 标签 id 属性,它是唯一标识符,指在当前文件中必须是唯一的
目的:表示 sql 唯一性 -->
<!-- 原因:在开发中,如果需要获取到数据库中自动生成的主键,可以通过mybatis来实现
useGeneratedkeys: 表示当前文件中唯一
keyProperty: 表示是否需要获取主键的值
parameterType: 传入参数的类型(一般不写)-->
<!-- #{变量} 整体是占位符,相当于 preparedStatement 中的 ?
变量:如果传入的参数类型是简单类型(包含String),可以随便使用变量使用变量名
如果传入的参数类型是对象类型,必须使用对象中的属性的名称 -->
<insert id="delete">
delete from Teacher where userID = #{userID}
</insert>
<!-- resultType 设置数据的类型,高数MyBatis框架,让 MyBatis 把数据库返回的数据封装成 resultType 类型的对象
resultMap 处理表中的列的名称和类中属性名称不一致的情况的映射关系 -->
<select id="selectAll" resultType="com.yy.domain.Teacher>
select * from Teacher
</select>
</mapper>
- 理解:MyBatis 的执行流程
1)加载主配置文件(mybatis-config.xml)到内存中,将数据封装到对象(Configuration/Environment/TransactionManager/DataSource等)
2)通过操作拿到访问数据库的基本信息,根据这些数据创建SqlSessionFactory对象
3)从SqlSessionFactory对象中获取到SqlSession对象,然后执行SQL
4)insert into user(name,age,salary,hiredate) values(#{name},#{age},#{salary},#{hiredate}); 被翻译成 insert into user(name,age,salary,hiredate) values(?,?,?,?);
5)使用PreparedStatement来执行指定的SQL,从传递进来的User对象中依次获取到name/age/salary/hiredate 这些属性的值,这里需要使用到内省机制来访问对象中的属性。
总结
以上就是 jdbc 连接数据库的总结了,代码仅供参考,欢迎讨论交流。
Mybatis的简介+简单实现增删改查案例的更多相关文章
- SSM框架之MyBatis框架实现简单的增删改查
MyBatis框架介绍 MyBatis是一个优秀的数据持久层框架,在实体类和SQL语句之间建立映射关系是一种半自动化的ORM实现,其封装性要低于Hibernate,性能优越,并且小巧,简单易学,应用也 ...
- mybatis实现最简单的增删改查
1.数据库设计 2.项目结构(针对User不用管Blogger) User.java package com.yunqing.mybatis.bean; public class User { pri ...
- springboot(三 使用mybatis +springboot 完成简单的增删改查)
先说一些注解: @EnableAutoConfiguration 可以帮助SpringBoot应用将所有符合条件的@Configuration配置都加载到当前SpringBoot创建并使用的IoC容器 ...
- MyBatis学习--简单的增删改查
jdbc程序 在学习MyBatis的时候先简单了解下JDBC编程的方式,我们以一个简单的查询为例,使用JDBC编程,如下: Public static void main(String[] args) ...
- MyBatis简单的增删改查以及简单的分页查询实现
MyBatis简单的增删改查以及简单的分页查询实现 <? xml version="1.0" encoding="UTF-8"? > <!DO ...
- 通过JDBC进行简单的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- SpringMVC之简单的增删改查示例(SSM整合)
本篇文章主要介绍了SpringMVC之简单的增删改查示例(SSM整合),这个例子是基于SpringMVC+Spring+Mybatis实现的.有兴趣的可以了解一下. 虽然已经在做关于SpringMVC ...
- SpringBoot+Mybatis+Maven+MySQL逆向工程实现增删改查
SpringBoot+Mybatis+MySQL+MAVEN逆向工程实现增删改查 这两天简单学习了下SpringBoot,发现这玩意配置起来是真的方便,相比于SpringMVC+Spring的配置简直 ...
- 通过JDBC进行简单的增删改查(以MySQL为例) 目录
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
随机推荐
- 推荐 5 个 yyds 的开源 Python Web 框架
提到 Python 的 Web 框架,第一反应就是老三样,Django,Flask 和 Tornado.如果按流行度来排名的话,应该也是这个顺序. 在 2016 年,发布了一款 Web 框架,叫 Sa ...
- SpringBoot连接Redis (Sentinel模式&Cluster模式)
一.引入pom <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- laravel 公共类json库封装
封装常用的接口响应: 创建 response.php 在app下创建如下文件下(目录及文件名可以自己设置) app/common/response.php,在内部补充如下代码: <?php /* ...
- tp 七牛云文件上传
1.先创建好七牛云账号和存储空间 申请七牛云账号: 创建七牛云存储空间: 在账号的秘钥管理里面创建秘钥 获取AccessKey / SecretKey: 2.集成PHP-SDK 七牛云开发文档:htt ...
- 同事都说有SQL注入风险,我非说没有
前言 现在的项目,在操作数据库的时候,我都喜欢用ORM框架,其中EF是一直以来用的比较多的:EF 的封装的确让小伙伴一心注重业务逻辑就行了,不用过多的关注操作数据库的具体细节.但是在某些场景会选择执行 ...
- 2021-08-02(console、comfrim)
1.console对象 1.输出信息: console.info()别名 console.log(); 2.复合类型表格展示 console.table(obj) || console.table(A ...
- gitee中项目到运行操作,包括:打包、热部署、数据库操作
使用的工具:window10.IDEA 2018.2.3 .navicat110_premium.Git-2.23 1.idea导入gitee代码 复制项目地址 选择git工具 粘贴地址,点击clon ...
- 那些年踩过的坑---java篇
事务 Transaction rolled back because it has been marked as rollback-only 问题描述:项目使用的是springboot,在代码中未使用 ...
- Python之简单的用户名密码验证
题目要求: 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 #要求使用文件存储用户名和密码,每次从文件读入用户名和密码用来验证,如果输错三次密码该账户会被锁定,并讲锁定的用户名写入文件 # ...
- Mybatis数据库分页
使用limit分页(sql语句) SELECT * FROM user limit 0,2 #从第0个开始查,查2个 使用Mybatis实现分页,核心还是sql(map) <select id= ...