Mybatis学习
来源:互联网 发布:淘宝网店怎样优化 编辑:程序博客网 时间:2024/06/05 23:16
Mybatis简介
Mybatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。它几乎消除所有的JDBC代码和参数手工配置以及结果集的检索。Mybatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO映射成 数据库中的记录。
ORM的基本思想:
无论是通过Hibernate还是Mybatis都有一些共同点
- 从配置文件(通常是xml)得到sessionfactory
- 由是sessionfactory产生session
- 在session中完成对数据的增删改查和事务提交等
- 用完之后关闭session
- 在java对象和数据之间有做mapping映射,也通常是配置文件
MyBatis实例
1、设置mybatis配置文件Configuration.xml
<?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"><configuration> <typeAliases> <typeAlias alias="Student" type="com.mybatis.models.Student"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://127.0.0.1:3306/mysql" /> <property name="username" value="root"/> <property name="password" value="mysql"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/mybatis/models/Student.xml"/> </mappers></configuration>
2、建立获得SqlSessionFactory的工具类
package com.mybatis.util;import java.io.Reader;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;public class GetSessionFactory { private static SqlSessionFactory sessionFactory; private static Reader reader; static{ try{ reader = Resources.getResourceAsReader("com/mybatis/config/Configuration.xml"); sessionFactory = new SqlSessionFactoryBuilder().build(reader); }catch(Exception e){ e.printStackTrace(); } } public static SqlSessionFactory getSession(){ return sessionFactory; }}
3、编写数据库表对应的Java实体类
package com.mybatis.models;public class Student { private String id; private String name; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; }}
4、编写实体类对应的映射文件
<?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="com.mybatis.models.UserMapper"> <select id="selectStudentByID" parameterType="int" resultType="Student"> select * from `student` where id = #{id} </select></mapper>
0 0
- Mybatis学习---了解Mybatis
- 【Mybatis学习】Mybatis缓存
- MyBatis学习
- MyBatis学习
- MyBatis学习
- Mybatis学习
- mybatis学习
- Mybatis学习
- mybatis学习
- MyBatis 学习
- MyBatis学习
- MyBatis学习
- MyBatis学习
- MyBatis学习
- mybatis学习
- mybatis 学习
- mybatis学习
- MyBatis学习
- ac自动机模板
- 在jni编程中解决第三方so文件编译时被删除的另类方法
- C#将文件中的图片复制到另一个文件中
- 角色武器类
- Android 文件操作
- Mybatis学习
- 史上最全:ant多渠道打包安卓工程(二)
- MySql中having字句对组记录进行筛选使用说明
- hibernate ORM映射——单表映射
- 通过GOT覆写实现ret2libc - 64-bit Linux stack smashing tutorial: Part 3
- 用8进制和16进制创建字符串
- java/android中对回调函数深入灵魂的理解
- hdu 1037 Keep on Truckin'
- 剑指offer系列之16:树的子结构