You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建Spring Boot客户端应用读取另一Spring Boot服务端的数据

实现方案总览

整个架构分为服务端、客户端两个独立Spring Boot应用,服务端负责数据交互与接口暴露,客户端负责页面渲染与远程接口调用,具体实现步骤如下:

服务端Spring Boot应用(JPA + 数据接口提供)

  • 依赖配置:引入spring-boot-starter-data-jpa、对应数据库的驱动依赖、spring-boot-starter-web三个核心依赖
  • JPA层开发:在application.yml/application.properties中配置数据库连接参数,编写和数据表映射的实体类,继承JpaRepository接口封装数据库的CRUD操作
  • 接口开发:编写@RestController类,注入JPA Repository实例,根据业务需求编写对外接口,返回JSON格式的数据,可按需添加参数校验、分页、权限校验逻辑
  • 跨域配置:如果客户端和服务端的域名、端口不一致,需要在服务端配置跨域支持,可直接在Controller类上添加@CrossOrigin注解,或者编写全局跨域配置类实现WebMvcConfigurer的addCorsMappings方法

客户端Spring Boot应用(JSP + 视图控制器 + 远程调用)

  • 依赖配置:引入spring-boot-starter-web、tomcat-embed-jasper、jstl三个核心依赖,Spring Boot默认不内置JSP解析支持,必须手动引入Jasper和JSTL才能正常渲染JSP页面
  • JSP相关配置:在配置文件中添加视图解析规则:
    spring.mvc.view.prefix= /WEB-INF/jsp/
    spring.mvc.view.suffix= .jsp
    
    所有JSP文件需要放在项目的src/main/webapp/WEB-INF/jsp/目录下
  • 远程调用开发:常规场景推荐用RestTemplate实现接口调用,先在配置类中注册RestTemplate的Bean实例,再在视图Controller中注入该实例,调用getForObject、postForObject等方法请求服务端接口,拿到返回数据后封装成业务对象
  • 视图层开发:编写带@Controller注解的视图控制器,编写请求映射方法,方法内部调用远程接口获取数据,把数据存入Model对象后返回JSP文件名,视图解析器会自动匹配对应JSP文件完成页面渲染

注意事项

  • Spring Boot 打包成jar包时不支持JSP渲染,如果需要部署上线,必须将客户端应用打成war包部署到外置Tomcat,本地开发时也建议使用外置Tomcat或者IDEA的Tomcat插件启动,不要直接执行jar包启动
  • 服务端和客户端提前约定好接口返回的JSON结构,客户端可以定义和服务端一致的DTO类做JSON反序列化,避免类型转换错误
  • 可以给远程调用添加超时、重试配置,避免服务端故障导致客户端请求长时间阻塞

内容的提问来源于stack exchange,提问作者Tuqa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 20:36:03