Gradle + Spring Boot + Jersey搭建REST开发环境

时间:2021-10-07 21:49:08

首先使用Spring Initializr创建一个Spring Boot工程(怎么感觉IDEA里那个单词是错的。。。)
Gradle + Spring Boot + Jersey搭建REST开发环境
然后修改相关的信息
Gradle + Spring Boot + Jersey搭建REST开发环境
点下一步后,在Web页中,选中Jersey
Gradle + Spring Boot + Jersey搭建REST开发环境
点击下一步,完成。慢慢等IDEA自动下载好依赖。
有时候右下角会弹出一个窗口,点击Import 就好
第一次使用的话,会下载Gradle,这个会用比较长的时间。
也可以手动刷新
Gradle + Spring Boot + Jersey搭建REST开发环境
然后我参考 94.Spring Boot集成Jersey【从零开始学Spring Boot】
创建了一个配置类,注册了一个Servlet。
Gradle + Spring Boot + Jersey搭建REST开发环境

package com.example.demo;

import org.glassfish.jersey.server.ResourceConfig;
import org.glassfish.jersey.server.spring.scope.RequestContextFilter;

public class JerseyConfig extends ResourceConfig {
    public JerseyConfig() {
        register(RequestContextFilter.class);
        //配置restful package.
        packages("com.example.demo");
    }
}

Gradle + Spring Boot + Jersey搭建REST开发环境

    @Bean
    public ServletRegistrationBean jerseyServlet() {
        ServletRegistrationBean registration = new ServletRegistrationBean(new ServletContainer(), "/rest/*");
        // our rest resources will be available in the path /rest/*
        registration.addInitParameter(ServletProperties.JAXRS_APPLICATION_CLASS, JerseyConfig.class.getName());
        return registration;
    }

最后添加一个Resource,创建一个HelloResource类
Gradle + Spring Boot + Jersey搭建REST开发环境

package com.example.demo;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.MediaType;

@Path("/testapi")
public class HelloResource {
    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String sayHello() {
        return "Hello World!" ;
    }


    @GET
    @Path("/{param}")
    @Produces("text/plain;charset=UTF-8")
    public String sayHelloToUTF8(@PathParam("param") String username) {
        return "Hello " + username;
    }

}

最后启动,控制台输出
Gradle + Spring Boot + Jersey搭建REST开发环境
在浏览器中访问
Gradle + Spring Boot + Jersey搭建REST开发环境
Gradle + Spring Boot + Jersey搭建REST开发环境
ok了。