发表于: 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则包含了具体年月日时分秒。
收获:自己写比看视频有意思些,更连贯,整个过程的流程会更清楚。
评论