Java中无HTML代码的REST实现
在我看到的许多教程或示例中。大多数人将html代码直接放在java文件中。我想知道是否有其他方法或更好的练习,而不是写这样的东西Java中无HTML代码的REST实现,java,rest,Java,Rest,在我看到的许多教程或示例中。大多数人将html代码直接放在java文件中。我想知道是否有其他方法或更好的练习,而不是写这样的东西 @Path("/someExample") public class SomeExample{ @GET @Produces(MediaType.TEXT_HTML) public String sayHtmlHello() { return "<html> " + "<title>" + "Hello Worl
@Path("/someExample")
public class SomeExample{
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHtmlHello() {
return "<html> " + "<title>" + "Hello World RESTful Jersey"
+ "</title>" + "<body><h1>" + "Hello World RESTful Jersey"
+ "</body></h1>" + "</html> ";
}
我是webservice的新手,我想知道我是否可以做一些类似于从html文件本身返回的事情 如果您希望返回动态HTML,那么最好使用MVC框架,比如,而不是REST框架。如果您想继续使用您正在使用的相同REST框架,如果您正在使用Jersey MVC框架的工作原理是使用模板和控制器来填充模板中使用的模型。在伪代码中,您可能有 模板索引.html 控制器方法 这是您可能使用Jersey及其MVC支持的示例代码,但是使用SpringMVC,这个概念仍然适用,只是使用的类不同 基本概念是在控制器内填充模型,并告诉框架应该使用哪个模板。框架将获取模板,并在您请求的任何地方注入变量,然后将转换后的视图返回给客户端 您应该决定要使用哪个框架,并阅读上面链接的文档以了解更多详细信息。SpringMVC是作为一个MVC框架专门制作的,Jersey是一个REST框架,后来又添加了MVC支持。因此,您将通过SpringMVC获得更多功能。但对于基本的MVC功能,使用Jersey就可以了
顺便说一句,如果您已经是来自类似SpringMVC的MVC框架背景,那么您需要稍微改变一下想法。使用RESTAPI或您所称的web服务,通常不会发送HTML页面响应。通常,它将是一种轻量级的数据格式,如JSON。如果您正在创建一个与RESTAPI交互的web应用程序,您通常会使用AJAX Javascript来请求JSON,并使用JSON数据来更新DOM。这就是它通常的工作方式。看看这个假设你可以通过返回一个FileInputStream来实现,顺便问一下,你正在使用或打算使用什么框架?REST与HTML没有任何关系。
<html>
<body>
<h1>Hello {{ name }}</h1>
</body>
<html>
public Viewable index() {
Map<String, String> model = new HashMap<>()
model.put("name", "Peeskillet");
return new Viewable("index", model);
}