如何使用JAX-RS返回实际的html文件

Inc*_*ito 16 html java rest jax-rs java-ee

到目前为止,我正在通过以下方式返回html我的主页:

@GET
@Produces({MediaType.TEXT_HTML})
public String viewHome()
{
   return "<html>...</html>";
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是返回home.html本身而不是复制其内容并返回字符串.

我该怎么做呢?谢谢 :)

Sea*_*lly 28

你可以只返回一个java.io.InputStream或的实例java.io.Reader--JAX-RS会做正确的事情.

@GET
@Produces({MediaType.TEXT_HTML})
public InputStream viewHome()
{
   File f = getFileFromSomewhere();
   return new FileInputStream(f);
}
Run Code Online (Sandbox Code Playgroud)

  • 如果你在Servlet应用程序中,getResourceAsStream()方法(http://docs.oracle.com/javaee/6/api/javax/servlet/ServletContext.html#getResourceAsStream(java.lang.String))是一个更好的选择然后使用`java.io.File`实例. (3认同)