添加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">
可以用一下这张图来解释:

												

Library学习日志(……)的更多相关文章

  1. GRE学习日志

    发现开博客园真的很有督促作用,今天也顺便开个GRE学习日志吧 2015-02-09:单词 2015-02-10:单词 2015-02-11:单词 2015-03-02:阅读 2015-03-04:阅读 ...

  2. Cortex-M3学习日志(六) -- ADC实验

    上一次简单的总结了一下DAC方面的知识,好吧,这次再来总结一下ADC方面的东东.ADC即Analog-to-Digital Converter的缩写,指模/数转换器或者模拟/数字转换器.现实世界是由模 ...

  3. Cortex-M3学习日志(五) -- DAC实验

    终于逮了个忙里偷闲的机会,就再学一下LPC1768的外围功能吧,循序渐进是学习的基本规则,也许LPC1768的DAC与8位单片机16位单片机里面集成的DAC操作类似,但是既然这是懒猫的学习日志,就顺便 ...

  4. webpack2学习日志

    webpack说容易也容易,说难也难,主要还是看个人,想学到什么样的程度,很多公司可能要求仅仅是会用就行,但是也有一些公司要求比较高,要懂一些底层的原理,所以还是要花一些时间的,看个人需求.这篇仅仅是 ...

  5. javascript学习日志:前言

    javascript学习日志系列的所有博客,主要理论依据是<javascript权威指南>(犀牛书第6版)以及<javascript高级程序设计第三版>(红色书),目前js行业 ...

  6. MobileForm控件的使用方式-用.NET(C#)开发APP的学习日志

    今天继续Smobiler开发APP的学习日志,这次是做一个title.toolbar.侧边栏三种效果 样式一 一.          Toolbar 1.       目标样式 我们要实现上图中的效果 ...

  7. 我的游戏学习日志3——三国志GBA

    我的游戏学习日志3——三国志GBA 三国志GBA由日本光荣公司1991~1995所推出<三国志>系列游戏,该作是光荣在GBA上推出的<三国志>系列作品的第一款.本游戏登场武将总 ...

  8. 【转】Cocos2d-x 3.1.1 学习日志6--30分钟了解C++11新特性

    [转]Cocos2d-x 3.1.1 学习日志6--30分钟了解C++11新特性 Cocos2d-x 3.1.1 学习日志6--30分钟了解C++11新特性

  9. composer的安装和使用 学习日志

    如果你做为一个phper,没有用过composer,那你真的不是一个合格的开发者.那么就来记录一下composer的学习日志 下面分享几个学习源头: composer中文网站:https://www. ...

随机推荐

  1. github与eclipse结合使用

    github是现在流行的代码托管平台,今天以eclipse为例讲解github的使用,新建项目,提交eclipse项目到github,新建分支,合并分支 1.github上新建项目 记下githug项 ...

  2. java打包命令

    (1)首先,必须保证java的所有路径都设置好,在dos提示符下输入jar -help 出现C:\Documents and Settings\dly>jar -help 非法选项:h 用法:j ...

  3. POJ 2728 Desert King:最优比率生成树

    题目链接:http://poj.org/problem?id=2728 题意: 给你n个点(x,y,z),让你求一棵生成树,使得 k = ∑ |z[i]-z[j]| / ∑ dis(i,j)最小. | ...

  4. django1.8.3搭建博客——2 django web 开发指南阅读笔记

    一.    django框架 1 .http封装web服务的整个过程.由请求(request)和响应(response)两部分组成. 请求的内容为URL (指向文档的路径). 响应主要为正文(body ...

  5. 分享知识-快乐自己:java代码 操作 solr

    POM 文件: <!-- solr客户端 --> <dependency> <groupId>org.apache.solr</groupId> < ...

  6. HTTP-接触

    [HTTP]http是基于TCP/IP协议的应用层协议,他不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式,默认端口是80端口. 不同版本http协议里的相关概念[Conten ...

  7. node.js+express+jade系列三:404错误的配置

    1:新建一个404.jade 2:在app.js后面配置如下代码 app.use(function(req, res){        res.render("404", {sta ...

  8. IBM V3500存储恢复步骤实例(linux)

    本环境是一有台IBM3500存储,将存储挂载至linux的/data目录,模拟测试当主服务器挂了,将数据恢复到另一台服务器,存储有两个地址,我配置的是192.168.80.59是用于web管理,192 ...

  9. 【leetcode刷题笔记】Validate Binary Search Tree

    Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined as ...

  10. 【学习笔记-中国剩余定理】POJ1006 Biorhythms

    Biorhythms Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 139500   Accepted: 44772 Des ...