HTML+CSS

XML

  • 标签需要闭合
  • 双标签语法
  • 单标签语法
  • 标签属性
  • 原样显示语法:<![CDATA[<<<<hello>]]>
  • XML解析技术

    • jdom

      • 在DOM基础上进行封装
    • dom4j

      • 仅对jdom进行封装
    • pull

      • 用于Android

Tomcat

  • 安装

  • 启动

    • Windows

      • 双击bin目录下的startup.bat
      • cmd输入:catalina run
    • Mac

      • sudo chmod a+x tomcat/bin/*.sh
      • sudo tomcat/bin/startup.sh
  • 验证启动

  • 配置

    • conf/server.xml
  • 部署

    • 方式一

      • 直接将工程拷贝到webapps目录下
    • 方式二

      • 在conf/Catalina/localhost下新建一个XXX.xml文件
      • 文件内容:<Context path="/abc" docBasc="D:book" />
      • path:表示访问路径
      • docBasc:表示工程目录
  • idea整合Tomcat

    • File | Settings | Build, Execution, Deployment | Application Servers
  • idea创建动态web工程

    • 右击工程目录 -> new -> Module -> Java Enterprise
    • Application Server : Tomcat 8.5.*
    • 勾选:Web Application
    • Next
  • idea修改web工程运行实例

    • Run | Edit Configurations | Tomcat Server | ......

      • 重命名
      • 更改Tomcat版本
      • 更改浏览器
      • 设置热部署
      • 改端口号
      • 改访问路径

Servlet

  • 概念

    • 是JavaEE规范之一,规范就是接口
    • 是JavaWeb三大组件之一,Servlet、Filter、Listener
    • 是运行在服务器上的一个小程序,负责处理请求和响应
  • 简单使用

    • 新建类:src/HelloServlet001.java使之implements Servlet
    • 之后所有访问入口都是service()方法
    • web.xml配置

      <web-app>
      <servlet>
          <servlet-name>HelloServlet001</servlet-name>
          <servlet-class>HelloServlet001</servlet-class>
      </servlet>
      <servlet-mapping>
          <servlet-name>HelloServlet001</servlet-name>
          <url-pattern>/HelloServlet001</url-pattern>
      </servlet-mapping>
      </web-app>
  • 手动HttpServlet

    • 新建类,让它继承HttpServlet类,并重写里边的doGet()、doPost()方法等
  • idea自动创建HttpServlet

    • 右击->new->Create New Servlet
    • 取消勾选“Create Java EE 6...”
  • ServletConfig类的使用

    • 在init()方法中可以通过ServletConfig类来获取init-param自定义参数等
  • ServletContext类的使用

    • 概念

      • 是一个接口,表示Servlet上下文对象
      • 是一个web工程,只有一个ServletContext对象实例
      • ServletContext对象是一个域对象
      • ServletContext在web工程启动时创建,停止时销毁
    • 作用

      • 获取context-param
      • 获取当前工程路径
      • 获取工程部署后服务器绝对路径
      • 像map一样存取数据
  • 请求转发

    • 注:只能工程内部请求转发
    • 核心代码

      RequestDispather rd = seq.getRequestDispatcher();
      rd.forward(req, resp);

书城项目

  • base标签的作用

    • 声明当前页面运行时参照地址
    • 声明在head标签中
  • 请求重定向

    • 设置响应码
    • 设置location
    • 注:不能重定向WEB-INF目录,但可以重定向工程外部链接

JSP

  • JSP中九大内置对象

    • request(请求对象)
    • response(相应对象)
    • pageContext(上下文对象)
    • session(会话对象)
    • application(ServletContext对象)
    • config(ServletConfig对象)
    • out(jsp输出流对象)
    • page(指向当前jsp的对象)
    • exception(异常对象)
  • JSP中四大域对象

    • pageContext(PageContextImpl类)

      • 当前页面有效
    • request(HttpServletRequest类)

      • 一次请求内有效
    • session(HttpSession类)

      • 一次会话范围内有效(关闭浏览器失效)
    • application(SevletContext类)

      • web工程范围内有效(重启服务失效)

监听器Listener

  • ServletContextListener监听器

    • 编写一个类实现ServletContextListener接口
    • 实现其两个回调方法

      • contextInitialized()
      • contextDestroyed()
    • 到web.xml中配置监听器

      <listener>
      <listener-class></listener-class>
      </listener>

EL表达式

  • 语法

    • ${key}
  • 优先级

    • 当四个域对象中存在相同的key,会按照域对象从小到大顺序读取
    • pageContext > request > session > application
  • 获取四个特定域中的属性

    • pageScope
    • requestScope
    • sessionScope
    • applicationScope

JSTL标签库

  • <c:
  • <fmt:
  • <fn:

文件上传下载

  • 使用三方jar包

cookie

session

filter过滤器

  • 作用

    • 拦截请求
    • 过滤响应
  • 场景

    • 权限验证
    • 日志存贮
    • 事务
  • 使用

    • 定义类并实现Filter接口
    • 定义好web.xml
  • 注意

    • FilterChain过滤器链使用时,会按照web.xml中定义的顺序执行,但是每个Filter都要定义doFilter()方法,否则如果某个Filter中未定义doFilter()方法,后边所有的Filter都不会执行
  • ThreadLocal

    • 作用

      • 可以为当前线程关联一个数据,解决多线程数据安全问题
    • 特点

      • 像map一样存储数据,key为当前线程
      • 每个ThreadLocal对象只能存一个数据,可以定义多个
      • 一般都是static的
      • 线程销毁后,JVM自动释放

JSON

AJAX

i18n


标签: JavaWeb, Java

添加新评论


手机号仅后台超管可见,普通注册用户以及网站前台全站不可见,请勿担心泄露风险!