提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、Mybatis所用jar包
- 二、使用步骤
- 1.配置mybatis.xml文件
- 2.创建与数据库对应的po类,提供get、set、toString方法
- 3.创建与Dept对应的接口类:DeptDao
- 4.创建DeptDao.xml配置文件
- 5.调用
前言
以下详细说明了mybatis配置环境,与使用方式(CRUD)。提示:以下是本篇文章正文内容,下面案例可供参考
一、Mybatis所用jar包
提取码:xyz1
其中log4j.jar与log4j.xml为日志文件,可方便记录运行情况。
二、使用步骤
1.配置mybatis.xml文件
使用的数据库为Oracle数据库,代码如下(示例):
<?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><!-- 配置jdbc --><properties><property name="driver" value="oracle.jdbc.driver.OracleDriver"/><property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"/><property name="username" value="scott"/><property name="password" value="root"/></properties><!-- 起别名 --><typeAliases><typeAlias type="com.hwua.po.Dept" alias="dept"/><typeAlias type="com.hwua.po.Emp" alias="emp"/></typeAliases><!-- 声明所有的操作环境 --><environments default="development"><!-- 声明当前正在用的操作环境 --><environment id="development"><!-- 声明事务的管理方式 --><transactionManager type="JDBC"></transactionManager><!-- 创建数据库连接池的时候的必要条件 --> <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/hwua/dao/DeptMapper.xml" /><mapper resource="com/hwua/dao/EmpMapper.xml"/> --><!--一次性全部配置--><package name="com.hwua.dao"/></mappers>
</configuration>
2.创建与数据库对应的po类,提供get、set、toString方法
例如Dept:
package com.hwua.po;import java.util.List;public class Dept {private int deptno;private String dname;private String loc;private List<Emp> emps;public List<Emp> getEmps() {return emps;}public void setEmps(List<Emp> emps) {this.emps = emps;}public Dept() {super();}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;}@Overridepublic String toString() {return "Dept [deptno=" + deptno + ", dname=" + dname + ", loc=" + loc + ", emps=" + emps + "]";}}
3.创建与Dept对应的接口类:DeptDao
接口类主要提供方法
package com.hwua.dao;import java.util.List;
import java.util.Map;import com.hwua.po.Dept;public interface DeptDao {//查找全部public List<Dept> SelectAll();//根据id查找public Dept findById(int deptno);//添加public void insert(Dept d);//修改public void update(Dept d);//删除public void Delete(int deptno);//查询部门编号,显示所有此部门的员工public Dept findByIdDetial(int deptno);
}
4.创建DeptDao.xml配置文件
*标签中的id为接口方法中的方法名resultType为返回的结果类型parameterType为传入值的类型*
<?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.hwua.dao.DeptDao"><!-- 查找全部 --><select id="SelectAll" resultType="com.hwua.po.Dept">select * from dept</select><!-- 根据id查找 --><select id="findById" resultType="com.hwua.po.Dept" parameterType="int">select * from dept where deptno = #{deptno}</select><!-- 添加 --><insert id="insert" parameterType="dept">insert into dept(deptno,dname,loc)values(#{deptno},#{dname},#{loc})</insert><!-- 修改 --><update id="update" parameterType="dept">update dept set dname = #{dname},loc = #{loc} where deptno = #{deptno}</update><!-- 删除 --><delete id="Delete" parameterType="int">Delete from dept where deptno = #{deptno}</delete>
<mapper>
5.调用
public void helloDept() {//读取mybatis配置文件InputStream in = Test.class.getClassLoader().getResourceAsStream("mybatis.xml");//通过SqlSessionFactoryBuilder工具类获取factory,再通过其获取到SqlSessionSqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();SqlSessionFactory factory = builder.build(in);SqlSession sqlSession = factory.openSession();//获取映射器DeptDao dd = sqlSession.getMapper(DeptDao.class);int deptno = 10;Dept d = dd.findById(deptno);System.out.println(d);}