zoukankan      html  css  js  c++  java
  • MyBatis增删改查


    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增删改查入门案例,绵薄之力,稍加记忆。

       

  • 相关阅读:
    1030
    Android网络:开发浏览器(二)——功能完善之长按网页图片菜单
    表达式(四则运算)计算的算法
    [置顶] 得失寸心知
    参考storm中的RotatingMap实现key超时处理
    分布式事务 & 两阶段提交 & 三阶段提交
    遗传算法
    模拟退火算法
    Mysql死锁问题解决方式 & 聚簇索引、隔离级别等知识
    Mysql表锁、行锁、页锁
  • 原文地址:https://www.cnblogs.com/hq-123/p/5881669.html
Copyright © 2011-2022 走看看