当前位置:
文档之家› JSP网站制作常见问题和解决方法
JSP网站制作常见问题和解决方法
难题:
页面之间不能正常跳转
解决方法:
将页面重定向 Servlet 与 jsp 页面的路径不是一样的
2 难度系数 小 花费时间 20min =====================================================================
问题:
从 servlet 中传递的参数不会显示,但是 jsp 页面也不会报错
总结:
原因不是很明确,可能是文件未重新配置的错误
3 =====================================================================
难题: 从页面传递参数进行页面输出时,总是出现空指针类型错误
猜想: 参数没有正常传递 页面链接错误 ✓ String method ::
难题:
从页面能正常接收中文参数,但加入到数据库中出现乱码
猜想:
Mysql 的数据字符集没有编码不是为“UTF-8”
解决办法:
上网查找设置字符集的方法,代码; SET character_set_client = utf8; SET character_set_results = utf8; SET character_set_connection = utf8;
最终解决办法:
将 mysql 数据库重现安装,安装时设置字符集为 utf-8
0 ======================================================================
难题:
不能从数据库中读取 blog_id 字段,此字段为 int 类型
解决方法:
猜想:
参数不能从 servlet 向 jsp 页面正常传递 传递到 jsp 页面的参数不能正常赋给自定义的类 参数没有数据库中正常取出 ✓ 文件未重新配置
尝试解决方法:
在 servlet 中向控制台输出从数据库中取出的任意数据,验证数据是否正常 取出
在 jsp 页面中 单独取出 Blog.getTitle() 验证是否正确 ✓ 将另外一个已经试验好的页面中相同的代码替换本页面 相同的代码 ✓ 重启 tomact 并重新部署工程
行判断
method 为空时 不能使用 method.equals("") 函数进
尝试解决方法: 在控制台输出参数,验证其是否正常传递 检查页面链接 ✓ 先判断 method 参数是否为空 再对其值进行判断
总结: 对传递的每个参数值应先作出是否为“null”的判断,再进行对其值的判断 , 不然为出现空指针错误
未解决:
不知道怎么解决 doget()方法的乱码问题
总结:
可能是新近添加的将参数重新编码的代码没起作用 5 =====================================================================
4 ===================================================================
从页面传递参数时 出现乱码 工程应该重新部署
尝试解决方法:
在控制台输出页面传递过来的参数,验证猜想 工程重新部署 tomact 重新启动
将 blog_id 字段名改为 blogid 即可
曾尝试方法:
1.ers 表的 users_id ,结果为 null,将 user_id 改为 userid
后能正确返回结果来验证猜想,此方案成功解决问题
1 难度系数 大 花费时间 一天 =====================================================================
最终结果:
Dopost 和 doget 方法处理字符编码不是一样的,当使用 dopost 方法时, request.setCharacterEncoding()方法有用。而 doget()方法无效
解决方法:
将 doget 里面的对数据库加入操作改为在 dopost()里进行,并在代码开始处添 加 request.setCharacterEncoding("UTF-8");