首页 > 其他分享 >JAX-RS之下载文件

JAX-RS之下载文件

时间:2022-12-05 13:02:56浏览次数:38  
标签:log JAX RS Produces Response file Path response 下载


今天学习两个,分别是JAX-RS之下载文件
   首先,看例子,下载服务器的文本文件
  


1. @Path("/file")   
2. public class
3.
4. private static final String FILE_PATH = "c:\\file.log";
5.
6. @GET
7. @Path("/get")
8. @Produces("text/plain")
9. public
10.
11. new
12.
13. ResponseBuilder response = Response.ok((Object) file);
14. "Content-Disposition",
15. "attachment; filename=\"file_from_server.log\"");
16. return
17.
18. }


@Path("/file")
public class FileService {

private static final String FILE_PATH = "c:\\file.log";

@GET
@Path("/get")
@Produces("text/plain")
public Response getFile() {

File file = new File(FILE_PATH);

ResponseBuilder response = Response.ok((Object) file);
response.header("Content-Disposition",
"attachment; filename=\"file_from_server.log\"");
return response.build();

}
@Path("/file")
public class FileService {

private static final String FILE_PATH = "c:\\file.log";

@GET
@Path("/get")
@Produces("text/plain")
public Response getFile() {

File file = new File(FILE_PATH);

ResponseBuilder response = Response.ok((Object) file);
response.header("Content-Disposition",
"attachment; filename=\"file_from_server.log\"");
return response.build();

}


  可以看到要下载服务端文件,在方法前加@Produces("text/plain")


,还有就是response输出时,这两句:


  ResponseBuilder response = Response.ok((Object) file);



response.header("Content-Disposition",


"attachment; filename=\"file_from_server.log\"");



则访问URL:“/file/get“时,则会提示下载文件。



2 同样,下载其他格式文件,都如此类推,分别是@Produces("image/png")


这样的形式,加@Produces标签,并且response.header中进行文件类型修改就可以了,


就不再举例 

标签:log,JAX,RS,Produces,Response,file,Path,response,下载
From: https://blog.51cto.com/u_14230175/5911927

相关文章