- 1.自定义接口
package com.example1.demo1.repository;
import com.example1.demo1.Entity.MenuEntity;
import java.util.List;
public interface MenuRepository {
int save(MenuEntity menu);
int update(MenuEntity menu);
int deleteBuId(long id);
List<MenuEntity> findAll();
MenuEntity findById(long id);
}
- 2.创建对应的 Mapper.xml
namespace:对应接口全类名
id:对应接口中的方法名
parameterType:参数类型
resultType:返回值类型
MenuMapper.xml
<?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.example1.demo1.Mapper.MenuMapper">
<select id="queryMenuList" parameterType="int"
resultType="com.example1.demo1.Entity.MenuEntity">
select * FROM Menu;
</select>
<insert id=""></insert>
<update id=""></update>
<delete id=""></delete>
</mapper>
- 3.在 config.xml 中注册Mapper.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="develement">
<environment id="develement">
<!--指定事务管理的类型,这里简单使用Java的JDBC的提交和回滚设置-->
<transactionManager type="JDBC"></transactionManager>
<!--dataSource 指连接源配置,POOLED是JDBC连接对象的数据源连接池的实现-->
<dataSource type="POOLED">
<property name="driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"></property>
<property name="url" value="jdbc:sqlserver://****;DatabaseName=****"></property>
<property name="username" value="****"></property>
<property name="password" value="****"></property>
</dataSource>
</environment>
</environments>
<mappers>
<!--这是告诉Mybatis区哪找持久化类的映射文件,对于在src下的文件直接写文件名,
如果在某包下,则要写明路径,如:com/mybatistest/config/User.xml-->
<!-- <mapper resource="com/example1/demo1/Mapper/MenuMapper.xml"></mapper>-->
<mapper
resource="com/example1/demo1/repository/MenuRepository.xml"></mapper>
</mappers>
</configuration>
- 4.调用接口的代理对象完成相关业务操作 增删改必须调用 session.commit()
InputStream inputStream = HelloController.class.getClassLoader().getResourceAsStream("config.xml");
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory factory = builder.build(inputStream);
SqlSession session = factory.openSession();
MenuRepository repository = session.getMapper(MenuRepository.class);
List<MenuEntity> list = repository.findAll();
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>