myBatis学习

最近用到了mybatis开发项目,也是现学现用,这里说一说使用使用过程中学到的和遇到的知识和问题

1.首先要先导入mybatis的jar包

2.建立相关的配置文件 applicationContext-mybatis.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>
  <settings>
        <setting name="cacheEnabled" value="false" />
        <setting name="lazyLoadingEnabled" value="false" />
        <setting name="aggressiveLazyLoading" value="false"/>
    </settings>
    <typeHandlers>  
        <typeHandler javaType="String" jdbcType="CLOB" handler="org.apache.ibatis.type.ClobTypeHandler"/>  
    </typeHandlers>  
    <plugins>
<plugin interceptor="com.fbi.framework.common.base.PagePlugin">
<property name="dialect" value="oracle"/>
<property name="pageSqlId" value=".*ListPage*" />
</plugin>
    </plugins>


</configuration>


3.这里的dao为借口,不需要实现方法,建立配置文件映射如图hibernate中的.hbm.xml文件,所不同的是mybatis是没有hibernate的面向对象完全,这里需要

进行sql组装:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">

<mapper namespace="">

<resultMap id="" type="">

<result property="" column="" />

....

</resultMap>

<sql id="">

<![CDATA[...]]>

</sql>

<insert id="" parameterType="" ..>

sql 拼接,支持Ognl标签

如:<if>

<foreach>等

可以用${}取值

也可以用#{}取值

</insert>

<update ..>


</update>

<delete>


</delete>

<select>


</select>


</mapper>


其中<select><insert><update><delete>中的id为dao接口对应的方法名,其中接口中的方法中的参数在配置文件对应的id中可以用Ognl标签取出也可以用#{}和${}取出

#和$方式的区别在于一个是预编译方式,安全的,一个是直接拼接,不安全,可以sql注入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值