zulox,
你需要做的是建立一個Model-View-Controller architecture您的Web應用程序。藉此,您可以在前端發生點擊後在後端代碼中調用方法。
使用MVC,該視圖有效地提供了應用程序的用戶界面元素。它會將來自模型的數據呈現爲適合用戶界面的表單。
控制器接收用戶輸入並調用模型對象和視圖以執行適當的操作。
該模型管理應用程序的基本行爲和數據。
你的JSP將如下所示:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form action="add" method="post">
Value 1:<input type="text" name="val1" id="val1"/><br>
Value 2:<input type="text" name="val2" id="val2"/><br>
<input type="submit" value="Submit"/><br>
</form>
<%String sum="";
sum = (String)request.getAttribute("val3"); %>
<input type="text" value="<%=sum%>" />
</body>
</html>
,然後在後端你的java文件看起來像下面這樣:
package controller;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class add extends HttpServlet {
String val3;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String val1=request.getParameter("val1");
String val2=request.getParameter("val2");
if(val1 != null && val2 != null)
val3=""+(Integer.parseInt(val1)+Integer.parseInt(val2));
else
val3="";
request.setAttribute("val3",val3);
request.getRequestDispatcher("index.jsp").forward(request, response);
try {
} finally {
out.close();
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
你也需要一個可以託管你的後端文件併爲你的JSP服務的web服務器/ servlet容器。 Apache Tomcat是一個很好的開始學習。 Here和here對於Tomcat來說是非常棒的教程,它將幫助您開始設置所有內容,以便您可以輕鬆地爲頁面提供服務。
如果您有任何問題,請讓我知道!
休息電話怎麼樣? – Will 2014-09-10 17:26:35
ajax調用有什麼問題? – 2014-09-10 19:21:46
如果使用Struts2,無論您使用哪種客戶端庫/框架,都應該調用Action。如果您想從實用程序類調用靜態方法,則可以將其包裝在一個操作方法中;如果這個操作對於很多頁面來說很常見,那麼你可以把它放在一個由其他的擴展的BaseAction中......只是不要使用與struts2集成的舊的dojo:最新的普通dojo,普通的jquery或者struts2-jquery – 2014-09-10 20:58:49