今天有点兴趣研究下jsp,主要是想把原来在内网中测试的一些代码由asp转换为jsp环境。看了点资料就开始动手了。
1、将页首加入代码:
“<%@ page contentType="text/html;charset=utf-8" %>”
然后将数据类型就行重新定义:
将原来的语句
Dim ID,KindID,Name
转换为对应类型:
int ID,KindID;
String Name,IDText,KindIDTEXT,Kind;
然后将原来的取得Form中传回值的语句:
ID = Request.QueryString("id")
KindID= Request.QueryString("KindID")
转换为新的语句:
IDText= request.getParameter("id");
KindIDTEXT= request.getParameter("KindID");
然后要将ID转换为合适的类型:
ID=Integer.parseInt(IDText);
KindID=Integer.parseInt(KindIDText);
然后将对应的语句也要就行处理:
switch(KindID)
{
case 0:Kind="无效类别--";break;
case 1:Kind="类别1--";break;
case 2:Kind="类别2--";break;
default:Kind="无效类别--";break;
}
最后是对应的输出也要转换,原来是:
<%=ID%>
转换后为:
<%
out.print(ID);
out.print(Kind);
%>
终于能正常运行了,但是又发现了新问题,出现了乱码。
还有要注意,jsp对代码大小写实在是太敏感了,我原来一个文件命名不太规范用了大写.WMV,结果死活找不到文件,最后再将文件改名为小写,才解决了问题。
关于中文路径及中文编码问题,在网上找了好久终于找到方法了,将tomcat服务器配置server.xml文件内容加入如下内容:
<Connector port="80" redirectPort="8443" URIEncoding="utf-8" useBodyEncodingForURI="true" />
然后在所有需要编码的地方全部使用utf-8编码后,一般就能解决问题了。
如:
在须接收参数的文件中加入:
request.setCharacterEncoding("UTF-8");
在代码的<head>部分加入
<meta http-equiv="Content-Type" contect="text/html" charset="UTF-8">
我是解决了问题,哎,正在解决其他问题,下次说吧。