详解springboot集成mybatis xml方式

接下来我将详细讲解关于“详解Spring Boot集成MyBatis XML方式”的攻略。

1. 添加相关依赖

在pom.xml中添加以下依赖:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
   <groupId>org.mybatis.spring.boot</groupId>
   <artifactId>mybatis-spring-boot-starter</artifactId>
   <version>2.0.0</version>
</dependency>

2. 添加相关配置

在application.properties中添加以下配置信息:

#MyBatis
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.example.demo.entity
# DataSource
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

3. 编写Mapper接口

可以在 src/main/java/com/example/demo/mapper 下添加 UserMapper.java 接口

@Mapper
public interface UserMapper {
    User getUserById(int id);
    void addUser(User user);
    void updateUser(User user);
    void deleteUser(int id);
    List<User> getAllUser();
}

4. 编写Mapper.xml文件

可以在 src/main/resources/mapper/UserMapper.xml 文件下添加以下示例代码

<mapper namespace="com.example.demo.mapper.UserMapper">
    <resultMap id="BaseResultMap" type="com.example.demo.entity.User">
        <id column="id" property="id" jdbcType="INTEGER"/>
        <result column="username" property="username" jdbcType="VARCHAR"/>
        <result column="password" property="password" jdbcType="VARCHAR"/>
    </resultMap>
    <select id="getUserById" resultMap="BaseResultMap">
        select id, username, password from user where id=#{id}
    </select>
    <select id="getAllUser" resultMap="BaseResultMap">
        select id, username, password from user
    </select>
    <insert id="addUser">
        insert into user(username, password) values(#{username}, #{password})
    </insert>
    <update id="updateUser">
        update user set username=#{username}, password=#{password} where id=#{id}
    </update>
    <delete id="deleteUser">
        delete from user where id=#{id}
    </delete>
</mapper>

5. 编写Service层和Controller层

现在可以在 src/main/java/com/example/demo/service 下添加 UserService.java接口文件和 UserServiceImpl.java 实现类文件,代码如下:

public interface UserService {
    List<User> getAllUser();
    User getUserById(int id);
    void addUser(User user);
    void updateUser(User user);
    void deleteUser(int id);
}
@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private UserMapper userMapper;

    @Override
    public List<User> getAllUser() {
        return userMapper.getAllUser();
    }

    @Override
    public User getUserById(int id) {
        return userMapper.getUserById(id);
    }

    @Override
    public void addUser(User user) {
        userMapper.addUser(user);
    }

    @Override
    public void updateUser(User user) {
        userMapper.updateUser(user);
    }

    @Override
    public void deleteUser(int id) {
        userMapper.deleteUser(id);
    }
}

src/main/java/com/example/demo/controller 下添加 UserController.java 文件,代码如下:

@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("/all")
    public List<User> getAllUser() {
        return userService.getAllUser();
    }

    @GetMapping("/{id}")
    public User getUserById(@PathVariable int id) {
        return userService.getUserById(id);
    }

    @PostMapping("/")
    public void addUser(@RequestBody User user) {
        userService.addUser(user);
    }

    @PutMapping("/")
    public void updateUser(@RequestBody User user) {
        userService.updateUser(user);
    }

    @DeleteMapping("/{id}")
    public void deleteUser(@PathVariable int id) {
        userService.deleteUser(id);
    }

}

6. 启动Spring Boot

最后,启动Spring Boot应用程序,程序会自动扫描 UserMapper.xml 文件并将所有的Mapper映射至Mybatis框架中,从而实现对数据库的操作。

以上就是关于“详解Spring Boot集成MyBatis XML方式”的攻略了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解springboot集成mybatis xml方式 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Java常用命令汇总

    Java常用命令汇总攻略 Java是一种高级编程语言,由于其稳定性和跨平台性能备受欢迎,因此成为了许多软件的首选语言。针对Java的常用命令,本文旨在为初学者提供帮助以及提高Java编程效率。下面将对Java常用命令进行详细讲解。 Java编译命令 Java编写的代码在开发完成后需要编译成可执行的文件。下面是Java编译命令的格式和用法: javac [op…

    Java 2023年5月19日
    00
  • SpringBoot 配置文件中配置的中文,程序读取出来是乱码的解决

    当我们在 SpringBoot 配置文件中配置中文时,有时程序运行后会读取出来乱码的情况。这是因为编码不一致或者文件格式问题导致的。下面给出两种解决方法。 解决方法一:设置文件编码 在配置文件中,可以添加如下配置来设置文件编码: spring: messages: encoding: UTF-8 这样,当程序读取配置文件时,会按照 UTF-8 编码格式进行解…

    Java 2023年5月19日
    00
  • MyBatis无缝对接Spring的方法

    MyBatis是Java中使用最广泛的ORM框架之一。该框架提供了简单易用的映射工具,可以帮助我们轻松实现实体类到数据库表之间的映射。同时,Spring是一种非常流行的Java开发框架,可以提供依赖注入、AOP等功能,使得Java应用变得更加易于开发和维护。这里我们将介绍如何将MyBatis与Spring框架结合使用,以便更好地开发Web应用。 以下是MyB…

    Java 2023年5月20日
    00
  • Java实现树形List与扁平List互转的示例代码

    以下是Java实现树形List与扁平List互转的完整攻略。 1. 概述 树形结构和扁平结构是常用的数据结构之一,在业务开发过程中常常需要互相转换。本攻略给出Java实现树形List与扁平List互转的示例代码。 2. 树形List转为扁平List 树形结构的定义: public class TreeNode { private String id; pri…

    Java 2023年5月26日
    00
  • 如何把springboot jar项目 改为war项目

    首先需要了解的是,Spring Boot默认创建的是JAR项目,JAR包是一种Java的打包格式,跟普通的ZIP包大同小异。而WAR包是Java Web的打包格式。 将Spring Boot jar项目转为war项目,主要需要以下步骤: 1. 修改pom.xml文件 在Spring Boot的Maven项目中,需要在pom.xml文件中添加Web依赖和打包方…

    Java 2023年5月28日
    00
  • JSP防止网页刷新重复提交数据的几种方法

    当使用JSP开发Web应用程序时,我们经常需要防止用户在刷新网页时重复提交表单,以免造成数据异常和重复提交的问题。以下是几种防止网页刷新重复提交数据的方法: 1. 后端验证防止重复提交 在用户提交表单后,在后端需要进行以下验证: 生成并存储一个唯一的 token,当用户提交表单时,将 token 设置为 session 或者隐藏字段; 再次提交时,验证表单提…

    Java 2023年6月15日
    00
  • Java实战项目 图书管理系统

    Java实战项目 图书管理系统攻略 介绍 Java实战项目 图书管理系统是一个基于Java语言的应用程序,用于管理图书馆内的书籍信息。这个项目涉及到了Java SE中的很多技术,例如Swing界面设计,JDBC数据库操作等。在这个项目中,我们将会实现以下功能: 图书的增加、查询、修改和删除 借阅的登记、查询、延期和归还 管理员和读者的登录操作 实现步骤 1.…

    Java 2023年5月23日
    00
  • JDBC工具类实现登录功能

    以下是“JDBC工具类实现登录功能”的完整攻略: 1. 什么是JDBC工具类 JDBC是Java Database Connectivity的缩写,是Java标准中用于操作关系型数据库的API。JDBC提供了一组用于连接数据库、执行SQL语句和处理结果集的类和接口。为了方便使用JDBC,我们可以创建一个JDBC工具类,该类提供了一组常用的方法,封装了JDBC…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部