- 浏览: 1231055 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (718)
- HTML (13)
- JS基础 (23)
- JS应用 (40)
- AJAX (6)
- JSP相关 (12)
- JAVA基础 (52)
- JAVA应用 (74)
- APPLET (11)
- SWING\RCP (2)
- JAVA反射 (6)
- 设计模式 (26)
- 数据库设计 (20)
- Struts (35)
- Struts2 (12)
- Spring (22)
- Hibernate (45)
- Ibatis (18)
- mybatis (3)
- SSH (8)
- UML (5)
- WebService (3)
- XML (16)
- Log4j (7)
- WEB容器 (26)
- 数据结构 (36)
- Linux (34)
- Ruby on Rails (1)
- 其它技术 (27)
- IDE配置 (15)
- 项目实战 (2)
- Oracle (69)
- JAVA报表 (7)
- Android学习 (2)
- 博客链接 (1)
- 网络基础 (1)
- WEB集群 (1)
- .Net开发 (11)
- PB (4)
- 系统构建 (15)
最新评论
-
jnjeC:
牛逼啊哥们,讲得太好了
Maven仓库理解、如何引入本地包、Maven多种方式打可执行jar包 -
九尾狐的yi巴:
很好 感谢!
Itext中文处理(更新版) -
luweifeng1983:
有用的,重启一下嘛。
设置eclipse外部修改文件后自动刷新 -
Master-Gao:
设置了也不管用,怎么破呢?
设置eclipse外部修改文件后自动刷新 -
aigo_h:
锋子还有时间写博客,还是很闲哈!
Add directory entries问题
struts form定义的字段数比表单中提交的字段多的时候.那么多余的字段就会有空字符串的问题.
具体如下:以下表单中只有一个name,而form中定义了name,age,pwd
那么我们比较在返回的文件blankResult.jsp中使用jsp和el表达式取得值的不同..
配置:
<form-bean name="blankForm" type="com.lwf.struts.form.BlankForm"></form-bean> <action path="/blankAction" type="com.lwf.struts.action.BlankAction" name="blankForm" > <forward name="success" path="/blankResult.jsp"></forward> </action>
blank.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <form action="blankAction.do" method="post"> name:<input type="text" name="name"/> <input type="submit" value="submit"></input> </form> </body> </html>
blankForm.java
package com.lwf.struts.form; import org.apache.struts.action.ActionForm; public class BlankForm extends ActionForm { private String name; private String pwd; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
BlankAction.java
package com.lwf.struts.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import com.lwf.struts.form.BlankForm; public class BlankAction extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return mapping.findForward("success"); } }
上面过程中没有做任何处理..
但我们知道struts源码中会自动将BlankForm设置到request或session中去.
blankResult.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="com.lwf.struts.*,com.lwf.struts.form.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <% BlankForm blankForm = (BlankForm)session.getAttribute("blankForm"); %> jsp:<br> name:<%=blankForm.getName()%><br> pwd:<%=blankForm.getPwd()%><br> age:<%=blankForm.getAge()%><br> el:<br> name:${blankForm.name }<br> pwd:${blankForm.pwd }<br> age:${blankForm.age }<br> </body> </html>
显示结果为:
jsp: name: pwd:null age:0 el: name: pwd: age:0
可以看到使用EL的时候会自动将null转换为""...
发表评论
-
DispatchAction 和DynaValidateActionForm 结合使用时的问题
2011-03-08 16:23 936使用DispatchAction使得程序员能够大大减少acti ... -
ActionForm中使用集合属性并自动组装数据
2011-01-18 14:32 929http://blog.csdn.net/m0085_cn/a ... -
Cannot find bean org.apache.struts.taglib.html.BEAN in any scope
2010-11-10 14:13 976开的过程中碰到问题:Cannot find bean org. ... -
Struts 结合 Validate框架验证详解
2010-10-25 14:00 1508转自:http://student.csdn.net/spac ... -
JSTL与struts1标签
2010-08-31 10:17 1555JSTL与struts标签: http://www.360d ... -
如何自动清空struts表单域
2010-06-30 17:44 1270为了某种需要,formBean的SCOPE设置成了ses ... -
form验证与动态验证框架
2010-06-06 17:22 1391form验证返回ActionErrors. 动态验证则实现J ... -
resourcebundleeditor在eclipse里面的设置和使用
2010-05-30 11:30 1752我们一般使用native2ascii工具得到struts资源文 ... -
使用DispatchAction分发
2010-04-07 18:04 1160应用中经常有增、删、改、查操作,如果象一前一样使用List ... -
forward属性与ForwardAction类
2010-04-07 17:08 1174forward属性与ForwardAction类在配置文件按以 ... -
struts容错处理
2010-04-07 15:20 1189struts容错处理: 当客户请求的action不存在的时候 ... -
struts声明式异常二
2010-04-07 15:18 1176上文如果资源文件改为: error.login.usernu ... -
struts声明式异常一
2010-04-06 23:10 1058struts声明式异常: 在配置文件中配置exception ... -
struts编程式异常--html:error与html:message
2010-04-03 11:39 2042struts编程式异常过程: 截获异常信息;创建异常信息; ... -
struts国际化,从资源文件读取异常信息
2010-04-03 01:56 1201示例演示登录时从资源文件读取用户名或密码错误信息 logon ... -
struts国际化,资源文件读取三
2010-04-02 23:42 1031本示例演示客户进行语言设置,从而更改整个系统语言. 客户在c ... -
struts国际化,资源文件读取二
2010-04-02 22:18 1638package com.lwf.struts.util; ... -
struts国际化,资源文件读取一
2010-04-02 00:19 1378国际化的发展 看本文之前可先看一下properties文件的 ... -
struts html标签自动保存提交的表单值。
2010-04-01 17:01 2064我们之前JSP提交值后如果还要取得值怎么做? 应该是取得a ... -
ActionMapping相关
2010-04-01 16:02 1086一、Map的设置map.put("path" ...
相关推荐
struts.multipart.parser 属性指定处理 multipart/form-data 的 MIME 类型(文件上传)请求的框架,该属性支持 cos、pell 和 jakarta 等属性值,即分别对应使用 cos 的文件上传框架、pell 上传及 common-fileupload ...
然而,有一个常见的问题出现在尝试初始化`java.util.Date`类型的字段时,即“Struts的form不能初始化java.util.Date类型”。这个问题通常是由于日期对象的序列化和反序列化机制导致的,以及Struts默认的数据绑定策略...
这里使用了`getBytes("ISO-8859-1")`将字符串转换为字节数组,然后再用`new String(byte[], "utf-8")`将字节数组转换回字符串,同时指定了正确的编码。 ### 结论 在Struts2.0框架中,解决中文乱码的关键在于正确...
如果使用的是数据库存储中文数据,确保数据库连接字符串中包含了正确的字符集参数,如`?useUnicode=true&characterEncoding=UTF8`。 ### 总结 Struts框架中的中文乱码问题虽然常见,但通过上述方法可以有效解决。...
5. **存入Session**: 生成的验证码图像和其对应的文本字符串需要存入用户的session,以便后续验证时使用。同时,也可以设置一个过期时间,避免长时间未使用的验证码被重复使用。 6. **处理验证请求**: 当用户输入...
- `<html:errors>`:这个标签用于显示ActionErrors,即Struts框架中的错误信息。它可以自动查找并显示请求中与ActionErrors相关的消息。 使用Struts的HTML标签库,开发者可以避免在JSP页面中过多地使用脚本语言,...
### JS调用Struts中的Action #### 背景与概念 在Web开发中,JavaScript(简称JS)作为客户端脚本语言,常被用来增强用户体验、处理表单验证等前端任务。而Struts框架则是Java Web开发中常用的一个MVC(Model-View-...
例如,用户输入的字符串可以自动转换为整数或日期。如果Struts2内置的转换器无法满足需求,开发者还可以自定义转换器。 Struts2标签库是其强大的视图层工具,简化了JSP页面的编写。例如: 1. `<s:form>`:创建表单...
当Action执行完毕后,返回一个字符串,这个字符串将决定页面的流转方向,比如“input”可能指向输入表单页面,“success”则指向成功的处理结果页面。 Struts2.0采用了拦截器(Interceptor)机制,这是一种非常强大...
在资源文件(如message.properties或message_zh_CN.properties)中,使用UTF-8编码存储中文字符串,并在页面中通过`<fmt:message>`标签显示。 7. **异常处理** - 在处理中文数据过程中,可能出现的乱码问题通常会...
在`execute()`中编写业务逻辑,返回一个表示结果的字符串,与视图进行交互。 **3. 注释使用** Struts2允许在Action类和Action方法上使用注解,简化配置。例如,`@Action(value="login")`用于指定Action的名称,`@...
4. 避免直接返回Action的字符串结果:这可能导致恶意用户控制返回的视图,应使用常量或者ActionForward。 5. 使用拦截器:Struts2提供了一系列拦截器,如Params拦截器可以自动进行参数绑定和验证。 6. 开启Struts2...
通过研究这些示例,你可以看到如何配置Action、Result和Form Bean,以及如何在JSP页面中使用Struts标签来展示和处理中文数据。这些实例有助于加深对Struts标签中文支持的理解。 5. **常见问题及解决方案** - **...
处理完成后,Action返回一个结果字符串,这个字符串会被用来查找`struts.xml`中的`<result>`元素,最终决定渲染哪个视图(View)。 #### 五、Struts2的优点 - **灵活性**:Struts2提供了丰富的配置选项,允许...
5. **Apache Commons Lang3** (`commons-lang3-3.1.jar`): 这个库提供了大量的Java语言工具类,增强了标准库的功能,例如字符串处理、日期/时间操作等,对开发高效代码非常有帮助。 6. **OGNL (Object-Graph ...
- 创建一个新的Java类,实现`com.opensymphony.xwork2.Action`接口或继承`ActionSupport`类,定义业务逻辑方法,通常返回字符串结果,对应视图页面。 4. **配置Action** - 在`struts.xml`中为Action类添加配置,...
如果方法成功执行,则根据返回的字符串决定跳转到哪个页面。例如,如果返回`"successful"`,则跳转到`/success.jsp`;如果返回`"failed"`,则跳转到`/error.jsp`。 ### 2. Form-only Action Form-only Action主要...
2. **类型转换**:为了确保传入的字符串能够正确地转换为所需的Java对象类型,Struts2提供了内置的类型转换器,并允许用户自定义类型转换逻辑。这一步骤对于确保应用程序的安全性和数据完整性至关重要。 接下来,...
这些方法处理完业务逻辑后,会返回一个结果字符串,该字符串定义了接下来要显示的视图页面。 对于视图层,Struts2支持JSP、FreeMarker等多种模板技术。在JSP中,我们可以使用Struts2的标签库,如`s:form`、`s:...