SSH学习笔记(1)__Struts2_基本概念
发布日期:2021-04-30 21:03:34
浏览次数:109
分类:精选文章
本文共 1747 字,大约阅读时间需要 5 分钟。
Struts2 基本概念
目录
1. Struts2 概述
Struts2 是一个基于 Java EE 三层结构的 Web 层框架,作为 Struts1 和 WebWork 的继任者全新开发。它通过简化 Actions 开发流程,提升应用的灵活性和维护性,广泛应用于 Web 应用程序的前端逻辑处理。
2. Struts2 核心特点
- 核心配置文件:通过
struts.xml配置应用逻辑,支持多种配置文件加载顺序和覆盖机制。 - 动态性:支持通过通配符(如
*)实现动态方法调用,减少冗余配置。 - 可扩展性:通过插件机制支持多种功能扩展,如国际化、验证、数据绑定等。
- 可测试性:提供丰富的测试工具和支持,方便单元测试和集成测试。
3. Struts2 安装与配置
3.1 环境准备
- 服务器配置:推荐使用 Tomcat、JBoss 或 Spring Boot 等容器。
- 依赖管理:通过 Maven 或 Gradle 管理 Struts2 及相关依赖。
3.2 导入依赖
- 核心 JAR 包:导入
struts2-core.jar等核心模块。 - 示例程序:从 Struts2 官方示例程序中复制
jar包到项目lib目录。
3.3 创建 Struts Action
package cn.itcast.action;import com.opensymphony.xwork2.ActionSupport;public class HelloAction extends ActionSupport { public String execute() { return "ok"; }} 3.4 Struts 配置文件
/hello.jsp
3.5 配置过滤器
在 web.xml 中添加 Struts2 过滤器配置:
struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /*
4. Struts2 配置文件解析
4.1 核心配置文件顺序
struts.xml和struts.properties:主要配置文件。- 其他配置文件(如
struts-plugin.xml)可选扩展。
4.2 package 标签
- 作用:定义功能模块,包含多个 Action。
- 属性:
name:模块名称。extends:继承默认配置。namespace:访问路径前缀。
4.3 action 标签
- 作用:定义 Action 类及其访问路径。
- 属性:
name:Action 的唯一标识。class:Action 类全名。method:默认执行方法(可自定义)。
4.4 result 标签
- 作用:定义结果处理方式。
- 属性:
name:结果名称。type:结果类型(默认转发)。
5. Struts2 常用配置示例
5.1 国际化配置
5.2 表单数据处理
- POST 方法:直接设置编码。
- GET 方法:在 Action 中进行编码转换。
6. Struts2 动态开发
通配符:通过
*实现动态方法调用。动态结果处理:通过结果类型实现不同的页面跳转或数据处理。
7. Struts2 与 Hibernate 集成
- Action 类:调用 Service 层方法,处理业务逻辑。
- 结果处理:将 Service 层数据传递到 JSP 页面。
8. Struts2 高级功能
- 验证机制:通过
field和validator标签实现数据验证。 - 数据绑定:通过
property标签将数据域对象绑定到页面。
通过以上配置和实践,Struts2 能够高效地实现 Web 应用程序的前端逻辑处理,简化开发流程并提升应用维护性。
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2026年06月17日 13时43分12秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
PHP如何生成唯一的数字ID
2023-03-01
PHP如何获取当前页面的最后修改时间
2023-03-01
PHP如何读取json数据
2023-03-01
PHP字符串
2023-03-01
PHP字符串递增
2023-03-01
php学习之基础语法
2023-03-01
RabbitMQ集群 - 仲裁队列、Raft协议(最详细的选举流程)
2023-03-01
PHP学习总结(11)——PHP入门篇之WAMPServer多站点配置
2023-03-01
PHP学习总结(12)——PHP入门篇之变量
2023-03-01
PHP学习总结(13)——PHP入门篇之常量
2023-03-01
PHP学习总结(14)——PHP入门篇之常用运算符
2023-03-01
PHP学习总结(1)——PHP入门篇之PHP可以做什么?
2023-03-01
PHP学习总结(2)——PHP入门篇之PHP代码标识
2023-03-01
PHP学习总结(3)——PHP入门篇之PHP的echo语句
2023-03-01
PHP学习总结(4)——PHP入门篇之PHP计算表达式
2023-03-01
PHP学习总结(5)——PHP入门篇之PHP字符串
2023-03-01
PHP学习总结(6)——PHP入门篇之PHP语句结束符
2023-03-01
PHP学习总结(7)——PHP入门篇之PHP注释
2023-03-01
rabbitmq重启失败
2023-03-01
PHP学习总结(9)——PHP入门篇之WAMPServer服务控制面板介绍
2023-03-01