MVC设计模式+servlet

MVC设计模式

1.mvc

M:model,模型,一个功能

V:view,视图,用于展示、以及与用户交互,使用html、js、css、jsp、jquery等前端技术实现

C:controller,控制器:接收请求,将请求跳转到模型处理,处理完毕后,再将处理的结果返回给请求处。可以使用jsp实现,但是一般建议使用servlet实现

JSP->java(servlet)->jsp

在这里插入图片描述

2.servlet:

java类必须符合一定的规范:

1)必须继承 javax.servlet.http.HttpServlet

2)重写其中的doGet()或doPodt()方法

doGet():接收并处理所有的get请求

doPost():接收并处理所有的post请求

servlet使用必须配置:

servlet2.5:web.xml

servlet3.0:@WebServlet

  <servlet>
  	<servlet-name></servlet-name>
  	<servlet-class></servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name></servlet-name>
  	<url-pattern></url-pattern>
  </servlet-mapping>

在这里插入图片描述

servlet流程:

请求->->根据中的去匹配中的,然后寻找到,将请求交给该servlet

步骤

1)在src中新建java类,继承HttpServlet

2)重写doget和dopost方法

3)在web.xml中填写映射关系

3.servlet 3.0

servlet 3.0不需要再web.xml中进行配置,需要在servlet类中的定义之上编写注解@WebServlet(“url-pattren的值”)

匹配流程:请求地址与注释中的值进行匹配

4. 根目录

两个:WebContent、src(所有 的构建路径)

/代表:

web.xml中的/代表项目根目录:http://localhost:8080/Project

jsp中的/代表服务器根目录:http://localhost:8080/

5.servlet生命周期

5个阶段

在这里插入图片描述

加载

初始化:init():该方法会在servlet被加载并实例化之后执行

服务:service()

销毁:destroy():servlet被系统回收时

卸载

init():

1)默认第一次访问servlet时会被执行(只执行这一次)

2)可以修改为tomcat启动时自动执行

2.1)servlet 2.5:

  <servlet>
    <servlet-name>a</servlet-name>
    <servlet-class>com.yhy.servlet.WelcomServlet</servlet-class>
  	<load-on-startup>1</load-on-startup>
  </servlet>

其中“1”表示优先级

2.2)servlet 3.0

在servlet类中定义的上方添加

@WebServlet(value="/WelServlet",loadOnStartup=1)

6.servlet API

由两个软件包组成:对应于HTTP协议的软件包,对应于除了HTTP协议的软件包

1.servlet继承关系

  • servletConfig接口:

    ServletContext getServletContext();获取上下文对象 application

    String getInitParameter(String name);在当前servlet范围内,获取名为name的参数值(初始化参数)

    • ServletContext中的常见方法(application)

      getContextPath()

      getRealPath()

      setAttribute()、getAttribute()

      String getInitParameter(String name):在当前Web容器范围内,获取名为name的参数值(初始化参数)

赋值:

servlet 2.5

web.xml

...
  <!-- 在整个Web容器中设置初始化参数 -->
  <context-param>
  	<param-name>globalPara</param-name>
  	<param-value>global value..</param-value>
  </context-param>
  
  
  
  <servlet>
    <servlet-name>a</servlet-name>
    <servlet-class>com.yhy.servlet.WelcomServlet</servlet-class>
  	<init-param>
  		<param-name>servletpara</param-name>
  		<param-value>servlet para..</param-value>
  	</init-param>
  	<load-on-startup>1</load-on-startup>
  	
  </servlet>
  <servlet-mapping>
    <servlet-name>a</servlet-name>
    <url-pattern>/servlet</url-pattern>
  </servlet-mapping>
</web-app>

servlet 3.0

局部参数

@WebServlet(value="/WelServlet",loadOnStartup=1,initParams={@WebInitParam(name="servletpara",value="servlet value..")})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值