搜索到关键字为 Struts 的相关日志 6 篇: ("[空格]和"+"[加号] 可作搜索分隔符号使用.)

Struts2标签和EL表达式混合使用会导致乱码 suny

今晚在配置Struts2环境的时候,遇见了中文乱码啦。配置了struts.i18n.encoding和SetCharacterEncodingFilter还是不行,最后发现如下规律:

Struts2标签和EL表达式混合使用会导致乱码:

如图所示,如果s2标签的值用el表达式代替的话,会导致中文乱码。

...

Struts 2框架的两个核心配置文件详解 suny

    struts.xmlstruts.properties

    其中struts.xml文件主要负责管理应用中的Action映射,以及该Action包含的Result定义等。除此之外,Struts 2框架还包含一个struts.properties文件,该文件定义了Struts 2框架的大量属性,开发者可以通过改变这些属性来满足应用的需求。

     struts.properties文件是一个标准的Properties文件,该文件包含了系列的key-value对象,每个key就是一个Struts 2属性,该key对应的value就是一个Struts 2属性值。

...

Tomcat5.x get提交的中文乱码问题 suny

本来解决 Tomcat 中文乱码很久了,但是今天重装了一下Tomcat,忘记配置了,结果用URL get方式传递的中文参数出现了乱码,这里就再提一下不用filter,直接修改Tomcat配置文件的解决方法:

Tomcat5+已经把get和post分开处理了,其设置编码方式也有所不同。
根据 http://tomcat.apache.org/tomcat-5.5-doc/config/http.html 得需要设置URIEncoding & useBodyEncodingForURI,否则默认编码方式为"ISO-8859-1"

这里以Tomcat 5.0 为例,其他版本的类似,修改  conf/server.xml :

<Connector port="8080"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000"
               disableUploadTimeout="true" URIEncoding="UTF-8" useBodyEncodingForURI="true" />

红色部分为新增,URIEncoding 可以改为 gbk 或者 gb2312,但是建议还是使用UTF-8!最好就是从代码到应用全都utf-8!

另外,jsp页面也需要声明编码:

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
...

request.getRealPath 和 getServletContext().getRealPath cloud

今天开发项目中发现:request.getRealPath(arg0); 报警告:

The method getRealPath(String) from the type ServletRequest is deprecated

request.getRealPath("") 这个方法已经不推荐使用了,那代替它的是什么方法呢?

...

学习使用DispatchAction rainy

DispatchAction继承自Action类,它是一个抽象类,封装了一些基础方法,来解决使用一个Action处理多个操作的能力,这就是DispatchAction最大的用途,它可以帮助我们用一个Action类,封装一套类似的操作方法,节省了类的数目,同时也减轻了后期维护的困难。

DispatchAction中主要包括一下几个方法:

protected ActionForward dispatchMethodprotected java.lang.reflect.Method getMethodprotected java.lang.String getMethodName

DispatchAction在配置上于标准的Action稍有不同,就是要在Action配置中多一个parametr属性,这个属性将指导DispatchAction找到对应的方法,例如这样配置:

<action path="/saveSubscription"
        type="org.apache.struts.actions.DispatchAction"
        name="subscriptionForm" scope="request" input="/subscription.jsp"   
        parameter="method" />

parameter的属性值是可以任意起的,只要你记得在传参数的时候统一就可以了。比如我写了一个类似这样的Action,它继承自DispatchAction类,包含了三个操作方法,有Add(),Update(),Delete()。当我想要调用这个Action的Update操作时,提交的URL应该类似这样的:

http://localhost:8080/myapp/saveSubscription.do?method=update

就是这么简单,不过非常方面我们程序员了,开发中我感觉的确省了好多代码,至少以前的三个类文件变成了现在一个类了,而且在后期维护的时候感觉也是方便很多。

例解:
<html:form action="/insert.do?method=insertRecord" method="post">
这个请求中包含了参数method.这样的请求需要使用DispatchAction进行处理,参数中的方法就是自定义的DispatchAction类中的方法.

在Action中的应用(只要让其Action继承于DispatchAction类):
...

spring 编程入门十大问题解答 cloudy

1、如何学习Spring?
你可以通过下列途径学习spring:
(1) spring下载包中doc目录下的MVC-step-by-step和sample目录下的例子都是比较好的spring开发的例子。

(2) AppFuse集成了目前最流行的几个开源轻量级框架或者工具Ant,XDoclet,Spring,Hibernate(iBATIS),JUnit,Cactus,StrutsTestCase,Canoo's WebTest,Struts Menu,Display Tag Library,OSCache,JSTL,Struts 。
你可以通过AppFuse源代码来学习spring。
...