jsp中的中文参数的传递
在项目中,我们经常遇到需要在jsp页面切换中传递中文字符。这主要有两种方式。
URL方式,例如:http://website/test1.jsp?act=add&type=苹果¶m=%20D%20B
FORM方式,例如:
<form name=test mehtod="post">
<input type=hidden name=text2 value="中文">
<input type=text name=text1>
<input type=submit value=submit>
</form>
我们将针对这两种情况,分别提供中文正确传递的解决方法。
情况1:URL方式
例如:http://website/test1.jsp?act=add&type=苹果¶m=%20D%20B
一般来说我们很少直接在URL里面把参数写成中文,如例子中的"type=苹果"这样传递。如果出现这种情况,在我们的接收参数的页面我们只需要做个简单的转换就可以了。
代码test1.jsp:(主要部分)
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%
String type = request.getParameter("type");
String result = new String(type.getBytes("iso-8859-1"), "gb2312");
out.println(result);
%>
更普遍的做法,就是对url中的中文字符进行编码,变成类似type=%20D%20B这样的字符。
代码MyJsp1.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.net.*" %>
<a href=’./MyJsp2.jsp?act=<%=URLEncoder.encode("中国人 非常好 =-")%>’>test</a>
代码MyJsp2.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.net.*" %>
String tempVal = URLDecoder.decode(request.getParameter("act"));
out.println(new String(tempVal.getBytes("ISO-8859-1"), "gb2312"));
情况2:FORM方式
请注意,我们只是讨论在<form enctype="application/x-www-form-urlencoded" >这种形式的中文情况,因为在enctype="multipart/form-data"的时候通过解析出来中文也可以运用这种方法进行字符转化,所以不再重复讨论。
<form method=post>这种情况最简单。
代码MyJsp1.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<
相关文档:
<%--
有些朋友询问使用 JSP Smart 下载文件的时候报错, 这里给出一个测试过的不
需要使用 JSP Smart 的 JSP 页面中进行文件下载的代码(改 Servlet 或者
JavaBean 的话自己改吧), 支持中文附件名(做了转内码处理). 事实上只要向 ......
学习JSP主要学习他的9大对象(request, response, pageContext, session, application, out, config, page, exception ),这些对象都是静态对象,不用定义就可以直接使用,把他们都了解清楚并会运用,就可以在简历上添上一个熟悉技能:JSP
Jsp内置对象 功能 主要方法
out 向客户端输出数据 print() println() flush() ......
index.jsp
<%@ page language="java" import="java.sql.*" import="java.lang.*" import="java.util.*" pageEncoding="GB2312"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%!
& ......
JSP留言管理系统 (附加用户权限功能)
1.游客可以查看通过审核的留言;
2.普通用户登录后可以发表留言,修改密码;
3.管理员登录后可以审核、修改、删除留言;
4.超级管理员登录后可以管理用户,删除用户、修改密码、更改权限。
此留言管理系统包含以下文件:
1.首页(index.jsp):按发表时间倒序显示留言内容,不同权 ......
Servlet:
在Servlet中,跳转在doGet或者doPost方法中实现。
<1>redirect实现页面跳转:
response.sendRedirect("/login.jsp");
方法的参数是相对路径,设定这个参数可以使页面跳转到任何页面,包括www.baidu.com等网络页面。
跳转后你可以发现地址栏发生了变化。
底层原理:使用redir ......