springbott支持Jersey,要是用Jersey2.x只需要依赖spring-boot-starter-jersey。
然后需要配置ResourceConfig
@Component public class JerseyConfig extends ResourceConfig { public JerseyConfig() { register(Endpoint.class); } }
EndPoint类要有@Components和HTTP 资源注解(@Get等)
@Component @Path("/hello") public class Endpoint { @GET public String message() { return "Hello"; } }
因为EndPoint作为Spring的一个组件(Component)并由Spring管理,所以你可以通过@Autowired对它属性进行注入和通过@Value注入配置值。
Jersey Servlet 默认会匹配/*,你可以通过添加@ApplicationPath到ResourceConfig的方式来限制。
默认的Jersey会以一个 Servlet的形式在类ServletRegistrationBean 对应Bean内被建立,该bean被命名为jerseyServletRegistration。默认情况下,该Servlet会被懒加载,你可以通过spring.jersey.servlet.load-on-startup属性来自定义。你可以通过建立一个属于自己的类的Bean并给他同上的命名来覆盖禁止上述bean。
你还可以通过设置属性spring.jersey.type=filter来使Jersey作为一个过滤器而不是Servlet,通过spring.jersey.filter.order来设置过滤器顺序(对应servlet的@Order)。
不管是过滤器还是Servlet,都可以通过spring.jersey.init.*来传递初始化参数。
点击链接查看Spring官方的 Jersey例子,可以大致了解如何创建一个Jersey项目。
时间: 2024-10-15 12:29:12