记录有问题的地方
今天在整合mybatis的时候,在配置mybatis.xml的时候,用下面这种方式指定mapper包,注释的语句是可以成功运行的,所以也就试着用包名这种方式加载试试,结果直接报错,前面加/也不行,后面才知道package标签,通过name属性指定mapper接口所在的包名,此时对应的映射文件必须与接口位于同一路径下,并且名称相同.在此记录一下.
今天做不用redis简单的防刷demo发现有点麻烦,需要设置同一个请求的过期的时间和规定时间内不能访问,map和list都试过了,总是有点问题.虽然现在有点眉目了,但还不知道是不是跳入另一个坑~
一对一
今天学习了一对一的关系,一对一级联关系在现实生活中是十分常见的,例如一个大学生只有一张一卡通,一张一卡通只属于一个学生.再如人与身份证的关系也是一对一的级联关系.在 MyBatis 中,通过 < resultMap> 元素的子元素 < association> 处理这种一对一级联关系.
标签里面<id property="id" column="id"/>
好像可以写成<result property="id" column="id"/>
<resultMap type="com.cxn.entity.Person" id="cardAndPerson1">
<id property="id" column="id"/>
<result property="name" column="name"/>
<!-- 一对一-->
<association property="card" column="card_id" javaType="com.cxn.entity.Card"
select="com.cxn.mapper.CardMapper.selectCodeById"/>
</resultMap>
<select id="selectPersonById1" parameterType="Integer" resultMap="cardAndPerson1">
select * from t_person where id=#{id}
</select>