==============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