1、dynamicProject工程结构
2、全局配置文件mybais-config.xml
<?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>
<properties resource="db.properties"></properties>
<!-- 为User实体类设置别名 -->
<typeAliases >
<typeAlias type="com.jie.mybatis.entity.User" alias="User"/>
</typeAliases>
<!-- 和spring整合后将去除environments配置 -->
<environments default="development">
<environment id="development">
<!-- 使用jdbc事务管理,由mybatis管理 -->
<transactionManager type="jdbc"></transactionManager>
<!-- 数据库连接池,由mybatis管理 -->
<dataSource type="POOLED">
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments>
<!-- 配置映射文件 -->
<mappers>
<mapper resource="com/jie/mybatis/mapper/userMapper.xml" />
</mappers>
</configuration>
3
、映射文件mapper.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">
<!-- 命名空间指向dao接口 -->
<mapper namespace="com.jie.mybatis.dao.UserDao">
<!-- id对应dao接口中方法的名字, parameterType指输入类型,resultType是输出类型,
正常是实体类对象,通过设置别名后不用写报名加类名-->
<select id="findUserById" parameterType="int" resultType="User">
select * from userInfo where userId = #{id}
</select>
</mapper>
4、测试类
public class MybatisTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
test1();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void test1() throws IOException {
// 加载配置文件得到sqlsessionFactory工厂
// 构建sqlSessionFactor
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
// 通过工厂得到SqlSession
SqlSession session = sessionFactory.openSession();
UserDao userDao = session.getMapper(UserDao.class);
User user = userDao.findUserById(1);
System.out.println(user);
}
}
5、输出结果
User [userId=1, userName=嘿你杰哥, userPassword=123456, userSex=男]