springboot2 jersey

==============jersey===============
 
 https://www.jianshu.com/p/c14a9028e6e7
 
 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jersey</artifactId>
        </dependency>
 
public interface ISomeService {
    void sayHi(String msg);
}

 
import org.springframework.stereotype.Service;
import com.example.demo.services.ISomeService;
@Service
public class SomeServiceImpl implements ISomeService {

    @Override
    public void sayHi(String msg) {
        System.out.println(msg);
    }
}


import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.QueryParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.example.demo.services.ISomeService;
@Component
@Path("resource")    
public class SpringbootResource {

    @Autowired
    private ISomeService someService;

    @Path("sayhi")
    @GET
    public String sayHi(@QueryParam("msg") String msg) {
        this.someService.sayHi(msg);
        return "success";
    }
}
 

import org.glassfish.jersey.server.ResourceConfig;
import org.springframework.stereotype.Component;
@Component
public class JerseyConfig extends ResourceConfig {
    public JerseyConfig() {
        register(SpringbootResource.class);
    }
}
 
 
 
 test url:
 http://localhost:8080/resource/sayhi?msg=wolfcode
 
 
 
 ResourceConfig類型的@Bean
 第二種方式,使用@Bean創建一個ResourceConfig類實例即可。
 註釋掉上節中的JerseyConfig類,我們只需要修改一下Appication類(component類裏),添加方法:
 
@Bean
public ResourceConfig resourceConfig() {
    ResourceConfig config = new ResourceConfig();
    config.register(SpringbootResource.class);
    return config;
}
 
 想要配置Jersey的基礎路徑,就需要在application.properties文件中配置一個
 spring.jersey.application-path=webapi

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章