初学jsp 用include传递参数时中文乱码

wjk13828472197 2009-03-07 02:53:46
就是用<jsp:include >在include.jsp中调用了include-1.jsp的页面,同时include.jsp中设置了一个参数<jsp:param name="biaoti" value="娱乐新闻"/> 希望能在include-1.jsp中获取,并输出,发现总是乱码。但是在include-1.jsp直接输出中文又可以,为什么从include.jsp中获取的字符串却会出现乱码呢?谢谢各位了 orz
这是include.jsp
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>用include包含另一个jsp</title>
<style type="text/css" >
*{padding:0; margin:0; list-style:none; text-align:left; overflow:visible; font-family:"Times New Roman", Times, serif;}
#box {width:320px; border:#999999 1px solid; margin:0 auto; background:#B7B7B7; margin-top:50px;}
ul{margin-left:10px; margin-bottom:10px;}
li{font-size:14px; line-height:16px; margin-top:10px; color:#990000;}
h1{background:#5B0000; color:#AEAEAE; font-size:18px; line-height:24px; }

</style>
</head>

<body>
<div>
<jsp:include page="include-1.jsp">
<jsp:param name="biaoti" value="娱乐新闻"/>
</jsp:include>
<%--向include-1.jsp传递标题参数--%>
</div>
</body>
</html>
------------------------------------------------------------------------------------------------------------------
这是include-1.jsp
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage=""%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>box</title>
</head>

<body>
<div id="box">
<h1>
<%
String tr=request.getParameter("biaoti");
out.println(tr1);
%>
<%--接受include.jsp传来的标题参数--%>
</h1>
<ul>
<li>刘谦做客《津夜嘉年华》细数喜欢女孩类型(图)</li>
<li>《团长》将推电影终结版 段奕宏开腔谈女友(图)</li>
<li>《团长》花絮揭秘热点 康洪雷谈王宝强缺席(图)</li>
<li>周杰《秘密列车》将开播 沪杭杰迷齐聚绍兴捧场</li>
<li>《王贵与安娜》夫妻反差大 编剧:原型是我父母</li>
<li>马苏避谈与孔令辉情感话题 演反派做好被骂准备</li>

</ul>

</div>
</body>
</html>
...全文
1530 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wjk13828472197 2009-03-07
  • 打赏
  • 举报
回复
解决了 原来是要在include.jsp上加这句<% request.setCharacterEncoding("gbk"); %> 在include-1.jsp上加这句没有用。
谢谢各位的回答
谢谢了~~~
lmx990 2009-03-07
  • 打赏
  • 举报
回复
两种方法,1:楼上的方法。2:使用过滤器,新建一个类实现Filter接口,然后在web.xml中配置Filter,并且设置编码。然后在你新建的Filter类中的初始化方法中读取你在配置文件中写的编码。然后加上response.setContentType("text/html;charset=你的编码");request.setCharacterEncoding("你的编码"); 就好了。建议使用第二种方法,因为它可以拦截所有你设置的请求
yjw3160 2009-03-07
  • 打赏
  • 举报
回复
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
String tr=request.getParameter("biaoti");
out.println(tr);
这样类?
qingkongxiaoyang 2009-03-07
  • 打赏
  • 举报
回复
在include-1.jsp 中接收数据之前先进行中文乱码处理
<%
request.setCharacterEncoding("gbk");


//再接收数据就可以正常输出了
String tr=request.getParameter("biaoti");
out.println(tr1);

%>
wjk13828472197 2009-03-07
  • 打赏
  • 举报
回复
我有试过一些乱码处理的 可是都不行 我是在Dreamweaver上写的 网上说的一些方法都没用 3楼的也不行。
酒剑仙 2009-03-07
  • 打赏
  • 举报
回复
直接该 tomcat 下的conf的server.xml文件的
服务器端口配置
<Connector port="8080".....
加上URIEncoding="GBK" 就可以了。还是这个办法简单。
其他的方法,我个人觉得,意外性太多。。。。
luozike_110110 2009-03-07
  • 打赏
  • 举报
回复
你接收后
还得做相应的乱码处理才行
wjk13828472197 2009-03-07
  • 打赏
  • 举报
回复
String tr=request.getParameter("biaoti");
out.println(tr1);
第二句应该是是out.println(tr); 之前试过网上的一些编码转换都不行。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