Mybatis学习——初始MyBatis
什么是MyBatis框架?
MyBatis框架是一种ORM(既对象关系映射)框架.
什么是ORM框架?
是一种为了解决面向对象与关系数据库之间数据不匹配的技术,它通过描述Java对象和关系数据库表之间的映射关系,自动的将Java应用程序中的对象持久化到关系数据库表中,
映射的好处:操作与表相映射的对象就可以操作表,不需要再直接访问数据库底层。
使用ORM框架,应用程序不再直接访问底层数据库,而是以面向对象的方法来操作持久化对象,ORM框架会通过映射关系将这些数据库的操作转换成底层的SQL操作。
MyBatis的优点:
解决了面向对象和关系型数据库之间的数据类型匹配技术,MyBatis是用在Dao层。
MyBatis和Spring中的template 模板的区别:
Spring中的Template模板是将SQL语句写在Java代码中,每修改一次SQL语句都要重新编译一次,但是在Mybatis中,Sql语句是写在配置文件中,这样修改SQL语句,就不需要再重新编译一次了。
使用MyBatis:
使用Mybatis框架很简单,只需要在应用程序中引入MyBatis的核心包即可。
开发mybatis程序的步骤:
1.创建表与之对应的类。
2.配置映射文件(每个mapper配置文件对应数据库中的一张表),可以在映射文件中里面编写增删改查的标签。
3.配置config.xml标签:获取JDBC数据源环境,添加映射文件<mappers>。
4.测试类:读取配置文件,获取构造会话工厂实例,创建构造会话对象。
Mybatis学习——初始MyBatis的更多相关文章
- MyBatis学习总结-MyBatis快速入门的系列教程
MyBatis学习总结-MyBatis快速入门的系列教程 [MyBatis]MyBatis 使用教程 [MyBatis]MyBatis XML配置 [MyBatis]MyBatis XML映射文件 [ ...
- MyBatis学习(三)---MyBatis和Spring整合
想要了解MyBatis基础的朋友可以通过传送门: MyBatis学习(一)---配置文件,Mapper接口和动态SQL http://www.cnblogs.com/ghq120/p/8322302. ...
- mybatis学习:mybatis的注解开发和编写dao实现类的方式入门
一.使用注解则不需要创建映射配置文件:即xxxDao.xml javaBean为什么要实现Serializable接口? Java的"对象序列化"能让你将一个实现了Serializ ...
- mybatis学习:mybatis的环境搭建与入门
一.mybatis的概述: mybatis是一个持久层框架,用java编写 它封装了jdbc操作的很多细节,使开发者只需要关注sql语句本身,而无需关注注册驱动,创建连接登繁杂过程 它使用了ORM思想 ...
- Mybatis学习笔记-Mybatis简介
如何获得Mybatis 中文文档 https://github.com/tuguangquan/mybatis Github https://github.com/mybatis/mybatis-3 ...
- mybatis学习四 mybatis的三种查询方式
<select id="selAll" resultType="com.caopeng.pojo.Flower"> select * from fl ...
- Mybatis学习总结--------Mybatis <where>标签 (九)
<select id="findActiveBlogLike" resultType="Blog"> SELECT * FROM BLOG WH ...
- mybatis 学习六 MyBatis主配置文件
在定义sqlSessionFactory时需要指定MyBatis主配置文件: <bean id="sqlSessionFactory" class="org.myb ...
- mybatis 学习二 MyBatis简介与配置MyBatis+Spring+MySql
1.2.2建立MySql数据库 在C:\Program Files\MySQL\MySQL Server 5.7\bin下面: 首先连接MySQL: mysql -u root -p ...
随机推荐
- Python 中 unittest 框架加载测试用例的常用方法
unittest 当中为我们提供了许多加载用例的方法,这里说下常用的两种方法...推荐使用第二种 第一种加载测试用例的方法:使用加载器加载两个模块 需要把所有的模块加载到套件中 那么就可以自动的运行所 ...
- oracle11g导出dmp文件时不能导出空表,导致缺表
一.执行 select 'analyze table '||table_name||' compute statistics;' from user_tables; 将该查询语句查询到的结果粘贴到sq ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-tint
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- VUE swiper.js引用使用轮播图
<template> <div class="home"> <div class="swiper-container"> & ...
- Promise 练习
import { ModelClass } from "engine/injector/Injector"; import { Inject } from "core/i ...
- 使用IDEA打对应结构的Jar包
发布环境的内容和自己项目默认打包的样式不一样,就需要自定义打印jar包内容. 1.打开右上角项目结构 2.进行图片相关设置 3.直接进行打包,包会出现在class文件里面.解压软件解压开就是自己想要的 ...
- leetcode股票问题方法收集 转载自微信公众号labuladong
一.穷举框架首先,还是一样的思路:如何穷举?这里的穷举思路和上篇文章递归的思想不太一样. 递归其实是符合我们思考的逻辑的,一步步推进,遇到无法解决的就丢给递归,一不小心就做出来了,可读性还很好.缺点就 ...
- PHP实现简单的双色球机选号码
<?php header('Content-Type: text/html; charset=utf-8'); //PHP实现双色球机选号码 $red = range(1, 33);//初次设定 ...
- 三、CI框架之一个最简单的页面
一.在CI框架里面的controllers <?php defined('BASEPATH') OR exit('No direct script access allowed'); class ...
- Apache Spark:来自Facebook的60 TB +生产用例
本文主要讲Facebook扩展spark替换hive的过程中积累的经验和教训. 浪尖整理翻译https://databricks.com/blog/2016/08/31/apache-spark-sc ...