JSP¡¢Struts±ÜÃâFormÖØ¸´Ìá½»µÄ¼¸ÖÖ·½°¸
1 javascript £¬ÉèÖÃÒ»¸ö±äÁ¿£¬Ö»ÔÊÐíÌá½»Ò»´Î¡£
2 »¹ÊÇjavascript£¬½«Ìá½»°´Å¥»òÕßimageÖÃΪdisable
onsubmit="getElById('submitInput').disabled = true; return true;">
3 ÀûÓÃstrutsµÄͬ²½ÁîÅÆ»úÖÆ
ÀûÓÃͬ²½ÁîÅÆ£¨Token£©»úÖÆÀ´½â¾öWebÓ¦ÓÃÖÐÖØ¸´Ìá½»µÄÎÊÌ⣬StrutsÒ²¸ø³öÁËÒ»¸ö²Î¿¼ÊµÏÖ¡£
»ù±¾ÔÀí£º
·þÎñÆ÷¶ËÔÚ´¦Àíµ½´ïµÄÇëÇó֮ǰ£¬»á½«ÇëÇóÖаüº¬µÄÁîÅÆÖµÓë±£´æÔÚµ±Ç°Óû§»á»°ÖеÄÁîÅÆÖµ½øÐбȽϣ¬¿´ÊÇ·ñÆ¥Åä¡£ÔÚ´¦ÀíÍê¸ÃÇëÇóºó£¬ÇÒÔڴ𸴷¢Ë͸ø¿Í»§¶Ë֮ǰ£¬½«»á²úÉúÒ»¸öеÄÁîÅÆ£¬¸ÃÁîÅÆ³ý´«¸ø¿Í»§¶ËÒÔÍ⣬Ҳ»á½«Óû§»á»°Öб£´æµÄ¾ÉµÄÁîÅÆ½øÐÐÌæ»»¡£ÕâÑùÈç¹ûÓû§»ØÍ˵½¸Õ²ÅµÄÌá½»Ò³Ãæ²¢ÔÙ´ÎÌá½»µÄ»°£¬¿Í»§¶Ë´«¹ýÀ´µÄÁîÅÆ¾ÍºÍ·þÎñÆ÷¶ËµÄÁîÅÆ²»Ò»Ö£¬´Ó¶øÓÐЧµØ·ÀÖ¹ÁËÖØ¸´Ìá½»µÄ·¢Éú¡£
if (isTokenValid(request, true)) {
// your code here
return mapping.findForward("success");
} else {
saveToken(request);
return mapping.findForward("submitagain");
}
Struts¸ù¾ÝÓû§»á»°IDºÍµ±Ç°ÏµÍ³Ê±¼äÀ´Éú³ÉÒ»¸öΨһ£¨¶ÔÓÚÿ¸ö»á»°£©ÁîÅÆµÄ£¬¾ßÌåʵÏÖ¿ÉÒԲο¼TokenProcessorÀàÖеÄgenerateToken()·½·¨¡£
1. //ÑéÖ¤ÊÂÎñ¿ØÖÆÁîÅÆ,»á×Ô¶¯¸ù¾ÝsessionÖбêʶÉú³ÉÒ»¸öÒþº¬input´ú±íÁîÅÆ£¬·ÀÖ¹Á½´ÎÌá½»
2. ÔÚactionÖУº
//
// value="6aa35341f25184fd996c4c918255c3ae">
if (!isTokenValid(request))
errors.add(ActionErrors.GLOBAL_ERROR,
new ActionError("error.transaction.token"));
resetToken(request); //ɾ³ýsessionÖеÄÁîÅÆ
3. actionÓÐÕâÑùµÄÒ»¸ö·½·¨Éú³ÉÁîÅÆ
protected String generateToken(HttpServletRequest request) {
HttpSession session = request.getSession();
try {
byte id[] = session.getId().getBytes();
byte now[] =
new Long(System.currentTimeMillis()).toString().getBytes();
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(id);
md.update(now
Ïà¹ØÎĵµ£º
²Ù×÷·½·¨£º windows------preferences----------ËÑË÷ html----------ÕÒµ½ html SourceÕâÏî---------
ÕÒµ½ content assist (¼ûÏÂͼ)------Prompt when these¡£¡£¡£¡£ºóÃæÓиöÊäÈë¿ò£¨ÀïÃæÓиöСÓںţ©½ô¸ú СÓںźóÃæÊäÈëÒ»¸ö ¿Õ¸ñ¼ü £¬-----------apply----------ok¡£
ÔÚhtmlÖбà¼Ê ......
request request±íʾHttpServletRequest¶ÔÏó¡£Ëü°üº¬ÁËÓйØä¯ÀÀÆ÷ÇëÇóµÄÐÅÏ¢£¬²¢ÇÒÌṩÁ˼¸¸öÓÃÓÚ»ñÈ¡cookie, header, ºÍsessionÊý¾ÝµÄÓÐÓõķ½·¨¡£
response response±íʾHttpServletResponse¶ÔÏ󣬲¢ÌṩÁ˼¸¸öÓÃÓÚÉèÖÃËÍ»Ø ä¯ÀÀÆ÷µÄÏìÓ¦µÄ·½·¨£¨Èçcookies,Í·ÐÅÏ¢µÈ£©
out out ¶ÔÏóÊÇjavax.jsp.JspWriterµÄÒ»¸öʵÀý£¬ ......
ÔÚJspÖе÷ÓÃSerlvetÖÐÒѾ´æ´¢ÁËÐÅÏ¢µÄ JavaBean.
ServletÖÐÒѾ°ÑÊý¾Ý¿âµÄÐÅÏ¢±£´æµ½JavaBeanÖÐ,ÔÙ°ÑJavaBean±£´æµ½SessionÖÐ.
Jsp¿ªÊ¼µ÷ÓÃ:
<jsp:useBean id="key" type="ClassName" scope="Session" />
<jsp:getProperty name="key" property="PropertyName" />
ÎÞ·¨¶Á³öÐÅÏ¢:
ÔÒò: JavaBean ÖÐÊôÐÔµ ......
ÏÂÃæÊÇjsp´úÂë<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page import="com.yourcompany.struts.action.Student" %>
<%@ t ......
<%@ page info="Random Image Show"
pageEncoding="UTF-8" contentType="image/jpg"
autoFlush="true" buffer="16kb" session="false" import="java.io.FileInputStream"
%>< ......