mybatis环境搭建

117 阅读1分钟
  1. 配置pom配置环境,引入mybatis,slf4j,还有oracle的依赖。其中oracle的依赖在中央仓库中没有,需要自己配置到本地仓库(上一条已经总结配置过程)。
  2. 创建配置文件目录resources
  3. 创建mybaties主配置文件(mybatis-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>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
                <property name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
                <property name="username" value="SCOTT"/>
                <property name="password" value="TIGER"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
    
        <mapper resource="com/zks/dao/EmpMapper.xml"/>(这个地方是path from source root的复制)
    </mappers>
</configuration>

还有log4j.properties这个配置文件
Set root category priority to INFO and its only appender to CONSOLE.
log4j.rootCategory=ERROR, CONSOLE

log4j.rootCategory=INFO, CONSOLE, LOGFILE

CONSOLE is set to be a ConsoleAppender using a PatternLayout.

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=- %m %c %l %d{yyyy-MMdd HH:mm:ss}%n

4.创建包vo(值对象)和dao(数据库访问对象)并且在vo中创建Emp在dao中创建EmpMapper和EmpMapper.xml
5.修改子配置文件EmpMapper.xml`在这里插
在这里插入图片描述
6.编写java代码

public class EmpMapper {
    public List<Emp> queryAll() throws IOException {
        //加载配置文件
        InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        //获取数据库链接
        SqlSession sqlSession=sqlSessionFactory.openSession();
        //获取数据
        List<Emp>empList=sqlSession.selectList("com.zks.dao.EmpMapper.queryAll");
        return empList;
    }
}
插入代码片

7.在test中测试
public class EmpMapperTest {

public static void main(String[] args) throws IOException {
    List<Emp> empList=new EmpMapper().queryAll();
    empList.stream().forEach(System.out::println);
}

}