新学MyBatis
程序员文章站
2022-07-05 14:09:49
今天学习了Mybatis入门,将知识归纳一下: 创建一个java项目之后,想使用myBatis需要完成一下几个步骤: 1.先导jar包 2.写model文件 () 3.写全局配置文件 SqlMapConfig.xml,配置数据源和事务管理器 SqlMapConfig.xml(文件头可以从mybati ......
今天学习了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&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();
}
}
上一篇: VB6.0怎么设置窗口平铺方式?
下一篇: CorelDRAW中怎么编辑文字?