Ajax AJAX (Asynchronous JavaScript And XML),其含义为异步的 JavaScript 和 XML。其中 JavaScript 表明该技术和前端相关;XML 是指以此进行数据交换。 AJAX 作用有以下两方面: 与服务器进行数据交换:通过AJAX可以给服务器发送请求,服务器将数据直接响应回给浏览器。 异步交互:可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术,如:搜索联想、用户名是否可用校验等等。 同步:浏览器页面在发送请求给服务器,在服务器处理请求的过程中,浏览器页面不能做其他的操作。只能等到服务器响应结束后,浏览器页面才能继续做其他的操作。 异步:浏览器页面发送请求给...

Filter 概述 Filter 表示过滤器,是 JavaWeb 三大组件(Servlet、Filter、Listener)之一。 过滤器可以把对资源的请求拦截下来,从而实现一些特殊的功能。设置 Filter 会在访问资源之前会先经过 Filter,将资源拦截,从而实现权限控制、统一编码处理、敏感字符处理等功能。 过滤器Filter是在请求进入容器后,但在进入Servlet之前进行预处理。 进行 Filter 开发分成以下三步实现: 定义类,实现 Filter接口,并重写其所有方法: 1package filter; 2 3import javax.servlet.*; 4import...

会话跟踪技术 会话是指一个终端用户与交互系统进行通讯的过程,例如从浏览器发出请求到服务端响应数据给前端这个过程即为一个会话。 会话跟踪指的是一种维护浏览器状态的方法。服务器会收到多个请求,这多个请求可能来自多个浏览器。服务器需要识别多次请求是否来自于同一浏览器,以便在同一次会话的多次请求间共享数据。 浏览器和服务器不支持数据共享的原因: HTTP协议是无状态的,每次浏览器向服务器请求时,服务器都会将该请求视为新的请求。 HTTP协议设计成无状态的目的是让每次请求之间相互独立,互不影响。 请求与请求之间独立后,就无法实现多次请求之间的数据共享。 实现会话跟踪技术的方式有: 客户端会话跟踪技术:Cookie。 Cookie是存储在浏览...

HttpServlet 简介 HttpServlet是对HTTP协议封装的Servlet实现类。 Servlet的体系结构: 在开发中,关注更多的是Servlet.service()方法。而每实现一个Servlet就必须实现Servlet接口,重写接口中的5个方法。 但其实可以通过继承HttpServlet来编写Servlet,简化Servlet的开发流程。并且,如果是开发B/S架构的Web项目,针对的都是HTTP协议。 使用HttpServlet的格式如下: 1package com.linner.web; 2 3import javax.servlet.ServletException; 4import...

Servlet 简介 Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。 Servlet 基本使用 创建Maven Web项目后,导入Servlet依赖坐标和Tomcat插件: 1<dependencies> 2 <!-- Servlet依赖 --> 3 <dependency> 4 <groupId>javax.servlet</groupId> 5 <artifactId>javax.servlet-api</artifactId> 6 <version>3.1.0</version> 7...

Tomcat基本使用 Tomcat安装 访问Tomcat官网下载。Tomcat是绿色版,直接解压即可。 启动Tomcat 以Windows系统为例,运行Tomcat目录下 bin\startup.bat 启动脚本即可完成启动。 启动后,通过浏览器访问 http://localhost:8080能看到Apache Tomcat的内容就说明Tomcat已经启动成功。 Windows系统下启动的过程中,如果控制台有中文乱码,需要修改conf/logging.prooperties。 将 1java.util.logging.ConsoleHandler.encoding = UTF-8 修改为...

MyBatis 介绍 MyBatis 是一款优秀的持久层框架,用于简化 JDBC 开发。 持久层: 是负责将数据到保存到数据库的那一层代码。即,操作数据库的Java代码为持久层。 而Mybatis就是对JDBC代码进行了封装。 持久层是JavaEE三层架构中的一层。 JavaEE三层架构:表现层、业务层、持久层。 框架: 框架就是一个半成品软件,是一套可重用的、通用的、软件基础代码模型。 使用框架的好处:在框架的基础之上构建软件编写更加高效、规范、通用、可扩展。 使用JDBC存在以下问题: 硬编码 手动注册驱动、获取连接、SQL语句等。 操作繁琐 手动设置参数、封装结果集等。 使用Mybatis: 硬编码可以配置到配置文件。 操作...

数据库连接池 数据库连接池是个容器, 负责分配, 管理数据库连接 (Connection). 数据库连接池允许应用程序重复使用一个现有的数据库连接, 而不是再重新建立一个. 从而减少资源浪费. 数据库连接池会自动释放超过最大空闲时间的数据库连接 (强制释放), 来避免因为没有释放数据库连接而引起的数据库连接遗漏. 使用数据库连接池的好处: 资源可以重用 提升系统响应速度 避免数据库连接遗漏 在通常情况下使用JDBC, 有可能会反复地创建和销毁 Connection对象. 这样重复创建销毁的过程特别耗费计算机的性能和时间. 而数据库使用了数据库连接池后,就能达到Connection对象的复用. 连接池是在一开始就创建好了一些连接...

Maven 简介 Apache Maven是专门用于管理和构建Java项目的工具, 它基于项目对象模型 (POM) 的概念, 通过一小段描述信息来管理项目的构建, 报告和文档. Maven的主要功能有: 提供了一套标准化的项目结构. 提供了一套标准化的构建流程 (编译, 测试, 打包, 发布…). 提供了一套依赖管理机制. Maven 模型 Maven模型包含: 项目对象模型 (Project Object Model) 依赖管理模型 (Dependency) 插件 (Plugin) Maven模型图示: 其中紫色框框起来的部分, 就是用来完成标准化构建流程. 仓库 Maven仓库是项目中依赖的第三方库, 这个库所在的位置叫做仓库...

JDBC 简介 JDBC (Java DataBase Connectivity, Java 数据库连接) 是使用Java语言操作关系型数据库的一套 API. JDBC其实是SUN公司制订的一套操作数据库的标准接口. JDBC中定义了所有操作关系型数据库的规则. 由各自的数据库厂商给出实现类 (驱动jar包). Java, JDBC和各种数据库的关系如下图: 使用JDBC的好处: 不需要针对不同数据库分别开发. 可随时替换底层数据库, 访问数据库的Java代码基本不变. JDBC 使用的基本步骤 导入JDBC驱动jar包: 下载MySQL jar驱动包, 菜鸟教程 Java MySQL 连接。 在项目中, 将下载好的jar包放入项...