文档章节

Struts2---->中文乱码

小强斋太
 小强斋太
发布于 2016/11/09 20:07
字数 423
阅读 0
收藏 0
点赞 0
评论 0

1、<form action="user!add" method="post"> 必表单提交方法必须为post,如果是get就出错

Action1.java

package com.ncepu.struts2;

public class Action1 {

	private String name;
	private String password; //传递参数的时候  用的是方法 而不是赋给属性,
	                       //所以说将password改成userpassword下面方法setPassword不变也可以。	                       

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String add() {
		
        System.out.println("添加的name="+name+"添加的password="+password);
		return ("success");
	}

}

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>
	<constant name="struts.devMode" value="true" />
	<package name="default" namespace="/" extends="struts-default">
		<action name="user" class="com.ncepu.struts2.Action1">
			<result name="success">
				/add.jsp
            </result>
		</action>
	</package>
</struts>

index.jsp

<body>
			<!--必须为post-->
		<form action="user!add" method="get">
			姓名2
			<input type="text" name="name">
			密码1
			<input type="text" name="password">
			<input type="submit" value="submit" />
		</form>
	</body>

后台输出为:添加的name=°?????·?添加的password= °?·??÷

解决方法:
1、必须将<form action="user!add" method="post"> 必表单提交方法必须为post才正确。

