SpringBoot:设置springboot同一接口程序启动入口
Posted yy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot:设置springboot同一接口程序启动入口相关的知识,希望对你有一定的参考价值。
根据上一篇文章中搭建了一个springboot简单工程,在该工程中编写HelloWordController.java接口类,并在该类中写了一个main函数,做为该类的接口服务启动入口。此时如果新增多个接口服务类时,不修改任何代码是无法访问新增类的接口服务。
实际上springboot提供了统一配置全局扫描接口服务类的启动方法,本文就介绍如何使用:
如何配置统一启动入口
在src根目录下新建一个app包,在包下创建一个App.java类,通过代码配置使其作为该工程的一个通用启动入口类:
package app; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.context.annotation.ComponentScan; @ComponentScan("com.dx.controller") @EnableAutoConfiguration public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }
备注:
1)ComponentScan用来配置目前扫描类所在包的路径;
2)EnableAutoConfiguration自动注入;
3)SpringApplication.run(App.class,args)用来作为服务器启动入口,目的启动接口服务。
测试接口服务类:
已经拥有的接口服务类有:
HelloWordController.java
package com.dx.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller public class HelloWordController { @RequestMapping(value = "/index", method = RequestMethod.GET) public String index() { System.out.println("index is running..."); return "welcome"; } }
RestControllerTest.java
package com.dx.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; import java.util.Map; @RestController public class RestControllerTest { @RequestMapping("/rest") public Map<String, Object> rest() { Map<String, Object> result = new HashMap<>(); result.put("code", "404"); result.put("msg", "unkown"); return result; } }
,运行app.App.java类,等待启动完成后。
1)访问:http://127.0.0.1:8888/rest
2)访问:
以上是关于SpringBoot:设置springboot同一接口程序启动入口的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 springboot-gradle 为多 Web 服务器设置 dynos 和 procfile
springboot跨域请求设置,且允许js请求携带cookies