发表于: 2018-02-04 22:32:07

1 692


今天做了什么:

1.用mybatis测试绿了一小段select和insert

mybatis需要在实体类中有无参的构造函数,如果没有构造函数,会默认创建一个无参构造函数,如果有个有参数的构造函数,那就不会默认创建,会报错......[java.lang....java.lang....]

2.写了mybatis实现的crud,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="test">
   <!--增添用户-->
   <insert id="insertStud" parameterType="Students">
       insert into students(create_at, update_at, name, gender, age, qq, occupation, join_date, school, number,
daily_url, declaration, consoler  )
values(#{create_at},#{update_at},#{name},#{gender},#{age},#{qq},#{occupation},#{join_date},#{school},
#{number},#{daily_url},#{declaration},#{consoler})
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
           select last_insert_id()
</selectKey>
   </insert>
   <!-- 删除用户 -->
   <delete id="deleteStud" parameterType="java.lang.Long">
       delete from students where id=#{id}
</delete>
   <!-- 需求:通过id查询用户 -->
   <select id="findStudById"  parameterType="Long" resultType="Students">
       select * from students where id = #{id}
</select>
   <select id="findStudByName" parameterType="java.lang.String" resultType="Students">
       select * from students where name like '%${value}%'
</select>
   <!-- 更新用户 -->
   <update id="updateStud" parameterType="Students">
       update students set update_at=#{update_at}, name=#{name}, gender=#{gender}, age=#{age}, qq=#{qq},
occupation=#{occupation}, join_date=#{join_date}, school=#{school}, number=#{number},
daily_url=#{daily_url}, declaration=#{declaration}, consoler=#{consoler}
where id=#{id}
</update>
</mapper>


熟悉了sqlSessionFactory、sqlSession、ecxutor的关系。


同时测试的时候,默认字段非null可能也会报错。


明天打算做什么:

mybatis 的crud操作都能绿。学习原始DAO。

问题:

测试类在src/java目录下可以绿,换到test就出现找不到类的情况。

收获:

数据类型在数据库和java中的对应,不同类型数据要用类似1L,1等区分




返回列表 返回列表
评论

    分享到