日期:2014-05-20  浏览次数:20874 次

Struts配置文件(web.xml,struts-config.xml)问题,来讨论,希望得到形象通俗容易理解的解释
1.web.xml,struts-config.xml这两个文件具体是怎么分工任务的,内如流程是什么?
 
2.web.xml文件一开始
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>

我在工程里怎么找不到org.apache.struts.action.ActionServlet

3.我看web.xml,struts-config.xml文件就害怕,这么长,写程序要写这个多的配置文件啊?感觉很麻烦

4.struts-config.xml文件中<form-bean name="loginForm" type="org.filegrid.billing.struts.form.LoginForm" />

<action path="/checkin" name="checkinform" type="org.filegrid.clientadmin.struts.action.CheckInAction">的作用

------解决方案--------------------
1.web.xml是tomcat上web应用程序的配置文件,运行后,首先进入的是web.xml. struts-config.xml是struts的配置文件,是在web.xml中配置了的.

2.web.xml中提到的action对应类org.apache.struts.action.ActionServlet在struts.jar中的org/apache/struts/action/目录下.

3.写程序只是配置其中的一部分.

4.form-bean对应的是自己写的继承ActionForm的Form类,name是在配置文件中自己指定的引用名,type就是你建的类的全名. action配置的是你自己写的继承Action的Action类,path是访问路径, name是对应的ActionForm名字,type是Action类的全名.

另外,推荐你先了解一下MVC的处理流程.然后看这些就容易了
------解决方案--------------------
web.xml是根,大多数情况下不需要经常修改,只是以前用SERVLET时需要经常维护。
struts-config.xml是扩展,使用STRUTS开发的话一定要用的,名字无所谓,可以在WEB.XML中定义。
org.apache.struts.action.ActionServlet 在struts.jar包里。
<form-bean name="loginForm" type="org.filegrid.billing.struts.form.LoginForm" />是form定义。FORM是将页面提交内容对应起来,这样就不再需要request.getParameter来获取参数。
action定义,将你的FORM和ACTION做关联,同时将请求路径与ACTION-SERVLET关联,例如当用户请求:http://xxx/checkin.do时,该请求被分配给org.filegrid.clientadmin.struts.action.CheckInAction进行处理,在该action中就可以通过form获得页面提交的数据。