1.传统开发方式
- 编写IpadDao接口和IpadDaoImp实现类,实现类中写读入SqlMapConfig.xml流,并调用SqlSession的
以下方法:

2.基于代理开发的方式
2.1创建1个IPadMapper接口,并创建IPadMapper.xml文件,并遵守以下规范

(1)IpadMapper接口
package com.hh.mapper;
import com.hh.domain.Ipad;
public interface IPadMapper {
/*
查询某个id的Ipad的信息
*/
public Ipad findIpadById(int id);
}
(2)IpadMapper.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="com.hh.mapper.IPadMapper">
<select id="findIpadById" parameterType="int" resultType="ipad">
select * from ipadlist1 where id=#{id}
</select>
</mapper>
2.2 创建SqlMapConfig.xml主配置文件,并编写MybatisTest类
(1)SqlMapConfig.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="jdbcConfig.properties"></properties>
<typeAliases>
<package name="com.hh.domain"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"></property>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/hh/mapper/IPadMapper.xml"/>
</mappers>
</configuration>
(2)MybatisTest.class
import com.hh.domain.Ipad;
import com.hh.mapper.IPadMapper;
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 java.io.IOException;
import java.io.InputStream;
public class MybatisTest {
@Test
public void findOneTest() throws IOException {
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
SqlSession sqlSession = factory.openSession();
// 基于IpadMapper接口,创建JDK动态代理对象
IPadMapper mapper = sqlSession.getMapper(IPadMapper.class);
Ipad ipad = mapper.findIpadById(1);
// 输出Ipad的信息
System.out.println(ipad);
}
}
2.3 结果

2.4 章总结

本文详细介绍了传统开发中IpadDao接口的实现和基于代理的IPadMapper接口,通过实例展示了如何配置SqlMapConfig.xml和使用Mybatis进行数据操作。重点在于两种开发模式的区别和实际应用。
458

被折叠的 条评论
为什么被折叠?



