Servlet

1.Servlet概念
Servlet 运行在服务器端的Java程序,客户端能够通过设定的URL路径访问到这处Servlet。

Jsp页面其实也是一个Servlet。Servlet 能够接收到客户端的请求,并可以对请求做出处理,再响应给客户端。

Servlet 在第一次访问时才创建对象,对象创建后就一直存在于Tomcat服务器端的Serlvet容器中,不会销毁,一直要等到Web程序关闭或Tomcat服务器关闭,才销毁。第二次访问时,直接从Servlet容器中取对象使用。所以, Serlvet对象是一个单例模式。

init()方法是一个初始化方法,在Servlet对象创建时自动执行,可以在配置Servlet时,给一个参数值,在init()方法可以取到这些参数值。
Service()方法,是Servlet接收到请求后处理的方法,有多个方法,常用的是doGet和doPost这两个方法,doGet方法处理get方式的请求doPost处理post方式的请求。
destory() 方法是在Servlet销毁时才执行的方法。

2.servlet配置
Servlet 在3.0版本后支持了注解配置,早期只能在web.xml中进行配置。
xml配置

 <!-- 配置Servlet -->
  <servlet>
    <!-- 逻辑名称 -->
    <servlet-name>studentServlet</servlet-name>
    <!-- Servlet类的全限定名 -->
    <servlet-class>com.icss.servlet.StudentServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <!-- 逻辑名称 -->
    <servlet-name>studentServlet</servlet-name>
    <!-- 访问Serlvet的映射的URL路径 -->
    <url-pattern>/student</url-pattern>
    <url-pattern>/stu</url-pattern>
  </servlet-mapping>

或者:注解配置,在Servlet类前加入

@WebServlet(urlPatterns={ "/student", "/stu" })
@WebServlet(value={ "/student", "/stu" })

3.Servlet的生命周期的相关方法

  public class StudentServlet extends HttpServlet {
    	private static final long serialVersionUID = 1L;
    
    	public void init(ServletConfig config) throws ServletException {
    		System.out.println("Servlet   Init方法执行...");
    	}
        public StudentServlet() {
        	System.out.println("Servlet 对象被创建...");
        } 
    	public void destroy() {
    		System.out.println("Servlet 被销毁");
    	} 
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) 
    			throws ServletException, IOException {
    		System.out.println("doGet方法被执行..");
    	}
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) 
    			throws ServletException, IOException {
    		System.out.println("doPost方法被执行..");		
    	}
    }

执行结果:
在这里插入图片描述
4.Servlet API
在这里插入图片描述
在这里插入图片描述
request 请求是客户端发送到服务端,请求中包含了客户端所有的信息:
表单数据,URL路径,URL参数,SessionID,IP,浏览器相关信息…

System.out.println(request.getContextPath()); //项目在服务器的路径
System.out.println(request.getRealPath("/login.jsp")); //取文件在服务器的绝对路径

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值