小王子建站记:遇到的坑

Linux与windows有许多不同,在不同环境下会有很多问题。下面记录这些坑。

1.IDE导入eclipse项目servlet的一些方法会报错。

原因是缺少一个jar包的引用。也就是Tomact lib文件夹下的servlet-api 这个jar包。复制后放到项目的lib文件夹下,就好了。至于为什么呢?应该是eclipse下创建web工程的时候就默认会引入Java EE 5/6 Libraries库,里面已经包含了servlet有关的jar包的。而idea并没有,所以会报错。


2.问题:eclipse启动时 jsp能正常打开 idea启动时jsp变成下载

解决:第一步:在“jsp”文件上右击,选择“open with”;

第二步:选择“jsp Editor”即可用“jsp”打开方式打开。

备注:如果“open with”下没有“jsp Editor”,可以选择“other”,之后也可以找到“jsp Editor”。


3.javaweb 乱码问题

1,Jsp页面

<% @page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>

 2,JSP页面头部

3,浏览器调用servlet,页面显示乱码

servlet使用response对象输出前,先执行

1response.setContentType("text/html;charset=utf-8");3response.setCharacterEncoding("utf-8");

4,jsp或servlet中表单参数提交给对应的jsp或servlet,接收的jsp或servlet中接收到的参数中文显示乱码

在接收post提交的参数前,使用

request.setCharacterEncoding("utf-8");

设定接收参数的内容格式为utf-8编码。

5,数据库连接

设置characterencoding为UTF-8 如:

String url = "jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=UTF8";

6,使用Hibernate,所有的配置文件头部的编码格式改成UTF-8

7, URL方式传递参数(Tomcat)乱码

为了保证get/post数据都采用相同的UTF8编码,在tomecat中server.xml设置: 

 8,数据库(mysql)

输入查询语句SHOW VARIABLES LIKE 'character_set_%';查看所有的编码是否是UTF-8。如不是,使用Server Instance Config 把默认的字符集设置为utf-8或者修改/MySQL/MySQL Server 5.0/my.ini中的default-character-set=gbk

character-set-server=gbk;

重新启动mysql的服务


你可能感兴趣的:(小王子建站记:遇到的坑)