Mybatis 数据库表增删改查

来源:互联网 发布:此时无法下载淘宝app 编辑:程序博客网 时间:2024/06/03 17:53
1.用户和角色多对多的关系,为了查询用户表的同时查询出角色表,在userMapper.xml配置文件中进行上述的配置<resultMap id="BaseResultMap" type="com.model.User" ></span>    <id column="id" property="id" jdbcType="VARCHAR" />    <result column="name" property="name" jdbcType="VARCHAR" />    <result column="password" property="password" jdbcType="VARCHAR" />    <result column="type" property="type" jdbcType="INTEGER" />    <result column="descr" property="descr" jdbcType="VARCHAR" />    <result column="end_time" property="endTime" jdbcType="INTEGER" />    <result column="create_time" property="createTime" jdbcType="INTEGER" />  </resultMap>  <resultMap id="BaseResultMap1" type="com.linktech.model.User" extends="BaseResultMap">   <collection property="roles" javaType="list" ofType="com.model.Role">   <id column="id" property="id" jdbcType="VARCHAR" />    <result column="name" property="name" jdbcType="VARCHAR" />    <result column="descr" property="descr" jdbcType="VARCHAR" />    <result column="type" property="type" jdbcType="INTEGER" />   </collection></resultMap>2.因为已经配置过角色和用户的多表关系那么查询用户的语句如下:<select id="getAll" resultMap="BaseResultMap1">SELECTse_user.id,sr_user_role.user_id,sr_user_role.role_id,se_user.name,se_user.password,se_user.type,se_user.descr,se_user.end_time,se_user.create_time,se_role.id,se_role.name,se_role.descr,se_role.type,se_role.create_timeFROMse_userINNER JOIN sr_user_role ON se_user.id = sr_user_role.user_idINNER JOIN se_role ON sr_user_role.role_id = se_role.id  </select>3.根据用户表进行多参数查询:<select id="selectList" parameterType="com.dao.User" resultMap="BaseResultMap">  select    <include refid="Base_Column_List" />    from se_action    where 1=1     <if test="name != null and name != ''">    AND name = #{name,jdbcType=VARCHAR}    </if>    <if test="descr != null and descr != ''">    AND descr = #{descr,jdbcType=VARCHAR}    </if>  </select>查询表数据时如果为空则不过滤该条件,使用以下判断:<if test="id != null and id != ''" >

0 0