29 lines
1.3 KiB
XML
29 lines
1.3 KiB
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="top.fjy8018.shiro.mapper.UserMapper">
|
|
|
|
<resultMap id="userMap" type="top.fjy8018.shiro.dataobject.User">
|
|
<id property="uid" column="uid"/>
|
|
<result property="username" column="username"/>
|
|
<result property="password" column="password"/>
|
|
<collection property="roles" ofType="top.fjy8018.shiro.dataobject.Role">
|
|
<id property="rid" column="rid"/>
|
|
<result property="rname" column="rname"/>
|
|
<collection property="permissions" ofType="top.fjy8018.shiro.dataobject.Permission">
|
|
<id property="pid" column="pid"/>
|
|
<result property="name" column="name"/>
|
|
<result property="url" column="url"/>
|
|
</collection>
|
|
</collection>
|
|
</resultMap>
|
|
|
|
<select id="findByUsername" parameterType="java.lang.String" resultMap="userMap">
|
|
SELECT u.*,r.*,p.*
|
|
FROM user u
|
|
INNER JOIN user_role ur ON ur.uid = u.uid
|
|
INNER JOIN role r ON ur.uid = r.rid
|
|
INNER JOIN permission_role pr ON r.rid = pr.rid
|
|
INNER JOIN permission p ON pr.pid = p.pid
|
|
WHERE u.username = #{username}
|
|
</select>
|
|
</mapper> |