2020.08.07(javaweb)

Day 15:

1.Servlet

在这里插入图片描述

在这里插入图片描述

  • Servlet的使用三步曲:
    (1)创建一个类
    (2)在web.xml中“注册”这个实现类
    (3)Tomcat

  • 生命周期方法
    构造器
    init()方法
    service()方法
    destroy()方法

  • 执行过程
    第一次请求
    创建对象
    执行init()方法
    执行service()方法
    后面请求
    执行service()方法 …. ……
    对象销毁前
    执行destroy()方法

  • Servlet对象创建特殊情况

   <load-on-startup>1</load-on-startup>

在这里插入图片描述

Servlet 转发与重定向:
1)请求的转发
2)请求的重定向

Servlet 常见问题:
1)HttpServlet cannot be resolved to a type
在工程中,Servlet显示:HttpServlet cannot be resolved to a type。
原因:Eclipse中使用的HttpServlet类之所以识别不到的原因是没有导入Servlet-api.jar包

解决方案一:
1-右键项目名称,进入properties进行配置
2-点击左边菜单里面的targeted Runtimes就可以看到tomcat没有进行勾选,这就是出现这个情况的根本原因。
3-勾选上tomcat,然后点击apply应用,然后点击OK
解决方案二
在需要导入的工程上右键进入properties,选择Java build path ,library选项卡中add external jars,选择你所安装tomcat目录下lib文件中的Servlet-api.jar包即可。

2)Web应用中的字符乱码问题:
①请求
[1]GET请求
(1)由于GET请求的请求参数是附着在URL地址后面的,所以需要通过在服务器端指定URL地址的解码字符集解决。方法:在Tomcat解压目录/conf目录/server.xml中,找到第一个connector标签,加入URIEncoding=“UTF-8”
[2]POST请求
由于POST请求的请求参数是在请求体中,所以需要在request对象获取请求参数之前,设置解码字符集:request.setCharacterEncoding(“UTF-8”);
②响应
指定响应数据的编码字符集,然后告诉浏览器使用什么字符集进行解码。
实现方式:response.setContentType(“text/html;charset=UTF-8”);
注意:不要在获取PrintWriter对象后再设置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值