
在你的页面中加个链接跳到你的Servlet中, 比如你的Servlet名字叫 test
你就加一个 <a href="testval=你要传的值">点我</a>
然后在Servlet中获取的时候 requestgetParamater("val");就可以获得!
出现乱码的原因及解决方法:
在Web开发中,挺多的时候都是通过超链接去传递中文参数的,这也会导致在显示的时候也会出现乱码,对于超链接来说,它实际上是向服务器端发送了一个请求,而它发出的请求是属于get请求,所以对于超链接的乱码来说,它处理乱码的方式和表单的get请求出现乱码的方式是一样的。
客户端的get请求
对于不同的请求方式,解决乱码的问题也是不一样的,对于客户端的get请求来说,服务器端处理要想不出现乱码,解决这个问题稍微复杂一些,需要用到String类型的构造函数,其中的一个构造函数就是用指定的编码方式去解码,一般都用“UTF-8”的方式。只要在服务器端将请求得到的参数重新构造成一个字符串就行了。如下所示:
String stuname = requestgetParameter("stuname");
String str = new String(stunamegetBytes("ISO-8859-1"),"utf-8")
经过构造之后,客户端输入中文,且表单时get请求的情况下,str就变成了中文了。如果请求参数比较多,最好将它封装成一个工具类:
public class MyUtil
{
public static String getNewString(String str) throws UnsupportedEncodingException
{
return new String(strgetBytes("ISO-8859-1"),"UTF-8");
}
}
String stuname= MyUtilgetNewString(requestgetParameter("stuname"));
主要有两种方式:
1 在action中定义跟表单的name字段同名的field,并生成相应的set方法,这样struts就会自动将参数值设好。
2 可以在action中获取原生的>();
即可。
给一个例子你,希望对你能有帮助
package dao;
import javaxservletFilter;
import javaxservletFilterConfig;
import javaxservletServletException;
import javaxservletServletRequest;
import javaxservletServletResponse;
import javaxservletFilterChain;
import javaioIOException;
import javaxservlet>
以上就是关于servlet中何如获取a元素的href中设置的参数,获取中文出现乱码全部的内容,包括:servlet中何如获取a元素的href中设置的参数,获取中文出现乱码、struts2如何获取请求参数、我怎么才能从ServletRequest request 中的到URL,参数我能得到。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)