pure HTML ;でサーバー データにアクセスする方法はありません。TagLibrariesinside aの代替JSPはではなく、HTML古い (そして悪い) Scriptlets です。
最後にすべてが に変換されHTMLますが、ビジネス データを処理できるようにするために中間層が必要です。
でサーバー側の値をどのように読み取ることができますHTMLか?
簡単に言えば:
かつては でServlet、そのPrintWriterは output にHTML:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
String myServerSideValue = "StackOverflow";
response.setContentType("text/html");
PrintWriter writer = response.getWriter();
writer.println("<html>");
writer.println("<head>");
writer.println("<title>Wait, what... a Servlet in 2013?!</title>");
writer.println("</head>");
writer.println("<body>");
writer.println("<span>Hello " + myServerSideValue + "</span>");
writer.println("</body>");
writer.println("</html>");
}
明らかに悪夢であり、賢い人がJSPs とScriptletsを発明するようになりました。
<html>
<head>
<title>Wait, what... Scriptlets in 2013?!</title>
</head>
<body>
<span>Hello <%= myServerSideValue %> </span>
</body>
</html>
次に、次TagLibのようなものJSTLが出てきました:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>you <i>may</i> still needs JSTL with, for example, Spring MVC</title>
</head>
<body>
<span>Hello <c:out value="myServerSideValue" /> </span>
</body>
</html>
そしてついに私たちにWebWork / StrutsもたらされましたOGNL
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>you still needs JSTL with, for example, Spring MVC</title>
</head>
<body>
<span>Hello <s:property value="myServerSideValue" /> </span>
</body>
</html>
OGNL内部タグの使用Struts2は に似ていますがJSTL、より強力で、いくつかの方法 ( 、など)で完全に統合されています。Struts2ValidationTheming
この例は単純すぎて、なぜinsteadまたは otherをStruts2 Tags使用する必要があるのか を理解できないかもしれませんが、より複雑な現実世界のシナリオになると、この優れたツールの使用法を理解し、最大限に活用できるようになるでしょう。ScriptletsTagLibs