⑴Struts是一个基于MVC设计模式的Web应用框架,Struts 是Struts的下一代产品,是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 框架。我们可以直接通过Struts完整版来建立模型,同时还可以用来进行视图的数据交互。
⑵在Action的实现方面
⑶Struts要求必须统一扩展自Action类,而Struts中可以是一个POJO。
⑷Struts的Action是单实例的,一个Action的实例处理所有的请求。Struts 的Action是一个请求对应一个实例(每次请求时都新new出一个对象,没有线程安全方面的问题。
⑸Servlet依赖方面
⑹Struts的Action依赖于Servlet API,比如Action的execute方法的参数就包括request和response对象。这使程序难于测试。Struts中的Action不再依赖于Servlet API,有利于测试,并且实现TDD。
⑺Struts中强制使用ActionForm对象封装请求的参数。Struts可以选择使用POJO类来封装请求的参数,或者直接使用Action的属性。
⑻表达式语言方面
⑼Struts中整合了EL,但是EL对集合和索引的支持不强,Struts整合了OGNL(Object Graph NavigationLanguage。
⑽绑定值到视图技术
⑾Struts使用标准的JSP,Struts使用“ValueStack”技术。
⑿Struts中的ActionForm基本使用String类型的属性。Struts中使用OGNL进行转换,可以更方便的使用。
⒀Struts中支持覆盖validate方法或者使用Validator框架。Struts支持重写validate方法或者使用XWork的验证框架。
⒁Action执行控制的对比
⒂Struts支持每一个模块对应一个请求处理,但是模块中的所有Action必须共享相同的生命周期。Struts支持通过拦截器堆栈为每一个Action创建不同的生命周期。
⒃下载struts,需要用到的是full distribution,根据需要也可以下载诸如文档doc和源代码source等。
⒄安装tomcat或其他服务器,安装Eclipse或其他JAVA编译环境,将Struts解压并记录下解压的路径。
⒅在MyEclipse中配置服务器,此处以tomcat为例,进入MyEclipse,工具栏中选择windows,然后选择preference,然后选择MyEclipse->Servers->Tomcat,然后选择对应的Tomcat版本你你对应的安装地址。
⒆在MyEclipse中配置jdk,依次选择window –> preferences – >java – >installed jres,如果没有对应的JDK(不是JRE,选择add,选择standard VM -> next,选择JDK对应的Directory。
⒇建立Struts程序,首先找到struts目录下对应的apps目录,解压struts-blank-...war,Copy对应的lib的jar文件,需要除junit和spring-test之外的所有文件,其中mons-io的jar包会在文件上传和下载时需要,其他为必须。在struts.xml中照原配置根据自己的需要进行对应的配置。
⒈我用的是struts...-all.zip(不管用struts的哪个版本,道理都一样,找对应的包就行了)
⒉例如你建一Web Project,名为Struts 导入项目所需要的jar包,放入/Struts/WebRoot/WEB-INF/lib下面
⒊在struts存放目录(以我的举例说明
⒋F:\JavaWeb教程\ssh-jar\struts-...-all\struts-...\lib下面找到以下包
⒌mons-fileupload-...jar//文件上传时用的,为了以后用到,最好加入
⒍mons-io-...jar//同上
⒎mons-logging-...jar
⒏freemarker-...jar
⒐javassist-..ga.jar
⒑ognl-..jar
⒒struts-core-....jar
⒓xwork-core-....jar
⒔共个包,将其复制到/Struts/WebRoot/WEB-INF/lib下面
⒕方法二:(不用复制,导入法
⒖(.右击项目名称Struts-->Build Path-->Configure Build Path...-->打开一对话框
⒗(.选择左边的"Java Build Path"选项-->选择Libraries选项卡-->Add External JARs-->去寻找 F:\JavaWeb教程\ssh-jar\struts-...-all\struts-...\lib下面的指定的jar包导入即可