Struts2.0.11.1
Kit.Liao--KingKit Studio.2009年1月28日星期三
总结:
1. Struts2默认编码是 UTF-8(在org.apache.struts2下的default.properties文件里面有)
1).可以在根目录下建立一个struts.properties文件加入struts.i18n.encoding=编码.
2).也可以在struts.xml加入一个
<constant name="struts.i18n.encoding" value="编码"/>
2. 初始化配置信息还可以web.xml里面配置struts filter的时候加入init-param
3. 注意!!!!!!!struts.xml的package里面元素的出现顺序必须按照:
(result-types?,interceptors?,default-interceptor-ref?,default-action-ref?,default-class-ref?,global-results?,global-exception-mappings?,action*)".
1. 配置web.xml
与struts1.x用Servlet不同,2.x用Filter
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
加入基本的包:
编写struts.xml文件:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" extends="struts-default">
</package>
</struts>
2. 标签库
<%@ taglib prefix="s" uri="/struts-tags"%>
3. 类型转换
1.1.1.1. 局部类型
第一步:继承ognl.DefaultTypeConverter, 重写
public Object convertValue(Map context, Object value, Class toType)方法
注: 在这个方法里面完成:
1.客户端String--->服务器端自定义类型
2.服务器端自定义类型--->客户端String
第二步:
在Action同一目录下建立 类型转换类类名-conversion.properties文件,
如:
PointAction-conversion.properties
Properties 文件内容:
属性名=转换类名
如:point=cn.com.kingkit.struts2.test.converter.PointConverter
1.1.1.2. 全局类型转换
在classpath目录下(src或者classes)建立一个叫
xwork-conversion.properties
内容:
类型=转换工具类名
如:
cn.com.kingkit.struts2.model.Point=cn.com.kingkit.struts2.test.converter.PointConverter
项目开发中一般是继承 org.apache.struts2.util.StrutsTypeConverter
4. Struts2较验
可以在用户自定义的Action类中写一个execute()方法,
也可以使用Struts2的验证框架: 继承ActionSupport
ActionSupport有validate方法
有两种级别的Error (1.addActionError(anErrorMessage),2.addFieldError)
自定义验证方法:
在struts.xml的action中加入method="自定义验证方法"
自定义方法在XXAction中定义实现:
method="abc"
Public String abc()
Public void validateAbc()
一般是 validate()---execute()
如果有自定义的验证方法:
先执行validate,valideXX..--->execute,xX()...
1.1.1.3. 使用较验框架(字段较验\非字段较验)
在Action实现类同一目录下加入XXX-validation.xml
内容:
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="userName">
<field-validator type="requiredstring">
<message>user name can not be blank!</message>
</field-validator>
<!-- 验证字符串长度 -->
<field-validator type="stringlength">
<param name="minLength">6</param>
<param name="maxLength">16</param>
<message>length of user name should be 6-16</message>
</field-validator>
</field>
</validators>
Type可以从com.opensymphony.xwork2.validator.validators包里面的default.xml看到.
Param的name可以从type对应的class里面可以看到.
注意: 较验框架显示的错误信息是field级别的:<s:fielderror/>
Struts2支持客户端较验(基于XX-validation.xml文件的验证信息..)
1.<s:form 的theme不能设为simple
2.Form的validate属性设为true
一般不使用struts2提供的客户端较验
相关推荐
### Struts2学习笔记知识点梳理 #### 一、前言及背景 - **Struts2简介**:Struts2是一...以上内容涵盖了从Struts2的准备工作、项目搭建到高级配置和常见问题解决等各个方面,希望能够帮助初学者快速入门Struts2框架。
这篇学习笔记将带你入门Struts2,通过创建第一个实例来理解其核心概念和基本配置。 首先,了解Struts2框架的结构至关重要。Struts2的核心组件包括Action、Result、Interceptor等,它们协同工作,处理HTTP请求并呈现...
这篇笔记主要涵盖了Struts2的基础知识,适合初学者入门学习。 首先,笔记介绍了Struts2的基本环境搭建。解压`struts-2.1.6-all.zip`后,可以看到几个关键目录:`apps`包含示例程序,`docs`存储官方文档,`lib`存放...
- **Struts2核心库**:struts2.0-core.jar - **第三方依赖**:commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar、commons-logging-1.0.4.jar、xwork-2.1.2.jar、ognl-2.6.11.jar、freemarker-2.3.13.jar - **...
### Struts1基础知识详解 #### 一、Struts框架简介 **Struts** 是由 Apache Jakarta 项目开发的一款开源框架...它不仅提供了强大的功能支持,还具备良好的可扩展性和灵活性,非常适合初学者入门学习和实际项目开发。
1. **下载 Struts 2.0 包**:从 Apache 官方网站获取最新版本的 Struts2,确保获得所有必需的库文件。 2. **创建 Web 工程**:在 Eclipse 中,通过 File > New > Project 创建一个新的 Dynamic Web Project,命名为...
在入门学习Struts2时,首先需要准备相应的开发环境。这里提到了Eclipse IDE,这是一款广泛使用的Java开发工具,特别适合Web项目的开发。同时,还需要Tomcat服务器,它是一个开源的Servlet容器,用于运行Java Web应用...
**快速入门步骤**: 1. 安装 JDK 5 或更高版本,Maven 2.0.4 或以上。 2. 安装 MySQL 5.x 数据库,以及本地 SMTP 邮件服务(或修改邮件配置)。 3. 选择合适的 archetype 创建项目。AppFuse 提供了 basic 和 modular...
### Java/JavaEE 学习笔记关键知识点概览 #### 1. Unix 学习笔记 - **Unix 前言** - Unix 是一种多用户、多任务的操作系统,广泛应用于服务器领域。 - Unix 的历史和发展背景,以及其在现代IT基础设施中的重要性...
java(1) 整合入门(spring,struts,hibernate的整合)资料(1) 中大软件工厂项目前培训资料(1) 完整笔记+源码(1) ssh(1) C#查询参数化例子(1) 学习笔记+完整源码(1) 介绍与深入(1) 学习笔记(不含整合)(1) C#(1) .CHM格式...
Struts2.0..263 第一章 MVC Model.........................263 第二章 Struts Basic264 第三章 Action,Result & Struts2 Tag Library......................267 第四章 Data Transfer & Type Converter..273 第五...
4. **Struts2.0+Spring+Ibatis讲义-20110304.ppt**:可能是一个教学或研讨会的幻灯片,提供了直观的视觉辅助,帮助理解三者整合的架构和设计模式。 5. **struts2+spring2+ibatis2整合.txt**:可能是整合过程中的...
Struts2.0..263 第一章 MVC Model.........................263 第二章 Struts Basic264 第三章 Action,Result & Struts2 Tag Library......................267 第四章 Data Transfer & Type Converter..273 第五...
AppFuse 是一个开源项目,旨在加速和简化J2EE应用程序的开发流程。由Matt Raible设计,它作为一...通过深入阅读和实践AppFuse的学习笔记,开发者可以逐步掌握其核心功能,并将其应用到实际项目中,提升开发质量和效率。
这个学习总结将围绕着Activiti5的核心概念、快速入门、以及与SSH(Struts2、Spring、Hibernate)框架的整合进行详细介绍。 一、Activiti5核心概念 1. **BPMN 2.0支持**:Activiti5遵循Business Process Modeling ...
- **Spring+hibernate+struts2整合文档**: 这个文档会讨论如何将Spring与Hibernate ORM框架和Struts2 MVC框架整合,创建一个完整的MVC应用。 - **Spring教程.docx**: 这是一份综合性的Spring教程,可能涵盖了从基础...
"javaweb笔记+代码(狂神说java)"可能是一份由知名讲师“狂神”编写的教程资料,包含了学习JavaWeb开发的知识点以及相应的实践代码。 在JavaWeb开发中,以下是一些关键知识点: 1. **Servlet**: Servlet是Java Web...