JSP Chapter 05 :Servlet
- jsp页面翻译成的java文件就是servlet
- servlet用来处理客户端发送到tomcat容器的请求,返回响应
- 对于那些完全用于控制而不会向客户端展示任何信息的jsp页面,适合直接使用servlet
第一招:使用Servlet1
1、新建一个类,继承HttpServlet
2、重写doGet
和doPost
方法,不要调用父类原实现
3、web. xml
中注册servlet
<servlet>
<servlet-name>mys</servlet-name><!--名字-->
<servlet-class>com.demo.servlet.Myservlet</servlet-class><!--位置-->
</servlet>
<servlet-mapping>
<servlet-name>mys</servlet-name>
<!--访问路径-->
<url-pattern>/my.do</url-pattern>
</servlet-mapping>
当get请求访问
my.do
时,会使用doGet()
处理;post
请求访问my.d
时,会使用doPost()
处理;使用
URl
提交doGet()
处理; Web网站提交doPost()
处理;
第二招: Servlet的生命周期
1、解析请求,创建Servlet
实例
2、初始化Servlet
,调用init()
方法
3、每次被请求,都调用一次service()
方法,根据请求类型转发到doGet()
或doPost()
4、当tomcat
停止服务后,调用destroy()
方法进行销毁
第三招:设置参数
<web-app>
<context-param><!--全局参数,所有Servlet都可用-->
<param-name>globalPar</param-name>
<param-value>Hello Servlet</param-value>
</context-param>
<servlet>
<servlet-name>myServlet</servlet-name>
<servlet-class>com.demo.servlet.Myservlet</servlet-class>
<init-param><!--仅限于在特定Servlet中使用-->
<param-name>pageSize</param-name>
<param-value>10</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>myServlet</servlet-name>
<url-pattern>/hr.do</url-pattern>
</servlet-mapping>
</web-app>
String global=this.getServletContext().getInitParameter("globalPar");//获取全局变量
String local=getInitParameter("pageDize");//获取局部参数
第四招:在Servlet
中网客户端发送js弹窗提示
//向浏览器发送相应信息,out对象:专门一个往浏览器写响应数据工具
resp.setCharacterEncoding("UTF-8");//设置数据传送到客户时的编码
resp.setContentType("text/html; charset=UTF-8");//告诉浏览器以UTF-8解析
PrintWriter out = resp.getWriter();
out.print("<script type=\"text/javascript\">");
out.print("alter(\"添加成功\")");
out.print("location.href\"list.jsp\"");
out.print("</script>");
//override(重写):子类继承父类,会把父类很多方法都继承过来。不直接用可以重写一遍即覆盖
//overload(重载):统一各类里面有有两个方法名字一样,参数不一样(参数的个数、类型、数据不一样)