Spring Boot與MyBatis的配置實踐指南
引言:
Spring Boot 是一個快速開發框架,用於簡化Spring 應用程式的啟動和部署過程。而MyBatis是一種流行的持久化框架,可以輕鬆地與各種關係型資料庫互動。本文將介紹如何在Spring Boot專案中設定和使用MyBatis,並提供具體的程式碼範例。
一、專案配置
1.引入依賴
在pom.xml 檔案中,新增下列相依性:
<dependencies> <!-- Spring Boot Web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- MyBatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> </dependency> <!-- 数据库驱动(例如,MySQL)--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> </dependencies>
2.設定資料庫連線
在application.properties
檔案中,設定資料庫連線資訊。例如,如果使用MySQL資料庫,可以新增下列設定:
spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver
二、建立實體類別
1.建立實體類別
在com.example.demo.entity
套件中,建立一個名為User
的實體類別:
public class User { private int id; private String name; private String email; // 省略 getters 和 setters }
2.建立Mapper介面
在com.example.demo.mapper
套件中,創建一個名為UserMapper
的介面:
public interface UserMapper { List<User> getAllUsers(); User getUserById(int id); void addUser(User user); void updateUser(User user); void deleteUser(int id); }
三、建立Mapper XML檔案
建立UserMapper
對應的Mapper XML檔案UserMapper.xml
,並設定對應的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"> <mapper namespace="com.example.demo.mapper.UserMapper"> <resultMap id="BaseResultMap" type="com.example.demo.entity.User"> <id column="id" property="id"/> <result column="name" property="name"/> <result column="email" property="email"/> </resultMap> <select id="getAllUsers" resultMap="BaseResultMap"> SELECT * FROM user </select> <select id="getUserById" resultMap="BaseResultMap"> SELECT * FROM user WHERE id=#{id} </select> <insert id="addUser"> INSERT INTO user(name, email) VALUES (#{name}, #{email}) </insert> <update id="updateUser"> UPDATE user SET name=#{name}, email=#{email} WHERE id=#{id} </update> <delete id="deleteUser"> DELETE FROM user WHERE id=#{id} </delete> </mapper>
四、設定MyBatis
1.建立設定類別
在com.example.demo.config
套件中,建立一個名為MyBatisConfig
的設定類別:
@Configuration @MapperScan("com.example.demo.mapper") public class MyBatisConfig { }
2.完成設定
在application.properties
檔案中,新增下列設定:
# MyBatis mybatis.mapper-locations=classpath*:com/example/demo/mapper/*.xml
至此,我們已經完成了專案的配置和準備工作。接下來,我們將了解如何在Spring Boot專案中使用MyBatis。
五、使用MyBatis
1.寫業務邏輯
在com.example.demo.service
套件中,建立名為UserService
的服務類別:
@Service public class UserService { @Autowired private UserMapper userMapper; public List<User> getAllUsers() { return userMapper.getAllUsers(); } public User getUserById(int id) { return userMapper.getUserById(id); } public void addUser(User user) { userMapper.addUser(user); } public void updateUser(User user) { userMapper.updateUser(user); } public void deleteUser(int id) { userMapper.deleteUser(id); } }
2.建立控制器
在com.example.demo.controller
套件中,建立名為UserController
的控制器類別:
@RestController @RequestMapping("/users") public class UserController { @Autowired private UserService userService; @GetMapping("") public List<User> getAllUsers() { return userService.getAllUsers(); } @GetMapping("/{id}") public User getUserById(@PathVariable int id) { return userService.getUserById(id); } @PostMapping("") public void addUser(@RequestBody User user) { userService.addUser(user); } @PutMapping("/{id}") public void updateUser(@PathVariable int id, @RequestBody User user) { user.setId(id); userService.updateUser(user); } @DeleteMapping("/{id}") public void deleteUser(@PathVariable int id) { userService.deleteUser(id); } }
3.測試API
啟動Spring Boot應用程序,在瀏覽器中訪問以下URL,測試API:
總結:
本文介紹了在Spring Boot專案中使用MyBatis的配置實踐方法,並提供了具體的程式碼範例。希望本文能幫助讀者快速理解和使用Spring Boot和MyBatis的組合,從而更有效率地開發Spring應用程式。
以上是Spring Boot和MyBatis配置技巧指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!