发表于: 2017-10-16 22:55:28
1 787
今日完成
task17
1.mybatis的深入学习
(2)配置sqlmapcongfig.xml文件
.
(3)配置映射文件
映射文件的命名
User.xml(原始命名), 但是mapper代理开发映射文件名称叫xxxMapper.xml,比如:userMapper.xml
namespace命名空间,作用就是对sql进行分类化管理,理解sql隔离;
注意:使用mapper代理方法开发,namespace有特殊的重要的作用。
-->
<mapper namespace="test">
<!--
id:标识 映射文件中的sql,
将sql语句封装到mappedstatement对象中,所以将id称为statement的id;
#{}:表示一个占位符
parameterType:制定输入参数的类型,
#{id} :其中的id表示 接收输入的参数,参数名称就是id,如果是简单类型,参数名任意。
resultType:指定sql输出结果的所映射的java对象,select指定resultType表示将单条记录映射成java对象
-->
<select id="findUserById" parameterType="int" resultType="com.how2java.po.User">
select * from my_mybatis where id = #{id}
</select>
</mapper>
(4)创建自定义类
Tips:1.快速封装私有化变量,get set,
2快速重写toString方法
(5)在sqlmapconfig配置加载映像文件
(6)编写程序
package cn.mybatis.first;
import java.io.IOException;
import java.io.InputStream;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import cn.mabatis.po.User;
public class MybatisFirst {
//根据id查询用户信息,得到一条记录结果
@Test
public void findUserById() throws IOException{
//mybatis的配置文件
String resource = "SqlmapConfig.xml";
//得到配置文件流
InputStream InputStream = Resources.getResourceAsStream(resource);
//创建工厂会话,传入mybatis的配置文件信息
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(InputStream);
//通过工厂得到sqlsession
SqlSession sqlSession =sqlSessionFactory.openSession();
//通过session操作数据库
//第一个参数:映射文件的statement的id,等于=namespace+"."statement的id
//第二个参数:指定和映射文件中所匹配的parapeterTYpe类型的对象
User xx = sqlSession.selectOne("test.findUserById", 1);
sqlSession.close();
}
}
明日计划
1.继续学习mybatis.
遇到问题
1.教程中使用了debug测试/log4j/junit三种工具,这个还不知道什么时候学合适,学到什么程度。
今日收获
1.对mybatis的原理有了了解。
2.eclipse的快捷操作太强大了。
评论