新学MyBatis

2019-08-16 12:18:08来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

新学MyBatis

今天学习了Mybatis入门,将知识归纳一下:

创建一个java项目之后,想使用myBatis需要完成一下几个步骤:

 

1.先导jar包

 

2.写model文件 ()

 

3.写全局配置文件 SqlMapConfig.xml,配置数据源和事务管理器

SqlMapConfig.xml(文件头可以从mybatis-3.2.7.pdf文档的2.1.2小节中拷贝)

头文件:

<?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>

配置数据源和事务管理器:

代码:

<!-- 配置mybatis的环境信息 -->
<environments default="development">
<environment id="development">
<!-- 配置JDBC事务控制,由mybatis进行管理 -->
<transactionManager type="JDBC"></transactionManager>
<!-- 配置数据源,采用dbcp连接池 -->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatistest?useUnicode=true&amp;characterEncoding=utf8"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>

4.写映射文件 .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="user">
<!-- 根据id查询-->
<!--
[id]:statement的id,要求在命名空间内唯一
[parameterType]:入参的java类型
[resultType]:查询出的单条结果集对应的java类型
[#{}]: 表示一个占位符?
[#{id}]:表示该占位符待接收参数的名称为id。
注意:如果参数为简单类型时,#{}里面的参数名称可以是任意定义
-->
<select id="findUserById" parameterType="int" resultType="com.mybatistest.model.User">
select * from user where id=#{id}
</select>
</mapper>

5.在SqlMapConfig.xml文件中告诉Mybatis加载映射文件

代码:

<mappers>
<mapper resource="com/mybatistest/sqlmap/User.xml"></mapper>
</mappers>


进行单元测试:

代码附上:

public class Demo01 {
@Test
public void test01() throws IOException {
// a) 读取配置文件;
InputStream is = Resources.getResourceAsStream("SqlMapConfig.xml");
// b) 通过SqlSessionFactoryBuilder创建SqlSessionFactory会话工厂。 ctrl+alt+v
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
// c) 通过SqlSessionFactory创建SqlSession。
SqlSession session = sessionFactory.openSession();
// d) 调用SqlSession的操作数据库方法。数据可返回一条结果,用selectOne
User user = session.selectOne("findUserById",10);
System.out.println(user);
// e) 关闭SqlSession。
session.commit();
}
}



			   

原文链接:https://www.cnblogs.com/shanidea/p/11331583.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:[Spring cloud 一步步实现广告系统] 16. 增量索引实现以及投送数

下一篇:Java 8原生API也可以开发响应式代码?