Spring Boot 项目搭建(SpringBoot+Mybatis+Vue)
在搭建一个基于Spring Boot、MyBatis和Vue的项目时,你可以遵循以下步骤:
创建Spring Boot项目:
使用Spring Initializr (https://start.spring.io/) 快速生成一个Spring Boot项目骨架。
添加MyBatis依赖:
在
pom.xml
中添加MyBatis和数据库驱动的依赖,例如:
<dependencies>
<!-- MyBatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<!-- 数据库驱动,以MySQL为例 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.19</version>
</dependency>
<!-- 其他依赖... -->
</dependencies>
配置数据库和MyBatis:
在
application.properties
或application.yml
中配置数据库和MyBatis的设置,例如:
# 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/your_database?useSSL=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=yourpassword
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# MyBatis 配置
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.yourpackage.model
创建实体类和Mapper接口:
在Java中创建对应数据库表的实体类,并编写Mapper接口和XML文件。
// 实体类
public class User {
private Long id;
private String name;
// 省略getter和setter
}
// Mapper接口
@Mapper
public interface UserMapper {
User selectUserById(Long id);
// 其他方法...
}
// XML映射文件
<mapper namespace="com.yourpackage.mapper.UserMapper">
<select id="selectUserById" resultType="com.yourpackage.model.User">
SELECT * FROM user WHERE id = #{id}
</select>
<!-- 其他SQL映射... -->
</mapper>
创建Service层:
在Java中创建Service层,并使用刚才创建的Mapper。
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User getUserById(Long id) {
return userMapper.selectUserById(id);
}
// 其他方法...
}
创建REST Controller:
创建Controller来处理HTTP请求,并使用Service层。
@RestController
@RequestMapping("/api/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/{id}")
public User getUser(@PathVariable Long id) {
return userService.getUserById(id);
}
// 其他方法...
}
创建Vue前端:
使用Vue CLI (https://cli.vuejs.org/) 创建Vue项目,并编写前端代码来发送HTTP请求并展示数据。
<template>
<div>
<h1>User Info</h1>
<p>{{ user.na
评论已关闭