Struts2是一个基于MVC(Model-View-Controller)设计模式的Java web应用程序框架,它在Web开发领域具有广泛的应用。Struts2的最新版本为struts-2.3.28,这个版本包含了对先前版本的改进和修复,旨在提供更稳定、更安全的开发环境。 在Struts2框架中,主要知识点包括: 1. **核心架构**:Struts2的核心是Action类,它是处理用户请求的中心。Action类通过ActionSupport基类提供默认的行为,如结果映射和国际化支持。此外,FilterDispatcher(或StrutsPrepareAndExecuteFilter)作为入口点,拦截所有HTTP请求并引导它们到Struts2的处理流程。 2. **配置方式**:Struts2支持XML配置和注解配置,允许开发者灵活地定义Action、Result、Interceptor等。`struts.xml`是主要的配置文件,用于定义Action与URL的映射,以及Interceptor链。 3. **Interceptor(拦截器)**:拦截器是Struts2的重要特性,它在Action执行前后插入代码,实现了如日志、权限检查、数据校验等常见功能。例如,`ParamsInterceptor`用于参数绑定,`ValidationInterceptor`进行表单验证。 4. **结果类型(Result)**:Struts2支持多种结果类型,如JSP、FreeMarker、 Velocity等,可以指定Action执行后的视图渲染。`dispatcher`是最常见的结果类型,它将请求转发到一个JSP页面。 5. **模型驱动(ModelDriven)**:这是一种简化Action类的模式,允许Action直接绑定到模型对象,减少代码量。 6. **动态方法访问(Dynamic Method Invocation,DMI)**:允许根据用户请求的URL动态调用Action方法,提高灵活性。 7. **OGNL(Object-Graph Navigation Language)**:Struts2内部使用OGNL作为表达式语言,用于数据绑定和表达式的求值。例如,``用于显示用户的名字。 8. **插件系统**:Struts2有强大的插件支持,如Tiles、JSON、Freemarker等,可以方便地扩展框架功能。 9. **安全性**:Struts2的2.3.28版本会包含安全更新,修复了之前版本可能存在的漏洞,如SQL注入、XSS攻击等。开发者应当及时更新到最新版本,以保证应用的安全性。 10. **异常处理**:Struts2提供了一套全面的异常处理机制,可以通过配置文件定义全局和特定Action的异常处理策略。 11. **测试支持**:Struts2支持单元测试和集成测试,可以使用JUnit等测试框架对Action进行测试。 12. **国际化(Internationalization,i18n)**:Struts2提供了内置的国际化支持,通过资源包(.properties文件)管理不同语言的文本。 Struts2.3.28作为一个成熟的web框架,提供了一整套的解决方案,从请求处理、业务逻辑、视图展现到安全控制,帮助开发者高效地构建Java web应用。在使用这个版本时,开发者应熟悉其核心概念,合理配置和组织代码,同时关注框架的安全性和性能优化。
2025-02-17 10:06:22 20.15MB
1
包含struts 2 中2.522版本所有的jar包,修复了关于Apache Struts远程代码执行漏洞(S2-059、CVE-2019-0230)的安全预警!
2023-02-14 10:49:46 63.42MB struts2
1
最新的SSH整合。ssh spring-3.0.4 + hibernate-3.6.0 + struts-2.2.1,来
2022-10-16 22:16:31 13.87MB ssh spring-3.0.4 + hibernate-3.6.0
1
struts 高危漏洞升级为struts-2.3.35所需要的所有jar包
2022-08-29 15:43:42 20.53MB struts升级
1
struts-2.3.24。搭建 s2-045 环境用的版本,看我漏洞复现文章的小伙伴们可以搭建环境自己测试一下。后续我还会传 apache-tomcat-8.5.73.tar,也是搭建 s2-045 环境用的版本,看我漏洞复现文章的小伙伴们可以搭建环境自己测试一下。
2022-07-09 19:00:13 74.67MB s2-045 安全漏洞 渗透测试 漏洞复现
1
struts-2.5.30-all.zip
2022-05-23 15:06:31 63.66MB struts java struts2.5.30
1
This product includes software developed by The Apache Software Foundation (http://www.apache.org/).
2022-05-20 11:36:29 19.96MB struts-2.0.12-src.zip
1
antlr-2.7.2.jar, aopalliance-1.0.jar, asm-3.3.jar, asm-commons-3.3.jar, asm-tree-3.3.jar, builder-0.6.2.jar, classworlds-1.1.jar, commons-beanutils-1.8.0.jar, commons-chain-1.2.jar, commons-collections-3.2.2.jar, commons-digester-2.0.jar, commons-fileupload-1.3.2.jar, commons-io-2.2.jar, commons-lang-2.4.jar, commons-lang3-3.2.jar, commons-logging-1.1.3.jar, commons-validator-1.3.1.jar, core-0.6.2.jar, dwr-1.1.1.jar, ezmorph-1.0.6.jar, freemarker-2.3.22.jar, google-collections-1.0.jar, google-gxp-0.2.4-beta.jar, guava-r09.jar, jackson-core-asl-1.9.2.jar, jackson-mapper-asl-1.9.2.jar, javassist-3.11.0.GA.jar, jcl-over-slf4j-1.5.8.jar, json-lib-2.3-jdk15.jar, juli-6.0.18.jar, mvel2-2.0.11.jar, ognl-3.0.19.jar, org.apache.felix.framework-4.0.3.jar, org.apache.felix.main-4.0.3.jar, org.apache.felix.shell-1.4.3.jar, org.apache.felix.shell.tui-1.4.1.jar, org.osgi.compendium-4.0.0.jar, org.osgi.core-4.1.0.jar, oro-2.0.8.jar, oval-1.31.jar, plexus-container-default-1.0-alpha-10.jar, plexus-utils-1.2.jar, sitemesh-2.4.2.jar, slf4j-api-1.7.12.jar, spring-aop-3.0.5.RELEASE.jar, spring-asm-3.0.5.RELEASE.jar, spring-beans-3.0.5.RELEASE.jar, spring-context-3.0.5.RELEASE.jar, spring-core-3.0.5.RELEASE.jar, spring-expression-3.0.5.RELEASE.jar, spring-test-3.0.5.RELEASE.jar, spring-web-3.0.5.RELEASE.jar, struts-core-1.3.10.jar, struts2-cdi-plugin-2.3.30.jar, struts2-codebehind-plugin-2.3.30.jar, struts2-config-browser-plugin-2.3.30.jar, struts2-convention-plugin-2.3.30.jar, struts2-core-2.3.30.jar, struts2-dojo-plugin-2.3.30.jar, struts2-dwr-plugin-2.3.30.jar, struts2-embeddedjsp-plugin-2.3.30.jar, struts2-gxp-plugin-2.3.30.jar, struts2-jasperreports-plugin-2.3.30.jar, struts2-javatemplates-plugin-2.3.30.jar, struts2-jfreechart-plugin-2.3.30.jar, struts2-jsf-plugin-2.3.30.jar, struts2-json-plugin-2.3.30.jar, struts2-junit-plugin-2.3.30.jar, struts2-osgi-admin-bundle-2.3.30.jar, struts2-osgi-demo-bundle-2.3.30.jar, struts2-osgi-plugin-2.3.30.jar, struts2-oval-plugin-2.3.30.jar, struts2-pell-multipart-plugin-2.3.30.jar, struts2-plexus-plugin-2.3.30.jar, struts2-portlet-plugin-2.3.30.jar, struts2-rest-plugin-2.3.30.jar, struts2-sitegraph-plugin-2.3.30.jar, struts2-sitemesh-plugin-2.3.30.jar, struts2-spring-plugin-2.3.30.jar, struts2-struts1-plugin-2.3.30.jar, struts2-testng-plugin-2.3.30.jar, struts2-tiles-plugin-2.3.30.jar, struts2-tiles3-plugin-2.3.30.jar, tiles-api-2.2.2.jar, tiles-compat-3.0.1.jar, tiles-core-2.2.2.jar, tiles-el-2.2.2.jar, tiles-extras-3.0.1.jar, tiles-freemarker-2.2.2.jar, tiles-jsp-2.2.2.jar, tiles-mvel-3.0.1.jar, tiles-ognl-2.2.2.jar, tiles-request-api-1.0.1.jar, tiles-request-mustache-1.0.1.jar, tiles-request-servlet-1.0.1.jar, tiles-request-servlet-wildcard-1.0.1.jar, tiles-request-velocity-1.0.1.jar, tiles-servlet-2.2.2.jar, tiles-template-2.2.2.jar, tiles-velocity-3.0.1.jar, velocity-1.6.4.jar, velocity-tools-1.3.jar, xmlpull-1.1.3.1.jar, xpp3_min-1.1.4c.jar, xstream-1.4.8.jar, xwork-core-2.3.30.jar
2022-04-14 10:03:44 45.83MB struts2.3.30
1
struts2官网2.3版本的最后一个版本,能够满足网络上基于struts2 的2.3版本的示例源码开发。注意此版本的dispatcher是org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。详见https://struts.apache.org/docs/struts-23-to-25-migration.html。
2022-02-09 16:10:21 20.18MB struts2
1
Apache Struts 2 源码(struts-2.5.28.3-src.zip),Apache Struts 2.5.28.3是一个优雅的、可扩展的框架,用于创建企业级 Java Web 应用程序。它可以在完整发行版中使用,也可以作为单独的库、源代码、示例和文档发行版使用。Struts 2.5.28.3 是 2.5 系列中 Struts 的“最佳可用”版本。
2022-01-08 09:07:26 5.41MB ApacheStruts2 struts-2 Struts2 JavaWeb