一、持久层编写(Mybatis)
- 导入必须要的jar包【mybatis、mysql】
- 创建pojo类(实体类)
public class Dept {
private int deptno;
private String dname;
private String loc;
public Dept() {
super();
}
public Dept(int deptno, String dname, String loc) {
super();
this.deptno = deptno;
this.dname = dname;
this.loc = loc;
}
public int getDeptno() {
return deptno;
}
public void setDeptno(int deptno) {
this.deptno = deptno;
}
public String getDname() {
return dname;
}
public void setDname(String dname) {
this.dname = dname;
}
public String getLoc() {
return loc;
}
public void setLoc(String loc) {
this.loc = loc;
}
@Override
public String toString() {
return "Dept [deptno=" + deptno + ", dname=" + dname + ", loc=" + loc + "]";
}
}
public interface DeptMapper {
public void saveDept(Dept dept);
}
- 建立mapper接口的sql映射文件【对应mapper的空间】
<mapper namespace="cn.ssm.dao.DeptMapper">
<insert id="saveDept" parameterType="cn.ssm.po.Dept">
insert into dept(deptno,dname,loc) values (#{deptno},#{dname},#{loc})
</insert>
</mapper>
- 建立sqlMapConfig.xml文件【包含数据库连接,查找sql的映射文件】
<configuration>
和spring整合以后就会将environment配置删除
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test2?serverTimezone=GMT"/>
<property name="username" value="root"/>
<property name="password" value="password"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper/DeptMapper.xml"/>
</mappers>
</configuration>
<!-- 整合spring后,数据库连接在applicationContext.xml中配置,还有sqlSessionFactory,并在sqlSessionFactory中加载sql映射文件 -->
- 编写测试类【读取xml文件,创建会话工厂,创建会话并打开,获取并返回mapper接口的对象】
@Test
public void test1() {
try {
Reader reader = Resources.getResourceAsReader("sqlMapConfig.xml"