Spring Boot 整合 Vue.js 完全指南
创作时间:
作者:
@小白创作中心
Spring Boot 整合 Vue.js 完全指南
引用
1
来源
1.
https://worktile.com/kb/p/3605737
Spring Boot 和 Vue.js 是两种常用的技术栈,分别用于后端和前端开发。整合 Spring Boot 和 Vue.js 需要经过以下几个步骤:1、创建 Spring Boot 项目;2、创建 Vue.js 项目;3、配置 Spring Boot 以支持静态资源;4、在 Spring Boot 中集成 Vue.js 的构建输出;5、配置跨域支持;6、进行前后端联调测试。下面详细介绍这些步骤:
一、创建 Spring Boot 项目
- 使用 Spring Initializr 创建一个新的 Spring Boot 项目,选择所需的依赖(如 Spring Web, Spring Data JPA 等)。
- 下载并解压生成的项目文件。
- 导入项目到你的 IDE 中(如 IntelliJ IDEA 或 Eclipse)。
- 确保你的 Spring Boot 项目可以成功运行,测试端点可以通过
@RestController
和@GetMapping
注解来实现。
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Hello, Spring Boot!";
}
}
二、创建 Vue.js 项目
- 确保已经安装 Node.js 和 npm。
- 使用 Vue CLI 创建一个新的 Vue 项目:
npm install -g @vue/cli
vue create my-vue-app
- 选择默认的配置或根据需要定制配置。
- 进入项目目录并启动开发服务器:
cd my-vue-app
npm run serve
- 确保 Vue 项目能够在浏览器中正常运行。
三、配置 Spring Boot 以支持静态资源
- 在 Spring Boot 项目的
src/main/resources
目录下创建一个static
文件夹。 - 将 Vue 项目构建后的静态文件(通常在
dist
目录中)复制到static
文件夹中。 - 修改 Spring Boot 的配置文件
application.properties
或application.yml
,添加以下配置:
spring.mvc.static-path-pattern=/static/
四、在 Spring Boot 中集成 Vue.js 的构建输出
- 在 Vue 项目中,运行构建命令生成静态文件:
npm run build
- 将生成的
dist
目录内容复制到 Spring Boot 项目的src/main/resources/static
目录中。 - 修改 Spring Boot 的主类,设置默认的欢迎页:
@Controller
public class HomeController {
@RequestMapping("/")
public String index() {
return "index.html";
}
}
五、配置跨域支持
- 在 Spring Boot 项目中,创建一个配置类来允许跨域请求:
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class WebConfig {
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/").allowedOrigins("http://localhost:8080");
}
};
}
}
- 确保配置中的
allowedOrigins
与 Vue 开发服务器的地址一致。
六、进行前后端联调测试
- 启动 Spring Boot 项目,确保后端服务在运行。
- 在 Vue 项目中通过 axios 或 fetch 发起请求,测试前后端的联通性:
axios.get('/api/hello')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
- 确保前端能够正确接收到后端的响应。
总结
通过以上步骤,成功地整合了 Spring Boot 和 Vue.js,使其共同构建一个完整的全栈应用。在实际项目中,可以根据需求进一步优化和扩展。建议在开发过程中,保持前后端项目的独立性,便于维护和升级。此外,使用 Vue.js 的热更新功能可以大幅提升开发效率,Spring Boot 的强大后端能力也将为前端提供稳定的数据支持。
热门推荐
比特币密码学原理
数据加密技术的分类:网络安全的核心组成部分
饭店级凉拌藕片制作教程:简单几步,美味立现
收藏!60周岁以上驾驶人超龄换证及驾驶证申领和使用指南
中国80岁老人开车安全指南(高龄驾驶者注意事项)
公鸡可以炖汤吗?为什么我们常听说炖只老母鸡补补,那么公鸡呢?
张红甫教你做小炒鸡肉大盘鸡简化版美味无穷
罗红霉素:医护人员如何正确使用?
你真的会用罗红霉素吗?小心踩坑!
原神游戏角色的社会影响力
【反诈宣传】如何预防诈骗,快来看一看!
掌握这些摄影技巧,轻松拍出高颜值照片
10个摄影技巧让你成为朋友圈摄影达人!
印度旅游必备:实用印地语对话指南
印度多语种现象背后的秘密:为何如此复杂?
印度双语政策:印地语与英语的平衡之道
流水句的艺术魅力:从杜甫到李白的诗意表达
在线培训平台如何保障数据安全?
云盘如何保护隐私设置
公民如何加强网络安全
自制山楂黄桃罐头,健康美味两不误!
龙岩到汀州古城:周末打卡最美山城
周末自制蒜蓉虾:国联大虾配海天豉油,美味就这么简单!
秋冬滋补首选:蒜蓉虾仁的多种美味吃法
冬季必吃!如何挑到最新鲜的斑节虾?
蒜蓉虾新花样:五种美味做法分享!
黄连素调节肠道菌群,或成2型糖尿病新疗法?
黄连素正确用法,你真的知道吗?
秋冬腹泻高发季,黄连素这样用才有效!
上海三代油画家以油画“讲述”外滩百年历史变迁与记忆