zoukankan      html  css  js  c++  java
  • mybatis一简单one2one关系xml配置

            user类

    <?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.mapper.UserMapper">


    <resultMap id="userMap" type="User"> //user对象映射
    <id property="userId" column="user_id" javaType="int"></id>//user的Id
    <result property="userName" column="user_name" javaType="string"/> //user的属性
    <result property="userMoney" column="user_money" javaType="string"/>
    </resultMap>


    <resultMap id="userAndInfoMap" type="User">
    <id property="userId" column="user_id" javaType="int"></id>
    <result property="userName" column="user_name" javaType="string"/>
    <result property="userMoney" column="user_money" javaType="string"/>
    <!-- <association property="info" resultMap="com.mapper.UserInfoMapper.infoMap" javaType="UserInfo"/> -->  // user对象包含的对象的配置方式一(user的sql里面写join连接info表)

    <association property="info" column="user_id" javaType="UserInfo"   //user对象包含的对象的配置方式一(各查各的互补影响)
    select ="com.mapper.UserInfoMapper.findUserInfoByUserId"> 
    </association>


    </resultMap>

    <insert id="addUser" parameterType="User">
    insert into user values(null,#{user.userName},#{user.userMoney})
    </insert>

    <delete id="deleteUserByuserId">
    delete from user where user_id = #{id}
    </delete>

    <update id="updateUser" parameterType="User">     //parameterType="User" 表示传递的参数的类型   //id="updateUser"使用的方法名
    update user set user_name=#{user.userName},user_money=#{user.userMoney
    } where user_id=#{user.userId}
    </update>

    <select id="selectUserByuserId" resultMap="userAndInfoMap">   // resultMap="userAndInfoMap"返回值的类型,如果返回值是List<UserInfo>也用这个类型
    select * from user u left join userInfo i on u.user_id = i.user_id where u.user_id = #{id}
    </select>

    <select id="findAllUser" resultMap="userMap">
    select * from user
    </select>

    <select id="findUserCount" resultType="int">
    select count(*) from user where user_id !=2
    </select>

    <select id="findUserByuserNameLike" resultMap="userMap">
    select * from user where user_name like '%${userName}%'
    </select>


    </mapper>

                    userInfo类

    <?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.mapper.UserInfoMapper">


    <resultMap id="infoMap" type="UserInfo">//对象映射
    <id property="infoId" column="info_id" javaType="int"></id>
    <result property="infoName" column="info_name" javaType="string"/>
    </resultMap>


    <select id="findUserInfoByid" resultMap="infoMap">
    select * from userInfo where info_id =#{id}
    </select>
    <select id="findUserInfoByUserId" resultMap="infoMap">
    select * from userInfo where user_id =#{id}
    </select>
    </mapper>

  • 相关阅读:
    IBM ThinkPad SL400 XP驱动
    IMAIL系统修改IP地址的处理方法
    微信小程序setData的回调方法
    数据库的事务常识
    Java中的多线程
    微信小程序合并两个json对象
    微信小程序setData修改对象的属性或者数组中的某个对象的属性
    索引常识
    并发与并行的区别
    避免问题发生的代码规范
  • 原文地址:https://www.cnblogs.com/ZXiaocui/p/6736299.html
Copyright © 2011-2022 走看看