1、环境
myeclipse2014
jar包:
mybatis-3.2.3.jar
mysql-connector-java-5.1.24.jar
2、项目搭建
2.1新建java 工程MyBatisDemo
2.2新建源文件夹Resource
2.3在Resource文件夹下新建SqlMapConfig.xml
2.4在Resource文件家下新建文件夹sqlmap
2.5在sqlmap文件夹下新建User.xml文件
2.6在src文件夹下新建包:com.ace.mybatis.first与com.ace.mybatis.pojo
2.7在项目下新建文件夹lib
在lib文件夹下引入jar包并builtpath
3、进行相关配置
3.1、配置全局配置文件SqlMapConfig.xml
tips:这里的xml文件名可以任意。
xml文件头如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://www.mybatis.org/dtd/mybatis-3-config.dtd" >
注意:文件头?与xml中不能有空格。
文件中配置如下:
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/mydb1"></property>
<property name="username" value="root"></property>
<property name="password" value="123"></property>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="sqlmap/User.xml" />
</mappers>
</configuration>
tips:<mapper></mapper>是全局配置中指向映射文件的配置
3.2、配置映射文件
文件头:
<?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="test">
<!--配置许多sql语句 -->
<!--statementId sql语句封装到mappedStatement -->
<!--parameterType是参数类型-->
<!--resultType返回类型-->
<select id="findUserById" parameterType="int"
resultType="com.ace.mybatis.pojo.Per">
SELECT * FROM per WHERE id=#{id}
</select>
</mapper>
4、编写相关代码
在com.ace.mybatis.first中新建类PerTest.java,代码如下:
public class PerTest {
@Test
public void addPerTest() throws IOException {
String resource="SqlMapConfig.xml";
InputStream is=Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(is);
SqlSession sqlSession=sqlSessionFactory.openSession();
//第一个参数:namespace+statementId
//第二个参数:parameterType类型的参数
//返回resultType类型呃对象
Per per=sqlSession.selectOne("test.findUserById",1);
sqlSession.close();
System.out.println(per);
}
}
在com.ace.mybatis.pojo下新建类Per.java,代码如下:
public class Per {
private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private String name;
@Override
public String toString() {
return "Per [id=" + id + ", name=" + name + "]";
}
}
5、运行