发表于: 2018-09-09 23:04:30

1 381


今天做的事:

1.       完成使用mybatis操作数据库,这在之前做过,这次自己写,还是问题很多很多,主要还是没理解是怎么传参,怎么配合工作的。贴上程序吧。

Xml文件配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE
configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd"
>
<configuration>
    <environments
default="development">
        <environment
id="development">
            <transactionManager
type="JDBC"></transactionManager>
            <dataSource
type="POOLED">
                <property
name="driver" value="com.mysql.jdbc.Driver"/>
                <property
name="url" value="$jdbc:mysql//local3306/sf"/>
                <property
name="root" value="root"/>
                <property
name="password" value="269785"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
<mapper
resource="mapper.xml"/>
</mappers>

</configuration>

 

配置mapper文件,编译sql,注意这些写法

<?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.mybatis.UserMapper">
    <select
id="findUser" resultType="com.mybatis.User">
       
select * from dk where id=#{id}
   
</select>
    <select
id="findAll" resultType="com.mybatis.User">
       
select *from dk
   
</select>
    <insert
id="addUser" keyProperty="id" useGeneratedKeys="true" >
       
insert into dk(name,age) values (#{name},#{age})
   
</insert>
    <update
id="updateUser" parameterType="boolean">
       
update dk set name=#{name},#{age} where id=#{id}
   
</update>
    <delete
id="deleteUser" parameterType="boolean">
       
delete from dk where id=#{id}
   
</delete>
</mapper>

写了创建会话的类。

测试类:

2.学习注解使用mybatis

编辑接口

public interface AnnotationBook {

@Select("select booknum id,bookname name,price,birth date from book where booknum=#{id}")
public Book getBookById(int id);

 @Update("update book set birth=#{date},bookname=#{name} where booknum=#{id}")
public int updateBookById(Book b);

 @Delete("delete from book where booknum=#{id}")
public int deleteBookById(int id);

 @Insert("insert into dk(name,age) values (#{name},#{age});")
public int addBook(Book b);

 @Select("select id id, name name,age age from book")
public List<Book> getAllBook();

}

测试类


明天计划的事:


明天又要去高校支撑,所以可能要回来才能做,这期间手机上看看基础把,回来跑完mybatis的其他方法,把注解的方法完成以后,再做一遍


遇到的问题:

注解方法时,运行出错,注解的方法没有再xml配置文件中要记得添加

<mapper class="com.mybatis.AnnotationBook"/>

今天的收获:


感觉注解的方法不需要针对映射口去编写具体的实现类代码,这个具体的实现类由MyBatis帮我们动态构建出来,我们只需要直接使用即可。

因为少了mapper.xml的配置,直接在写接口的时候注解,好像更加方便简洁。




返回列表 返回列表
评论

    分享到