如何在java appengine中将代码与html分离?
我现在正在学习如何用Java制作GoogleAppEngine应用程序,在他们的入门指南中,他们使用JSP,但这似乎让我回到了过去,那时我对MVC或关注点分离一无所知 我不想将代码放在模板中,而是希望使用类似于django模板或jinja的东西,就像您在python sdk中所做的那样。最好的框架是什么 我遵循《入门指南》中的留言簿示例,其中他们告诉您制作如下JSP:如何在java appengine中将代码与html分离?,java,google-app-engine,jsp,view,Java,Google App Engine,Jsp,View,我现在正在学习如何用Java制作GoogleAppEngine应用程序,在他们的入门指南中,他们使用JSP,但这似乎让我回到了过去,那时我对MVC或关注点分离一无所知 我不想将代码放在模板中,而是希望使用类似于django模板或jinja的东西,就像您在python sdk中所做的那样。最好的框架是什么 我遵循《入门指南》中的留言簿示例,其中他们告诉您制作如下JSP: <html> <body> <% UserService userService
<html>
<body>
<%
UserService userService = UserServiceFactory.getUserService();
User user = userService.getCurrentUser();
if (user != null) {
%>
<p>Hello, <%= user.getNickname() %>! (You can
<a href="<%= userService.createLogoutURL(request.getRequestURI()) %>">sign out</a>.)</p>
<%
} else {
%>
<p>Hello!
<a href="<%= userService.createLoginURL(request.getRequestURI()) %>">Sign in</a>
to include your name with greetings you post.</p>
<%
}
%>
</body>
</html>
你好!(你可以
)
你好!!
在你发布的问候语中加入你的名字
但是所有这些都提醒我在HTML页面中包含PHP代码,这不是我想要的方式。有没有办法创建一个视图对象,向它传递一些值,将这些值插入到模板中?有一些很好的框架可以实现您想要的:
如果你想要一个干净的MVC架构,也许你应该使用一个支持该模式的框架。维基上说,Struts是受支持的,Spring MVC也是受支持的,所以你可以选择一个适合你需要的。grails在这方面做得很好……但是要用app engine框架正确设置所有内容可能会有点困难。我的轻量级模板引擎将在Google app engine中运行 区块特性包括分支、循环和宏,具有简单的
{$tag}
语法,故意不允许像jsp那样使用内联java(ick)。它类似于twig/jinja/django/etc
还有很多内置的,例如:
示例/配方WAR部署在AppEngine中:取决于您使用JSP做什么。您可以让JSP处理REST调用,并使用javascript库根据返回的数据处理视图,但我不确定它是否像你所希望的那样复杂。这并不是应用程序引擎所特有的——同样的问题也适用于任何JavaServlet平台。
{% $value|sprintf(%.02f) %}
{% $value|trim %}
{% $value|onempty("N/A") %}