mybatis入门

------------恢复内容开始------------

------------恢复内容开始------------

1.创建一个项目,在项目中引入mybatis框架的jar包和mysql数据库驱动包。

2.创建一个接口(持久层),用于查询数据库。

代码如下:

/**
* 数据层
*
*/
public interface PersonDao {

//查询所有Person数据
public List<Person> findAll();

//根据id查询Person数据
public Person findById(Integer id);
}

3.创建接口对应的SQL语句映射文件

 

代码如下:

<?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">
<!--###############################SQL语句映射配置文件##############################-->

<!--将该包内所有接口定义为映射接口-->
<mapper namespace="com.itheima.mybatis.PersonDao">

<!--查询所有Person数据-->
<select id="findAll" resultType="com.itheima.pojo.Person">
select * from person;
</select>

<!--根据id查询Person数据-->
<select id="findById" parameterType="int" resultType="com.itheima.pojo.Person">
select * from person where id=#{id};
</select>
</mapper>

-------------------------------------------------------------分隔符---------------------------------------------------------------------

如果Mapper映射文件的约束不会写,可以打开mybatis官网,有提供的模板,复制就行了。

4.创建mybatis的核心配置文件

代码如下:

<?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">
<!--###########################mybatis配置文件###########################-->

<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/> <!--JDBC的事务-->
<dataSource type="POOLED">
<!--jdbc配置-->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>

<!--配置SQL映射文件路径-->
<mappers>
<mapper resource="com/itheima/mybatis/PersonDao.xml"/> 
</mappers>
</configuration>
-------------------------------------------------------------分隔符---------------------------------------------------------------------
如果
<mapper resource="com/itheima/mybatis/PersonDao.xml"/>这里的SQL映射配置文件路径容易犯错,一个小技巧就是把项目编译一下,在编译文件里查找。

 因为我这个项目是web项目,所以编译后在动态资源都在WEB-INF下的classes目录下,SQL映射文件的相对路径是com/itheima/mybatis/PersonDao.xml。

-------------------------------------------------------------分隔符---------------------------------------------------------------------

如果mybatis核心配置文件的约束不会写,可以打开mybatis官网,有提供的模板,复制就行了。

5.创建类,执行SQL语句查询

public class MybatisTest {
public static void main(String[] args) throws IOException {

//1.读取mybatis配置文件
String config = "com/itheima/mybatis/mybatis-config.xml"; //定义mybatis配置文件路径
InputStream inputStream = Resources.getResourceAsStream(config);
//2.创建SqlSessionFactoryBuilder对象,并创建SqlSessionFactory对象,接着获取SqlSession对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
//3.执行SQL语句
String sqlId = "com.itheima.mybatis.PersonDao.findAll";
List<Person> list = sqlSession.selectList(sqlId);
for (Person person : list) {
System.out.println("person = " + person);
}
//4.关闭sqlSession
sqlSession.close();
}
}
-------------------------------------------------------------分隔符---------------------------------------------------------------------
String config = "com/itheima/mybatis/mybatis-config.xml"; //定义mybatis配置文件路径
如果mybatis核心配置文件
容易犯错,一个小技巧就是把项目编译一下,在编译文件里查找。

因为我这个项目是web项目,所以编译后在动态资源都在WEB-INF下的classes目录下,mybatis核心配置文件的相对路径是com/itheima/mybatis/mybatis-config.xml。

6.运行一下,查看控制台打印信息(查询的数据库表中数据),查询数据成功。

 

原文地址:https://www.cnblogs.com/w1440199392/p/13966773.html