发表于: 2016-08-19 14:46:38

3 2398


今天完成的事情:尝试写了一个mybatis的Demo,完成了SqlMapConfig.xml和UserMapper.xml的配置,其中configuration的配置如下:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE configurantion

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http:://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>

<environment default="environment">

<transactionManager type="JDBC"/>

<!--使用连接池的数据源配置  -->

<dataSource type="POOLED">

<property name="driver" value="com.jdbc.mybatis.Driver"/>

<property name="url" value="jdbc:mybatis://localhost:3306/User"/>

<property name="username" value="root"/>

<property name="password" value="root"/>

</dataSource>

</environment>

<mappers>

<mapper resource="demo1Mapper.xml">

</mapper>

</configuration>

    配置的模式基本是固定的,由configuration,environment,transactionManager,dateSource,本地服务器的连接等完成,其中本地服务器的url的主机名和端口号分别为localhost和3306则可以简写成:jdbc:mybatis:///User

   UserMapper.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="cn.ptteng.mybatis.UserMapper">

<select id="" parameterType="" resultType="">

select * from user where id = #{id}

</select>

<insert id="addUser" parameterType="User">

insert into user(id,username,birthday,sex,address) values

(#{id},#{username},#{birthday},#{sex},#{address})

</insert>

<update id="updateUser" parameterType="User">

update user set

username=#{username},#{birthday},#{sex},#{address}

where id=#{id}

</update>

<delete id="deleteUserById" parameterType="int" >

delete from user

where id=#{id}

</delete>

</mapper>

   UserMapper.xml的配置基本由mapper namespace 开始,namespace在Dao原始开发中可以随便命名,但在代理开发时要用UserMapper的全限定名,即他的绝对地址,然后传入sql语句对数据库进行的CRUD,parameterType是设置数据的传入类型,resultType则是设置数据的输出类型。

明天计划的事情:继续完成这个Demo。

遇到的困难:导入包的问题比较多,有时候是java.util.Date和java.sql.Date的问题,在需要传入前者的时候,你传入后者则会报错,而且按alter+/也无法解决问题,后面查了一下,是包的问题,于是换成了java.util.Date就解决了,原来java.util.Date是父类,java.sql.Date是子类,数据库的Date是为了和数据类型相匹配,而且java.sql.Date只包含了日期,不包含具体的时间,java.util.Date则包含了具体年月日时分秒。

收获:自己写比看视频有意思些,更连贯,整个过程的流程会更清楚。





返回列表 返回列表
评论

    分享到