myBatis.xml,pojo.xml

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="true"></setting>

        <!--启用延迟加载-->
        <setting name="lazyLoadingEnabled" value="true"></setting>
        <!--最新版本默认值为false,旧版本默认值为true;这里是旧版本,设置为false,表示只有调用关联对象时候才会加载关联对象-->
        <setting name="aggressiveLazyLoading" value="false"></setting>
    </settings>
    <!--给类取别名-->
    <typeAliases>
        <typeAlias type="com.seecen.pojo.Trainee" alias="Trainee" />
        <typeAlias type="com.seecen.pojo.Clazz" alias="Clazz" />
        <typeAlias type="com.seecen.pojo.Teacher" alias="Teacher" />
    </typeAliases>

    <!--环境-->
    <environments default="oracledb">
        <environment id="oracledb">
            <transactionManager type="jdbc"></transactionManager>
            <dataSource type="pooled">
                <property name="driver" value="oracle.jdbc.driver.OracleDriver"></property>
                <property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"></property>
                <property name="username" value="scott"></property>
                <property name="password" value="wangxinyu"></property>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="trainee.xml"></mapper>
        <mapper resource="clazz.xml"></mapper>
        <mapper resource="teacher.xml"></mapper>
    </mappers>
</configuration>

trainee.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="trainee">
    <cache/>

    <resultMap id="traineeMap2" type="com.seecen.mybatis.pojo.Trainee">
        <id column="trainee_id" property="traineeId"></id>
        <result property="traineeName" column="trainee_name"></result>
        <result property="gender" column="gender"></result>
        <result property="birthday" column="birthday"></result>
        <!-- 多对一 -->
        <association select="clazz.queryClazzById" property="clazz" column="clazz_id" javaType="clazz"></association>
        <!--一对多-->
        <collection select="teacher.queryTeacherById" property="teachers" ofType="teacher" column="trainee_id" javaType="list"></collection>
    </resultMap>

    <resultMap id="traineeMap" type="com.seecen.mybatis.pojo.Trainee">
        <id column="trainee_id" property="traineeId"></id>
        <result property="traineeName" column="trainee_name"></result>
        <result property="gender" column="gender"></result>
        <result property="birthday" column="birthday"></result>
        <result property="clazz.clazzId" column="clazz_id"></result>
        <result property="clazz.clazzName" column="clazz_name"></result>
    </resultMap>



    <sql id="globalQuery">
        select trainee_id traineeId,trainee_name traineeName,birthday,gender,clazz_id "clazz.clazzId"
    </sql>

    <insert id="add" parameterType="com.seecen.mybatis.pojo.Trainee">
        INSERT INTO t_trainee VALUES(seq_t_trainee.nextval,#{traineeName},#{birthday},#{gender},#{clazz.clazzId})
    </insert>

    <update id="edit" parameterType="com.seecen.mybatis.pojo.Trainee">
        UPDATE t_trainee SET TRAINEE_NAME = #{traineeName} WHERE TRAINEE_ID = #{traineeId}
    </update>

    <delete id="del" parameterType="int">
        Delete from t_trainee where trainee_id = #{id}
    </delete>

    <select id="list" resultMap="traineeMap" parameterType="string">
        select t.*,clz.clazz_name from t_trainee t left join t_clazz clz on t.clazz_id = clz.clazz_id where t.trainee_name like '%' || #{string} || '%'
    </select>

    <select id="query" resultType="trainee" parameterType="trainee">
        <include refid="globalQuery"></include>
        from t_trainee
        <where>
            <if test="traineeName != null and traineeName != ''">
                and trainee_name like '%' || #{traineeName} || '%'
            </if>
            <if test="gender != null and gender != ''">
                and gender = #{gender}
            </if>
        </where>
    </select>

    <select id="search" resultMap="traineeMap2">
        select * from t_trainee
    </select>
</mapper>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值