第一个Mybatis配置
配置准备
相关环境依赖
-
数据库准备
新建一个数据库座测试用,在新建的数据库里先创建一张表,我们在表里创建几个字段,存放一两条数据。
配置过程
应该先导入相关jar包啊!!!
-
先写一个bean类,写好get和set方法,因为以后要输出测试所以把toString方法也写上。
package com.atahpu.mybatis; /** * @Author : JackWang * @Date : 2021/7/23 13:53 * @E-mail : JackWang_1018@outlook.com * @Version 1.0 * @TOOL: Intellij IDEA * @Description: */ public class Employee { private int id; private String lastName; private String gendar; private String email; @Override public String toString() { return "Employee{" + "id=" + id + ", lastName='" + lastName + '\'' + ", gendar='" + gendar + '\'' + ", email='" + email + '\'' + '}'; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public String getGendar() { return gendar; } public void setGendar(String gendar) { this.gendar = gendar; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } }
-
编写mybatis的xml依赖环境;这个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="com.mysql.cj.jdbc.Driver"/> <!--引入Driver类的路径--> <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/> <!--数据库地址--> <property name="username" value="root"/> <!--数据库登录的账号--> <property name="password" value="r3344520"/> <!--数据库登录的密码--> </dataSource> </environment> </environments> <mappers> <mapper resource="selectEmp.xml"/> <!--这个地方的引用还比较重要,算是一个疑问。--> </mappers> </configuration>
-
测试类的编写
package com.atahpu.mybatis; 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; /** * @Author : JackWang * @Date : 2021/7/23 13:55 * @E-mail : JackWang_1018@outlook.com * @Version 1.0 * @TOOL: Intellij IDEA * @Description: */ public class mybatisTest { @Test public void Test() throws IOException { String resource = "mybatis-config.xml";//mybati配置环境的引入 InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);//新建一个SQLSession工厂类去获得一个SqlSession SqlSession session = sqlSessionFactory.openSession();//获得一个sqlSession try{ Employee employee = session.selectOne("com.atahpu.mybatisEmp.selectEmp", 1);//selectone函数,调用selectEmp这个xml文件中配置好的sql语句 System.out.println(employee);//输出测试 }finally { session.close();//关闭session。 } } }
-
编写这个selectEmp.xml文件,这个文件应该在上面那个session.selectOne()方法执行之前执行。
<?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"> <!--相关参数说明:namespacce:这个可以随便写,可以把命名空间当成包看。 id:唯一标识符,一个命名空间内,只有这么一个 resultType:返回值类型,返回Employee类,所以我这就这么写的。 中间那个就是SQ语句。 --> <mapper namespace="com.atahpu.mybatisEmp"> <select id="selectEmp" resultType="com.atahpu.mybatis.Employee"> select * from tbl_employee where id = #{id} </select> </mapper>
-
-