2、对请求参数重新编码(参照http://blog.csdn.net/ncepustrong/article/details/7927027)

String name = new String(request.getParameter("name").getBytes("ISO8859-1"));
String password= new String(request.getParameter("password").getBytes("ISO8859-1"));

在此使用到了request,必须得到。

package com.ncepu.struts2;

import java.io.UnsupportedEncodingException;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

public class Action1 extends ActionSupport {

	private static final long serialVersionUID = 1L;
	HttpServletRequest request;
	private String name;
	private String password; // 传递参数的时候 用的是方法 而不是赋给属性,

	// 所以说将password改成userpassword下面方法setPassword不变也可以。

	public String getName() {
		return name;
	}

	public Action1() {
		request = ServletActionContext.getRequest();

	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String add() throws UnsupportedEncodingException {
		name = new String(request.getParameter("name").getBytes("ISO8859-1"));
		password = new String(request.getParameter("password").getBytes("ISO8859-1"));
		System.out.println("添加的name=" + name + "添加的password=" + password);
		return ("success");
	}

}


 

 

本文转载自:http://www.cnblogs.com/xqzt/archive/2012/08/30/5637212.html

共有 人打赏支持
小强斋太
粉丝 0
博文 181
码字总数 0
作品 0
广州
struts2编码乱码

Struts2的中文乱码解决中文乱码问题一般是指当请求参数有中文时,无法在Action中得到正确的中文。Struts2中有2种办法可以解决这个问题: 设置JSP页面的pageEncoding=”utf-8”,就不会出现...

小老傅 ⋅ 2014/11/24 ⋅ 0

struts2中文乱码解决方法-转贴

action重定义时使用下面的方式 <result name="aaal" type="redirectAction"> <param name="actionName">aaa.action</param> <param name="showMsg">${showMsg}</param> <param name="encode"......

antonie ⋅ 2010/03/17 ⋅ 0

关于JSP页面表单提交中文乱码问题和URL中文参数乱码问题

通过页面表单或URL提交请求给Struts2的Action处理,出现中文显示乱码,网上很多都是设置Struts2的编码为UTF8,设置JSP页面编码为UTF8,甚至编写一个Filter来设置所有请求编码为UTF8.这种办法如果...

蜡笔小小小新 ⋅ 2015/12/01 ⋅ 0

Struts2乱码终极解决办法

这个暑假一直在做有关Struts2的相关开发,可是乱码问题一直出现,也一直没在意。。。今天闲来有空,总结一下,希望以后乱码问题不要再出现 先把以往需要设置的点罗列一下: 1. JSP 文件头 2....

长平狐 ⋅ 2012/11/12 ⋅ 0

struts2 中文乱码问题

问题描述 在JSP中使用form表单向后台action中传递中文参数,后台action接收到参数出现中文乱码。JSP页面统一采用了utf-8编码格式。由于struts2默认采用的编码为utf-8,根据官方文档的提示,编...

felixlv ⋅ 2013/06/05 ⋅ 1

struts2 传值 中文 为空

struts2 传值为中文的时候,传不到后台,是空的,不是乱码是空的,各位有什么办法帮帮我 前台代码:

seandu ⋅ 2013/06/18 ⋅ 10

java-websphere 乱码

从tomcat6迁移到websphere6, jquery-ajax调用 struts2 ,使用data:params ,中有中文参数,出现乱码。 ps:本地开发tomcat中没有问题!求解!...

VmLia ⋅ 2013/09/13 ⋅ 1

[备忘]IE6不完全支持UTF-8导致汉字乱码的BUG~

环境:Windows XP SP3 简体中文版、IE6、Tomcat 6.0.32、JDK 1.6.0.23 配置:JSP页面charset=UTF-8" pageEncoding="UTF-8",tomcat的Server.xml中配置URIEncoding="utf-8",Struts2的struts.......

leeoo ⋅ 2011/12/24 ⋅ 0

csv 文件导入数据库 乱码问题

通过ajaxFileUpLoad.js和struts2实现无刷新文件上传。将上传的csv文件的数据逐行解析,生成对象,然后导入到数据库中, 对于csv文件中的中文表格数据导入数据库中是乱码。 数据库编码:utf-8...

husky2008 ⋅ 2013/09/08 ⋅ 1

Struts2/SpringMVC URL传参jsp 页面获取显示

形如:http://localhost:8081/ysw//pages/general/iconEdit.jsp?sid=1d005568009349108de0a6accfe8678c&projectName=河畔一号Struts2:<%String sid = request.getParameter("sid");String p......

小鱼吃大鱼 ⋅ 2016/09/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

从方法论到零售客户实践 解码阿里巴巴数据中台——2018上海云栖大会

摘要: 一、数据中台之道 6月8日,上海云栖大会进入了第二天的议程,数据中台专场论坛座无虚席,数据中台总架构师邓中华女士向在场的观众介绍了数据中台的衍生发展之道。 基于OneID、OneData...

阿里云云栖社区 ⋅ 11分钟前 ⋅ 0

Ubuntu部署django问题汇总

使用Anaconda3的Python3.6的pip安装UWSGI报错 原因是gcc版本不兼容,安装4.7并修改gccsudo apt-get install gcc-4.7sudo mv /usr/bin/gcc /usr/bin/gcc.baksudo ln -s /usr/bin/gcc-4.......

wuyaSama ⋅ 14分钟前 ⋅ 0

从方法论到零售客户实践 解码阿里巴巴数据中台——2018上海云栖大会

摘要: 一、数据中台之道 6月8日,上海云栖大会进入了第二天的议程,数据中台专场论坛座无虚席,数据中台总架构师邓中华女士向在场的观众介绍了数据中台的衍生发展之道。 基于OneID、OneData...

猫耳m ⋅ 15分钟前 ⋅ 0

Docker减肥小记

如果经常使用 docker,你会发现 docker 占用的资源膨胀很快,其中最明显也最容易被察 如何快速的清理 docker 占用的系统资源,具体点说就是删除那些无用的镜像、容器、网络和数据卷… 1、查看...

寰宇01 ⋅ 25分钟前 ⋅ 0

微信小程序中如何使用WebSocket实现长连接(含完整源码)

本文由腾讯云技术团队原创,感谢作者的分享。 1、前言 微信小程序提供了一套在微信上运行小程序的解决方案,有比较完整的框架、组件以及 API,在这个平台上面的想象空间很大。腾讯云研究了一...

JackJiang- ⋅ 33分钟前 ⋅ 0

定制库到Maven本地资源库

1.如果只有定制库的JAR文件 下载链接如下:pdf.jar 2.使用命令转换成Maven本地资源 mvn install:install-file -Dfile=/Users/manager/Downloads/clj-pdf-2.2.33.jar -DgroupId=clj-pdf -Dar......

年少爱追梦 ⋅ 37分钟前 ⋅ 0

高仿springmvc之xuchen-mvc

package org.mvc.framework.servlet; import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.......

徐志 ⋅ 39分钟前 ⋅ 0

关于自定义URLStreamHandler的一次踩坑

关于自定义URLStreamHandler的一次踩坑 20180625 lambo init 说明 一般自定义实现url的协议解析.方案为实现URLStreamHandler.实现其 openConnection 就可以了, 如果我们执行 new URL("xx://...

林小宝 ⋅ 40分钟前 ⋅ 0

【SM2证书】利用BC的X509v3CertificateBuilder组装X509国密证书

演示证书文件 链接: https://pan.baidu.com/s/1ijHNnMQJj7jzW-jXEVd6Gg 密码: vfva 所需jar包 <!-- https://mvnrepository.com/artifact/org.bouncycastle/bcpkix-jdk15on --> <dependenc......

小帅帅丶 ⋅ 41分钟前 ⋅ 0

用Calendar 实现 计算 一段时间的毫秒值

Calendar c=Calendar.getInstance();c.add(Calendar.MONTH, -1);int lastMonthMaxDay=c.getActualMaximum(Calendar.DAY_OF_MONTH);c.set(c.get(Calendar.YEAR), c.get(Calendar.MONTH)......

岸芷汀兰 ⋅ 45分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部