在Jetty 11运行jakarta EE 9命名空间的情况下配置Swagger,您可以按照以下步骤进行配置:
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-jaxrs2</artifactId>
<version>2.1.10</version>
</dependency>
import io.swagger.jaxrs.config.BeanConfig;
public class SwaggerConfig {
public static void configure() {
BeanConfig beanConfig = new BeanConfig();
beanConfig.setVersion("1.0.0");
beanConfig.setSchemes(new String[]{"http"});
beanConfig.setHost("localhost:8080");
beanConfig.setBasePath("/api");
beanConfig.setResourcePackage("com.example.api");
beanConfig.setPrettyPrint(true);
beanConfig.setScan(true);
}
}
在上述代码中,您需要根据您的项目配置进行相应的修改,例如设置版本号、主机地址、基本路径、资源包等。
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class SwaggerInitializer implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
SwaggerConfig.configure();
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
// 在应用程序关闭时执行清理操作(如果需要)
}
}
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@Path("/users")
@Api(value = "User Resource")
public class UserResource {
@GET
@ApiOperation(value = "Get all users")
public List<User> getUsers() {
// 返回用户列表
}
}
在上述代码中,@Api注解用于指定资源的名称,@ApiOperation注解用于指定API操作的描述。
http://localhost:8080/api/swagger.json
这将返回一个包含API文档定义的JSON文件。
领取专属 10元无门槛券
手把手带您无忧上云