我在用STRUTS进行数据写入的时候,数据成功的写入了,但是在数据库里,数据的中文都是乱码,不知道应该怎么解决呢,数据从JSP传送到ActionForm,Action从ActionForm中读取数据,在Action中打印出从ActionForm取出的数据是乱码。
后来在网上找了一些资料,在客户端JSP提交数据时,用一个Filter类对其进行过滤,把编码设为utf-8就可以了!
下面是Filter类的代码:
package form;
import java.io.* ;
import javax.servlet.* ;
public class EncodingFilter implements Filter{
public void init(FilterConfig filterConfig)
throws ServletException
{
// System.out.println("** 过滤器初始化...") ;
}
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain)throws
IOException,ServletException
{
try
{
request.setCharacterEncoding("utf-8") ;
}
catch (Exception e)
{
}
chain.doFilter(request,response) ;
}
public void destroy()
{
// System.out.println("** 过滤器销毁...") ;
}
}
然后在web.xml中设置
<filter>
<filter-name>encoding</filter-name>
<filter-class>form.EncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
分享到:
相关推荐
通过以上两种方法,你可以有效地解决Struts2 Action中处理中文乱码的问题。选择哪种方法取决于你的具体需求和项目结构。一般来说,如果你的整个应用都使用同一种编码格式,那么在Struts2配置中设置全局编码可能更...
通过这些配置,大部分Struts中文乱码问题都能得到解决。但有时,问题可能源自于其他因素,比如静态资源(如CSS、JavaScript文件)的编码设置,或者是第三方库的编码处理不当。因此,排查问题时需全方位考虑,确保每...
当Struts2应用在JSP页面中尝试加载并显示这些文本时,可能会遇到乱码问题,尤其是在处理中文等非英文字符时更为常见。 乱码问题的根源在于字符编码的不匹配。当资源文件的编码格式与JSP页面或服务器解析时所使用的...
Struts2是一个非常流行的Java Web框架,用于构建可...通过以上步骤,我们可以使用Struts2有效地实现批量提交数据到数据库的功能。在实际开发中,应结合项目需求和性能要求,灵活调整策略,确保批量操作的稳定性和效率。
通过以上步骤,一般可以解决Struts框架在处理中文和日期型数据时出现的问题。当然,每个项目环境可能有所不同,具体解决方案还需结合实际代码和配置进行调试。在处理这类问题时,一定要细心,确保每个环节都考虑到...
在IT领域,特别是Web开发中,处理中文...通过在`struts.properties`文件中配置`struts.i18n.encoding`,并注意表单提交和超链接传递参数的处理,可以有效避免中文乱码问题,提升Web应用的用户体验和数据处理的准确性。
当在 Action 类中遇到中文乱码问题时,可以使用以下代码进行转换。创建一个静态工具类,如 `Chinese`,并定义一个 `convert` 方法来将乱码的字符串转换为正确的中文字符串: ```java final public class Chinese { ...
在Struts1.2中处理表单提交,特别是当表单数据包含列表对象时,需要理解一些核心概念和技术。这篇博客文章可能详细探讨了如何在Struts1.2中处理这类情况。 首先,让我们来了解Struts1.2中的表单提交流程。当用户在...
通过以上步骤,一般可以解决Struts 2.5.2框架下的中文乱码问题。但请注意,每个项目可能有不同的配置和需求,因此在实际应用中,还需要根据具体情况进行调试和调整。 在`myStruts`这个压缩包中,可能包含了示例代码...
当用户通过表单提交包含中文的参数时,如果服务器端未正确处理编码,可能会导致乱码。在Struts框架中,可以配置`struts-default.xml`或自定义的配置文件,添加全局过滤器来设定字符编码。例如: ```xml ...
6. **处理Action中乱码问题** - 对于Action中直接通过`request.getParameter()`获取参数的情况,可以采用以下方式进行编码转换: ```java String s = request.getParameter("txt"); try { byte[] temp = s....
不过,这种方法需要在每次处理中文数据时手动调用,容易忘记,不利于代码维护。 另一种更优雅的解决方案是继承`RequestProcessor`类。`RequestProcessor`是Struts框架中的核心组件,它负责处理ActionServlet接收到...
在Struts框架中处理多行数据提交的问题是一个常见的开发场景,尤其当涉及到表格形式的数据录入时。本文将深入探讨如何在Struts框架下实现多行数据的动态添加与提交,结合给定的代码示例进行详细解析。 ### Struts...
1. **增加(Insert)**:当用户提交新数据时,Action会调用DAO的insert方法,执行INSERT SQL语句将数据插入数据库。 2. **删除(Delete)**:如果用户请求删除某条记录,Action会根据传递的ID获取该记录并调用DAO的...
在 Web 应用开发过程中,特别是在使用 Java 的 Struts 1.2 框架时,中文乱码问题是开发者经常遇到的一个难题。这不仅影响用户体验,还会对数据的准确性和完整性造成威胁。 **问题表现:** - 在页面显示中文时出现...
当我们需要通过POST方法提交包含中文字符的数据时,可能会遇到编码问题,因为HTTP请求默认使用的是ASCII编码,而中文字符需要UTF-8等支持多字节编码的格式。 这篇名为“Struts2 使用action属性接收中文参数(post...
在struts2中解决页面中出现的乱码问题,写在web.xml中
尽管在Struts.xml中设置了字符编码,但在2.1.6之前的版本中,这个设置可能不适用于POST数据。解决方法是更新Struts2到2.1.8.1或更高版本,并确保使用最新的`StrutsPrepareAndExecuteFilter`过滤器。 3. **GET乱码...
在Struts2中,防止重复提交是一个重要的问题,因为它可能导致数据不一致性和服务器资源的浪费。本文将详细介绍如何在Struts2中解决这个问题,以及相关的技术概念。 首先,我们要理解Struts2中的拦截器(Interceptor...
### 解决Struts中通过Token防止重复提交的问题 在Web应用程序开发中,特别是基于MVC架构的框架如Apache Struts中,确保用户操作的安全性是非常重要的。其中一项常见且重要的安全措施是防止表单的重复提交。本文将...