HTML+CSS

XML

  • 标签需要闭合
  • 双标签语法
  • 单标签语法
  • 标签属性
  • 原样显示语法:<![CDATA[<<<<hello>]]>
  • XML解析技术
  • jdom
  • 在DOM基础上进行封装
  • dom4j
  • 仅对jdom进行封装
  • pull
  • 用于Android

Tomcat

  • 安装
  • 下载地址:https://tomcat.apache.org/download-80.cgi
  • 安装:绿色版,解压即可用
  • 注:Windows下需要手动配置好JAVA_HOME
  • 启动
  • Windows
  • 双击bin目录下的startup.bat
  • cmd输入:catalina run
  • Mac
  • sudo chmod a+x tomcat/bin/*.sh
  • sudo tomcat/bin/startup.sh
  • 验证启动
  • 浏览器访问:http://localhost:8080
  • 配置
  • conf/server.xml
  • 部署
  • 方式一
  • 直接将工程拷贝到webapps目录下
  • 方式二
  • 在conf/Catalina/localhost下新建一个XXX.xml文件
  • 文件内容:
  • 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