千家信息网

SpringBoot怎么根据目录路径生成接口的url路径

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要讲解了"SpringBoot怎么根据目录路径生成接口的url路径",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"SpringBoot怎么根据
千家信息网最后更新 2026年11月02日SpringBoot怎么根据目录路径生成接口的url路径

这篇文章主要讲解了"SpringBoot怎么根据目录路径生成接口的url路径",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"SpringBoot怎么根据目录路径生成接口的url路径"吧!

根据目录路径生成接口的url路径

首先我们新建一个AutoPrefixUrlMapping类,继承自RequestMappingHandlerMapping,用以获取新的url

public class AutoPrefixUrlMapping extends RequestMappingHandlerMapping {    // 从配置文件中读取根目录    @Value("${api-package}")    private String apiPackagePath;    @Override    protected RequestMappingInfo getMappingForMethod(Method method, Class handlerType) {        RequestMappingInfo mappingInfo =  super.getMappingForMethod(method, handlerType);        if (mappingInfo != null){            String prefix = this.getPrefix(handlerType);            RequestMappingInfo newMappingInfo = RequestMappingInfo.paths(prefix).build().combine(mappingInfo);            return newMappingInfo;        }        return mappingInfo;    }    // 获取前缀    private String getPrefix(Class handlerType){        String packageName = handlerType.getPackage().getName();        String newPath = packageName.replaceAll(this.apiPackagePath, "");        return newPath.replace(".","/");    }}

配置文件application.proprties如下

api-package = com.lyn.miniprogram.api

用以声明url的根目录

然后我们创建一个AutoPrefixConfiguration类,用以将AutoPrefixUrlMapping加入Springboot的容器中

@Componentpublic class AutoPrefixConfiguration implements WebMvcRegistrations {    @Override    public RequestMappingHandlerMapping getRequestMappingHandlerMapping() {        return new AutoPrefixUrlMapping();    }}

测试接口如下:

url会自动带上 /v1的前缀,测试通过!当然,如果目录层级更复杂,通过上述代码也是可以实现的。

springboot接口请求界面路径返404

springboot正常启动项目,访问接口均正常,新增一接口请求界面路径,访问该接口报错404

idea springboot

http://localhost:8080/cuer/apSw?ad=2893e6fce42&_=161607509 404

接口没被扫描到

百度说是接口所在包放置位置不对,导致接口没被扫描到,但是我的情况是系统原本存在的接口都可以访问到,并且新接口所在位置与旧接口所在位置一致。且查看新接口包与 spring boot启动类的位置符合可被扫描到情况,故排除新接口包放置位置不对的情况

配置或代码写法问题

查看后端接口代码写法没错

查看调用后端接口传参是否错误(接口有参数,直接不传参http://localhost:8080/cuer/apSw,打断点 访问接口,可以进入到接口,说明接口没错)断点往下打,发现是return 页面报404 ,比对后发现,页面路径对应根本没页面,修改页面路径重新访问,成功。

@Slf4j@Controller@RequestMapping(value = {"/customer"})@AllArgsConstructorpublic class CerCustomerController {private final PsionsUtil pnsUtil;private final ICCredService crdService;private final ICrEvalService ervice;/** * 跳转到列表界面 * * @return */@GetMapping("/index")public String customerCredIndex() {    return "/business/customer/index";}/*** 跳转到查看界面** @return*/@GetMapping("/apeShw")public String apseShw(String ad, Model model) {model.addAttribute("apId", aId);if ("CD".equals(perUtil.getreTpe())) {return "/bess/cuer/evfo";} else {CeerVo ceo = creice.gtCByAlyId(ad);model.addAttribute("cd", cVo);return "/busis/cr/co";}}}

感谢各位的阅读,以上就是"SpringBoot怎么根据目录路径生成接口的url路径"的内容了,经过本文的学习后,相信大家对SpringBoot怎么根据目录路径生成接口的url路径这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

接口 路径 目录 生成 位置 情况 界面 页面 代码 所在 用以 学习 配置 不对 内容 写法 前缀 文件 根目录 问题 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 华服互联网科技靠谱吗 哈尔滨大商圈互联网科技有限公司 上海卓越科技互联网 互联网科技有限公司经营范围 盈实互联网科技 关于新基建和互联网科技 互联网 科技创新 中国 科技 互联网 猪兼强互联网科技 长亮科技 互联网金融 互联网科技热点资讯 互联网和黑科技的看法 厦门千工互联网科技有限公司 电子科技大学互联网创业大赛 浙南科技城互联网大厦建设工程 信承诺互联网科技有限公司 互联网高科技行业有哪些企业 同城互联网络科技 恒生科技指数 中概互联网 长沙易易互联网科技有限公司 科技创新互联网企业 深圳艾佳互联网科技 汉立互联网科技有限公司联系电话 深圳前海聚择互联网科技有限公司 南平创想时代互联网科技有限公司 企晟互联网信息科技有限公司 群盈汇互联网科技有限公司 广州百诚互联网科技有限公司官网 广西科技产业互联网是什么 长沙易易互联网科技有限公司
0