MyBatis的简介:
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。
iBatis是半ORM映射框架,它需要在数据库里手动建表,CURD操作时要自己写SQL语句,而Hibernate是全ORM映射框架,它只需要配置好文件,表会自动生成,CURD的SQL语句也是自动生成的,这是他们的主要区别。
一:首先搭建MyBatis的环境
1.引入jar包
2.构建实体类,进行大配置书写
3.构建小配置
4.引入小配置
5.测试书写
二:大配置文件:
<?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 type="cn.hq.entity.Dept" alias="Dept"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="oracle.jdbc.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl" /> <property name="username" value="hq" /> <property name="password" value="2217" /> </dataSource> </environment> </environments> <!--映射文件:描述某个实体和数据库表的对应关系 --> <mappers> <mapper resource="cn/hq/entity/Dept.xml" /> <mapper resource="cn/hq/entity/GetMapper.xml" /> </mappers> </configuration>
小配置文件:(Dept.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="cn.hq.entity.Dept"> <!-- id:唯一标识:通过此id,程序可唯一锁定一条SQL parameterType:参数类型 resultType:结果类型 --> <!-- sql不是hql 查询语句--> <select id="selectDeptByNo" parameterType="int" resultType="cn.hq.entity.Dept"> select * from dept2 where deptNo = #{deptNo} </select> <!-- 增加语句 --> <insert id="insertDeptNo" parameterType="Dept"> <!-- 序列 列名 --> insert into dept2 values(SEQ_Num.nextval,#{deptName}) </insert> <!-- 删除语句 --> <delete id="deleteDeptNo" parameterType="cn.hq.entity.Dept"> delete from dept2 where deptNo=#{deptNo} </delete> <!-- 修改语句 --> <update id="updateDeptNo" parameterType="cn.hq.entity.Dept"> update dept2 set deptName=#{deptName} where deptNo=#{deptNo} </update> <!-- 模糊查询 --> <select id="likeNo" resultType="cn.hq.entity.Dept"> select * from dept2 where deptName like '%${deptName}%' </select> </mapper>
查询案例:(小配置)
测试代码:
运行结果:
增加案例:(小配置)
测试代码:
注意:commit提交必须要写。
修改案例:(小配置)
测试代码:
删除案例:(小配置)
测试代码:
模糊查询案例:(小配置)
测试代码:
总结:
MyBatis增删改查入门案例,绵薄之力,稍加记忆。