jsp乱码
来源:互联网 发布:水乳推荐20岁 知乎 编辑:程序博客网 时间:2024/05/20 00:38
1. 这是一个Tab文件, 负责计算 1~ 100 内的偶数之和:
<%int i, sum = 0;for(i = 0; i < 100; i++){if(i % 2 == 0){sum += i;}}out.println(sum);%>
然后保存的时候MyEclipse提醒我保存的格式我选择了utf-8
index.jsp中这么写道
<%@ page contentType="text/html; charset=UTF-8" %><%@ taglib tagdir = "/WEB-INF/tags" prefix = "beijing" %><html><head> </head><body> <h3>以下是调用Tag文件的效果:</h3><beijing:EvenSum /></body></html>
显示的时候index.jsp中文可以正常显示, 然而EvenSum中的中文就没有显示乱码了。
后来我在tag文件中加了一句
<%@ tag pageEncoding="UTF-8"%>
这样乱码就可以解决了。JSP在被访问时,需要编译成Java的bytecode才会被执行,而这个编译过程是分两步进行的。第一步是:JSP -> Java文件的转换过程,第二步是Java -> class文件的编译过程。
应该是没有写的话, tag文件在编译的时候采用的 iso-8859-1, tag文件的默认字符编码就 ISO-8859-1, 它是不支持中文的
2. 实训写相册的时候想从url localhost:8080/Photo/showPhoto.jsp?id=3&ablum=楚门的世界 ,提取ablum出现乱码。解决如下:
jsp头部是<%@ page contentType="text/html; charset=utf-8"%>
原来的写法
<% request.setCharacterEncoding("utf-8"); String ablum_name = request.getParameter("ablum_name"); byte b[] = ablum_name.getBytes("utf-8"); ablum_name = new String(b); %>基本上所有的组合都试过还是乱码,后来网上终于搜到一个答案:
写法一:
String ablum_name = request.getParameter("ablum_name"); byte b[] = ablum_name.getBytes("ISO8859-1"); ablum_name = new String(b, "utf-8");写法二:
String ablum_name = request.getParameter("ablum_name");ablum_name = new String(ablum_name.getBytes("ISO8859-1"), "utf-8");
- jsp乱码
- jsp乱码
- jsp乱码
- jsp 乱码
- jsp 乱码
- jsp乱码
- jsp乱码
- jsp乱码
- jsp乱码
- jsp 乱码
- jsp乱码
- Jsp乱码
- JSP乱码
- jsp乱码
- jsp乱码
- jsp乱码
- JSP乱码
- jsp乱码
- stl 中 容器 set 类插入,删除,遍历,其中存储的元素为基础类型 int (1)
- Square Time
- 解决用rpm安装mysql时遇到系统库没有安装的问题
- 关于HTML中的滚动条
- Ubuntu 中软件的安装、卸载以及查看的方法总结
- jsp乱码
- DBNull.Value,null,String.Empty之间的区别和联系
- 又学了一个东西
- 让VS.Net根据表结构自动生成界面和C#代码
- JNA 详细完整实例
- 【Oracle】Oracle字符串长度
- mysql分表与分区
- 杂感
- MySQL 命令行下执行.sql脚本