JavaEE基础之web入门与servlet入门

  • 基本概念及Web应用入门

    • C/S、B/S、RIA
      • C/S:例如桌面应用程序等
      • B/S:特点:浏览器与系统交互
    • Web站点、Web应用、Http服务器、Web应用服务器
      • Web站点:静态,例如公司宣传官网,不提供服务,主要用于展示。
      • Web应用:动态,例如浏览器访问的应用程序,提供服务,查询、购物、生成报表等。
      • Http服务器软件:运行静态网站,将静态页面发布为web站点例Apache、nginx
      • Web应用服务器:运行动态网站,例Tomcat、Jettry、Jboss、Glassfish、WebSphere
        • 常见服务器盘点
    • Web应用的核心技术或Java EE 主要的组件
      • Servlet :响应用户请求,提供web服务
      • JSP:本质为Servlet,动态生成页面
      • EL:表达式语言,用于JSP上取值
      • JSTL: 用于JSP上执行命令,如循环、判断、格式化等
      • Filter:过滤器,横向过滤请求(即实现多个请求共通功能,比如我需要在之前做些功能)
      • Listener:监听器,监听JavaEE系统事件
      • Cookie:一段保存在客户端的小文本,每次随请求自动提交。弥补HTTP无状态缺陷
      • Session:Servlet提供在服务端保持用户会话的机制
    • Tomcat介绍及安装
      • 下载地址 解压 运行
      • 配置
        • 首先应先确定JAVA_HOME环境变量配置成功、目录为JDK安装目录
        • 执行startup命令
        • 打开浏览器访问localhost:8080查看到tomcat界面即为成功
      • IDE中进行配置–配置服务器
    • 其他Servlet容器简介
      • JBoss:支持JavaEE标准,Servlet容器只是其中一部分
      • Resin:性能比较优良
      • GlassFish:支持JavaEE标准,开源免费,Servlet只是其中一部分
    • Servlet概念及功能
      • JavaEE中的web开发组件
      • 运行在服务端,需要Servlet容器的支持,例如Tomcat
      • 实现:继承javax.servlet.http.HttpServlet类
  • javaEE的环境搭建(第一个Web应用)

    • IDE创建一个Web应用 :

      • 创建Dynamic Web Project项目
    • 第一个Servlet及其配置 :

      • src创建class继承HttpServlet且重写doGet和doPost方法,并编写处理代码

      • 配置Servlet------备注,以后都分xml以及注解配置方式。

        • xml配置Servlet-----web.xml中

          • 项目右击,选择javaee-tool-》生成部署描述符web deployment descriptor stub(生成了web.xml)
          • 配置指定 全类名和servler名
          • 配置指定url
           <!-- Servlet的在web.xml配置 -->
            <servlet>
            	<servlet-name>hello</servlet-name>
              <servlet-class>com.chinasofti.ee.serveletdemo.HelloServlet</servlet-class>
            </servlet>
            <servlet-mapping>
            	<servlet-name>hello</servlet-name>
            	<url-pattern>/hhh</url-pattern>
            </servlet-mapping>
          
          • 点击run as ->run on server
          • 访问,查看网页是否正常运行
        • 配置servlet 注解方式 3.0+

          • 不需要web.xml
          • @WebServlet("\映射名")
      • 启动参数 :init-param

      1.xml配置-启动参数
      位置:<servlet><servlet>
        	<servlet-name>hello</servlet-name>
          <servlet-class>com.chinasofti.ee.serveletdemo.HelloServlet</servlet-class>
          <!--启动参数-->
          <init-param>
            <param-name>close</param-name>
            <param-value>21</param-value>
       </init-param>
        </servlet>
      访问方式:servlet中
      String open=getInitParameter("close");//得到参数值
      2.注解配置-启动参数
      @WebServlet()中进行注解配置---也就是说该注解完全替代了web.xml的功能
      
      • url-pattern 可以使用通配符
    • Servlet实例化

      • 线程特性:servlet实例化一次,多线程执行

      • servlet实例化时间:

        • 默认情况下,接受到请求时进行实例化

        • 可以在web.xml中配置load-on-startup选项,则在容器启动时启动,数字越小越优先初始化

          <!--较为完整的servlet配置-xml-->
          <servlet>
              <servlet-name>hello</servlet-name>
              <servlet-class>com.chinasofti.ee.serveletdemo.HelloServlet</servlet-class>
              <!-- 启动参数 -->
              <init-param>
              	<param-name>open</param-name>
              	<param-value>9</param-value>
              </init-param>
              <init-param>
              	<param-name>close</param-name>
              	<param-value>21</param-value>
              </init-param>
             <!-- 启动时加载 -->
              <load-on-startup>1</load-on-startup>
            </servlet>
            <servlet-mapping>
              <servlet-name>hello</servlet-name>
              <url-pattern>/hhh</url-pattern>
            </servlet-mapping>
          
    • Servlet继承体系

      • 补充:继承HttpServlet-》GenericServlet实现Servlet接口、ServletConfig接口的体系
      • HttpServlet 对应的请求方法的处理方法
      • GenericServlet 通用的Servlet
      • Servlet[接口] 定义了一个servlet应该有的规范—这些应该由Servlet容器提供信息,我们只需要调用
        • init 初始化
        • service 提供服务
        • destory 销毁
        • getServletConfig 得到Servlet配置信息
        • getServletInfo 得到Servlet信息
      • ServletConfig[接口]
        • getInitParameter(String ) 获取启动参数
        • getInitParameterNames() 获取启动参数名字
        • getServletName()
        • getServletContext() 获取上下文 这里的上下文是什么?
    • Servlet生命周期

      • 调用 构造器 1次
      • 调用 init方法 1次
      • 调用 service 方法 多次
      • 调用 destory方法 1次
    • 请求方法:

      • GET:从服务器获取信息
        • 哪些是GET请求
          • 地址栏输入
          • a标签跳转
      • POST:向服务器发送信息
        • 哪些是POST请求
          • form表单提交
      • 其他:PUT、DELETE、TRACE、HEAD—携带一定的语义
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值