添加Library在buildpath中,就是右键工程->properties->java buildpath->Libraries

然后点击add Library就是添加Library 根据提示添加即可,

向已有Library中添加jar,添加内部的点击add jar;添加外部的点击add  External JARS;

其中有一个WebLibrary可能已经存在于工程中了,但在工程树中找不到,解决办法就是手动把referenceLibrary中的jar拷到WebINF下的lib文件夹中就可以了。

在一个Web应用中表单form的生命周期:

以登录所用的登录表单为例介绍:

login.jsp:

<form name="form1" method="post" action="manager.do?action=login">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

以上是Web.xml

structs-config.xml:

 <action name="managerForm" path="/manager" scope="request" type="com.action.Manager" validate="true">
<forward name="managerQuery" path="/manager.jsp" />
<forward name="managerLoginok" path="/main.jsp" />
<forward name="managerAdd" path="/manager_ok.jsp?para=1" />
<forward name="managerQueryModify" path="/manager_Modify.jsp" />

Manager.java:

public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String action = request.getParameter("action");
System.out.println("获取的查询字符串:" + action);
if (action == null || "".equals(action)) { /*如果没有操作的动作*/
return mapping.findForward("error");
} else if ("login".equals(action)) { /*如果是处理管理员登陆*/
return managerLogin(mapping, form, request, response);
} else if ("managerAdd".equals(action)) {
return managerAdd(mapping, form, request, response);
} else if ("managerQuery".equals(action)) {
return managerQuery(mapping, form, request, response);
} else if ("managerModifyQuery".equals(action)) {
return managerModifyQuery(mapping, form, request, response);
} else if ("managerModify".equals(action)) {
return managerModify(mapping, form, request, response);
} else if ("managerDel".equals(action)) {
return managerDel(mapping, form, request, response);
} else if ("querypwd".equals(action)) {
return pwdQuery(mapping, form, request, response);
} else if ("modifypwd".equals(action)) {
return modifypwd(mapping, form, request, response);
}
request.setAttribute("error", "操作失败!");
return mapping.findForward("error");
} public ActionForward managerLogin(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
ManagerForm managerForm = (ManagerForm) form;
managerForm.setName(managerForm.getName());
managerForm.setPwd(managerForm.getPwd());
/*将存有管理员信息的formbean传递给DAO业务层处理(查询是否存在该管理员帐号和密码)*/
int ret = managerDAO.checkManager(managerForm);
System.out.print("验证结果ret的值:" + ret);
/*业务层如果返回1,表示验证成功*/
if (ret == 1) {
/*将用户帐号保存在session中*/
HttpSession session = request.getSession();
session.setAttribute("manager", managerForm.getName());
/*交给控制器,跳转到登陆成功的页面*/
return mapping.findForward("managerLoginok");
} else {
request.setAttribute("error", "您输入的管理员名称或密码错误!");
return mapping.findForward("error");
}
}

具体的处理就是以上这些内容,form的传递以及request的整个处理过程。

至于让人费解的这一个action的内容

<form name="form1" method="post" action="manager.do?action=login">
可以用一下这张图来解释:

												

最新文章

  1. DataGridView 在下拉框添加下来事件
  2. 2014亚马逊在线笔试题目及解决方案(MMChess问题)
  3. ue4 SNew背后的逻辑
  4. .NET 通过SmtpClient发送邮件 提示 4.7.1 service unavailable try again later 解决办法
  5. Json(2)-DataContractJsonSerializer
  6. Azure SQL 数据库:服务级别与性能问答
  7. 用Xamarin和Visual Studio编写iOS App
  8. jquery插件,美化select标签
  9. MonkeyRunner源码分析之-谁动了我的截图?
  10. vue学习第一篇 hello world
  11. Flash与 Javascript 交互
  12. Java与算法之(7) - 完全二叉树
  13. CYQ.data 框架结构
  14. pycharm+selenium搭建环境之no module named &#39;selenium&#39;异常解决
  15. select2 api参数的文档
  16. 54. Spiral Matrix以螺旋顺序输出数组
  17. NPOI 导入Excel和读取Excel
  18. Linux中-POSIX 线程详解
  19. C++11 随机数
  20. WEB安全番外第五篇--关于使用通配符进行OS命令注入绕WAF

热门文章

  1. Luogu-3829 [SHOI2012]信用卡凸包
  2. sqlite3简单教程整理
  3. python习题-注册用户程序
  4. [转]Eclipse快捷键_01_常用快捷键汇总
  5. 第二章 python基础(三)
  6. Java--异常与字符串
  7. [原]NYOJ-小光棍数-458
  8. POJ2096Collecting Bugs(数学期望,概率DP)
  9. ES+open-falcon之报警自动发送请求信息
  10. bzoj 1711 Dining吃饭 —— 最大流