08 2022 档案
摘要:文件列表 ls [参数] 目录路径 ls:查看当前文件夹的文件 蓝色为文件夹 白色为文件 ls #表示查看当前目录下的文件ls -l #表示查看当前目录下的详细信息(ll命令:和这个命令功能相同,但是不是所有的linux上都默认安装)ls -a #表示查看当前目录下的所有文件(包含隐藏文件)ls -
阅读全文
摘要:Linux概述 1.学习Linux之前先了解Unix: Unix是一个强大的多用户、多任务操作系统。于1969年在AT&T的贝尔实验室开发。 UNIX的商标权由国际开放标准组织(The Open Group)所拥有。UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵
阅读全文
摘要:点击按钮收藏收藏 分析: 后台代码 FavoriteDao接口中添加方法 /** * 添加收藏 * @param parseInt * @param uid */ void add(int parseInt, int uid); 在这个实现类中实现 FavoriteDaoImpl: @Overrid
阅读全文
摘要:旅游线路收藏_判断是否收藏 当页面加载完成后,发送ajax请求,获取用户是否收藏的标记 根据标记,展示不同的按钮样式 分析: 后台代码 创建 FavoriteDao 接口 public interface FavoriteDao { /** * 根据rid和uid查询收藏信息 * @param ri
阅读全文
摘要:旅游线路详情 分析: 后台代码 RouteServlet:编写一个findOne方法 /** * 根据id查询一个旅游线路的详细详细 * @param request * @param response * @throws ServletException * @throws IOException
阅读全文
摘要:参数传递 header.html:(注意导入js/getParameter.js文件) <!-- 头部 start --> <script src="js/getParameter.js"></script> <script>//给搜索按钮绑定单击事件,获取搜索输入框的内容 $("#search-b
阅读全文
摘要:旅游线路分页展示 类别id传递 header.html:中拿到cid //遍历数组 for (var i = 0; i <data.length; i++) { var li = '<li><a href="route_list.html?cid='+data[i].cid+'">'+data[i]
阅读全文
摘要:分类数据展示功能 分析: 代码实现:后台代码: CategoryDao: public interface CategoryDao { /** * 查询所有 * @return */ public List<Category> findAll(); } CategoryDaoImpl: public
阅读全文
摘要:BaseServlet抽取 减少Servlet的数量,现在是一个功能一个Servlet,将其优化为一个模块一个Servlet, 相当于在数据库中一张表对应一个Servlet,在Servlet中提供不同的方法,完成用户的请求。 BaseServlet: public class BaseServlet
阅读全文
摘要:登录功能 分析: Servlet层: @WebServlet("/loginServlet") public class LoginServlet extends HttpServlet { protected void doPost(HttpServletRequest request, Http
阅读全文
摘要:邮件激活: 为什么要进行邮件激活?为了保证用户填写的邮箱是正确的。将来可以推广一些宣传信息,到用户邮箱中。 发送邮件 需要开启授权码:打开qq邮箱-->设置-->账户 往下找找打这个点击开启 或 点击生成授权码:发送个信息即可开启就会有个授权码给你(或者qq密码也可以) 打开MailUtils工具类
阅读全文
摘要:Servlet代码实现 UserDao: public interface UserDao { /** * 根据用户名查询用户信息 * @param username * @return */ public User findByUsername(String username); /** * 用户
阅读全文
摘要:分析: 代码实现 1.前台效果 1.表单校验 2.异步(ajax)提交表单 表单校验: 1.用户名:单词字符,长度8到20位 2.密码:单词字符,长度8到20位 3.email:邮件格式 4.姓名:非空 5.手机号:手机号格式 6.出生日期:非空 7.验证码:非空 register.html: 在表
阅读全文
摘要:使用骨架创建Maven的web工程 操作一样把勾进行勾选找到webapp选项 下一步创建就行 创建好会有显示 目录结构其余的都需要自己手动补齐 有小蓝点的才是一个web项目, 如果上面都正确的话没有小蓝点 在你pom.xml右上角有一个刷新点一下应该就会出现(或等待一会) 把其余两个进行补齐: ma
阅读全文
摘要:项目导入: 初始的项目: 链接:https://pan.baidu.com/s/1Fd-6zx4KaX-F7M5IhCWlEw 提取码:btan 把给定的初始项目导入即可 项目启动: 运行:就出来一个地址,复制到网页进行访问 访问成功: 技术选型: Web层: Servlet:前端控制器 html:
阅读全文
摘要:运行环境修改 可以加上这个进行定义,你tomcat运行的端口 <build> <plugins> <plugin> <!-- https://mvnrepository.com/artifact/org.apache.tomcat.maven/tomcat7-maven-plugin --> <gr
阅读全文
摘要:导入项目依赖的jar包 @WebServlet("/MyServlet") public class MyServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletRespon
阅读全文
摘要:使用骨架创建Maven的java工程 new-->FIle-->Model 选择Maven对勾选上要不不能使用骨架 找到这个,选上下一步 Finish即可创建 不使用骨架创建Maven的java工程 和上述操作一样,不勾选那个对勾直接往下就行 创建出来的比较干净 搜索 复制
阅读全文
摘要:Maven概念模型图 idea集成Maven 在IDEA外部点击设置 进行配置 -DarchetypeCatalog=internal 搜索 复制
阅读全文
摘要:Maven常用命令 常用命令为 : mvn archetype:create :创建 Maven 项目 mvn compile :编译源代码 mvn test-compile :编译测试代码 mvn test : 运行应用程序中的单元测试 mvn site : 生成项目相关信息的网站 mvn cle
阅读全文
摘要:仓库的种类和彼此关系 仓库分为三类:本地仓库,远程仓库,中央仓库 三类仓库直间的关系:在默认情况下启动一个Maven工程会从本地仓库找jar包,如果本地没有在连网状态下会从中央仓库下载jar包在公司中启动一个Maven工程会从本地仓库找jar包,本地没有会去远程仓库下jar包,如果远程仓库也没有他可
阅读全文
摘要:maven一键构造概念 我们的项目,往往都要经历编译、测试、运行、打包、安装,部署等一系列过程。 什么是构建? 项目从编译、测试、运行、打包、安装,部署整个过程都交给maven进行管理,这个过程称为构建。 一键构建 指的是整个构建过程,使用maven一个命令可以轻松完成整个工作。 Maven规范构建
阅读全文
摘要:maven概述 什么是Maven Apache Maven是一个软件工程管理和整合工具。 Maven是一个采用纯Java编写(跨平台)的开源项目管理工具,Maven采用了一种被称之为对象模型(POM:Project Object Mode)的概念来管理项目, 所有的项目配置信息都被定义在一个叫做po
阅读全文
摘要:Jedis操作hash /** * hash */ @Test public void test3(){ //1.获取连接 Jedis jedis = new Jedis();//如果使用空参构造,默认值"localhost",6379端口 //存储hash jedis.hset("user","n
阅读全文
摘要:Jedis查询数据库案例 分析: 环境搭建: sql: CREATE TABLE province( -- 创建表 id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) NOT NULL ); -- 插入数据 INSERT INTO province
阅读全文
摘要:Jedis操作set&sortedset set: /** * set */ @Test public void test5(){ //1.获取连接 Jedis jedis = new Jedis();//如果使用空参构造,默认值"localhost",6379端口 //set存储 jedis.sa
阅读全文
摘要:Jedis快速入门 Jedis:是一款java操作redis数据库的工具 使用步骤: 1.下载Jedis的jar包 2.使用 这两个jar包导入项目中 编写一个测试类 JedisTest: /** * Jedis的测试类 */ public class JedisTest { /** * 快速入门
阅读全文
摘要:redis是一个内存数据库,当redis服务器重启,获电脑重启,数据会丢失, 我们可以将redis内存中的数据持久化保存到硬盘的文件中 redis持久化机制: RDB:默认方式,不需要进行配置,默认就使用这种机制 在一定的间隔时间中,检测key的变化情况,然后持久化数据 #after 900 sec
阅读全文
摘要:redis命令操作list&set&sortedset 列表类型 list:可以添加一个元素到列表的头部(左边)或者尾部(右边) 1.添加: lpush key value :将元素加入列表左边 rpush key value :将元素加入列表右边 2.获取: lrange key start en
阅读全文
摘要:redis数据结构介绍 redis的数据结构: redis存储的是:key,value格式的数据,其中key都是字符串,value有5种不同的数据结构 value的数据结构: 1、字符串类型 string 2、哈希类型 hash:map格式 3、列表类型 list:linkedlist格式 4、集合
阅读全文
摘要:redis概述 1.概念:redis是一款高性能的NOSQL系列的非关系型数据库 1.1.什么是NOSQL NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。 随着互联网web2.0网站的兴起,传统的关系数据库在应付web2
阅读全文
摘要:校验用户名是否存在案例 1.服务器响应的数据,在客户端使用时,要想当做json数据格式使用 1.$.get(type):将最后一个参数type指定为"json" 2.在服务器端设置MIME类型 response.setContentType("application/json;charset=utf
阅读全文
摘要:JSON解析器的Jackson_java对象转json_List&Map 复杂java对象转换 1.list:数组 @Test public void test3() throws Exception { //创建Person对象 Person p = new Person(); p.setName
阅读全文
摘要:JSON解析器Jackson_java对象转json JSON数据和Java对象的相互转换 JSON解析器: 常见的解析器:Jsonlib,Gson,fastjson,jackson 1.JSON转为Java对象 在后博客中【进行跳转】 2.Java对象转为JSON 1.使用步骤: 1.导入jack
阅读全文
摘要:JSON概念 概念: JavaScript Object Notation JavaScript 对象标记法 var p = {"name":"张三","age":23,"gender":"男"}; json现在多用于存储和交换文本信息的语法 进行数据的传输 JSON比XML更小、更快、更易解析。
阅读全文
摘要:AJAX实现JQuery实现方式ajax() 语法$.ajax(url,[settings]) 记着导入jquery <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>1-原生js实现ajax</title>
阅读全文
摘要:AJAX概念 概念:ASynchronous JavaScript And XML 异步的JavaScript 和 XML 1.异步和同步:客户端和服务器端相互通信的基础上 同步:客户端必须等待服务器端的响应。在等待的期间客户端不能做其他操作。 异步:客户端不需要等待服务器端的响应。在服务器处理请求
阅读全文
摘要:JQuery插件机制 插件:增强JQuery的功能 1. 实现方式: 1. $.fn.extend(object) (对象) 增强通过JQuery获取的对象的功能 $("#id") 2. $.extend(object) (全局) 增强JQeury对象自身的功能 $/jQuery JQuery对象进
阅读全文
摘要:JQuery广告显示和隐藏案例 需求: 1.当页面加载完,3秒后。自动显示广告 2.广告显示5秒后,自动消失。 分析: 1.使用定时器来完成。setTimeout (执行一次定时器) 2.分析发现JQuery的显示和隐藏动画效果其实就是控制display 3.使用 show/hide 方法来完成广告
阅读全文
摘要:JQuery事件绑定标准方式 JQuery对象.事件方法(回调函数); 注:如果调用事件方法,不传递回调函数,则会触发浏览器默认行为。 表单对象.submit();//让表单提交 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>
阅读全文
摘要:JQuery遍历 1.js的遍历方式 for(初始化值;循环结束条件;步长) 2.JQuery的遍历方式 1.JQuery对象.each(callback) 2.$.each(object,[callback]) 3.for..of : jquery 3.0 版本之后提供的方式 Js遍历for循环
阅读全文
摘要:JQuery动画 1. 三种方式显示和隐藏元素 1. 默认显示和隐藏方式 1. show([speed,[easing],[fn]]) 1. 参数: 1. speed:动画的速度。三个预定义的值("slow","normal", "fast")或表示动画时长的毫秒数值(如:1000) 2. easi
阅读全文
摘要:JQuery案例qq表情选择 点击qq表情,将其追加到发言框中 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>QQ表情选择</title> <script src="../../js/jquery-3.3.1.min.js
阅读全文
摘要:JQuery案例隔行换色 需求:将数据行的奇数行背景色设置为 pink,偶数行背景色设置为 yellow <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script src="../../js/jquery
阅读全文
摘要:JQuery_DOM操作的CRUD操作 1. append():父元素将子元素追加到末尾 *对象1.append(对象2): 将对象2添加到对象1元素内部,并且在末尾 2. prepend():父元素将子元素追加到开头 对象1.prepend(对象2):将对象2添加到对象1元素内部,并且在开头 3.
阅读全文
摘要:JQuery_DOM通用属性操作 1.attr(): 获取/设置元素的属性 2.removeAttr() :删除属性 3.prop():获取/设置元素的属性 4.removeProp():删除属性 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transi
阅读全文
摘要:JQuery表单过滤选择器 1. 可用元素选择器 语法: :enabled 获得可用元素 2. 不可用元素选择器 语法: :disabled 获得不可用元素 3. 选中选择器 语法: :checked 获得单选/复选框选中的元素 4. 选中选择器 语法: :selected 获得下拉框选中的元素 <
阅读全文
摘要:JQuery属性选择器 1. 属性名称选择器 语法: $("A[属性名]") 包含指定属性的选择器 2. 属性选择器 语法: $("A[属性名='值']") 包含指定属性等于指定值的选择器 3. 复合属性选择器 语法: $("A[属性名='值'][]...") 包含多个属性条件的选择器 <!DOCT
阅读全文
摘要:JQuery基本选择器 1. 基本选择器 1. 标签选择器(元素选择器) 语法: $("html标签名") 获得所有匹配标签名称的元素 2. id选择器 语法: $("#id的属性值") 获得与指定id属性值匹配的元素 3. 类选择器 语法: $(".class的属性值") 获得与指定的class属
阅读全文
摘要:JQuery对象和JS对象区别与转换 JQuery对象在操作时,更加方便。 JQuery对象和js对象方法是不通用的 两者相互转换 JQuery - - >js : JQuery对象[索引] 或者 JQuery对象.get(索引) js - - > JQuery :$(js对象) <!DOCTYPE
阅读全文
摘要:JQuery概念 jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(框架)于2006年1月由John Resig发布。 jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。 它封装
阅读全文
摘要:Listener概述 概念:web的三大组件之一。 事件监听机制 事件 :一件事情 事件源 :事件发生的地方 监听器 :一个对象 注册监听:将事件、事件源、监听器绑定在一起。当事件源上发生某个事件后,执行监听器代码 ServletContextListener:监听ServletContext对象的
阅读全文
摘要:Filter过滤敏感词汇案例 需求∶ 1.对用户信息案例录入的数据进行敏感词汇过滤 2.敏感词汇参考 傻蛋.坏蛋...... 3.如果是敏感词汇,替换为*** 分析: 1.对request对象进行增强。增强获取参数相关方法 2.放行。传递代理对象 SensitiveWordsFilter: /**
阅读全文
摘要:动态代理基本实现步骤 增强对象的功能: 设计模式:一些通用的解决固定问题的方式 1.装饰模式 2.代理模式 概念: 1.真实对象:被代理的对象 2.代理对象: 3.代理模式:代理对象代理真实对象,达到增强真实对象功能的目的 实现方式: 1.静态代理:有一个类文件描述代理模式 2.动态代理:在内存中形
阅读全文
摘要:Filter案例登录验证 需求: 1.访问用户信息案例的资源。验证其是否登录 2.如果登录了,则直接放行。 3.如果没有登录,则跳转到登录页面,提示"您尚未登录,请先登录"。 分析: LoginFilter: package com.peng.ca.web.filter; import javax.
阅读全文
摘要:Filter细节过滤器拦截路径配置 1.具体资源路径:/index.jsp 只有访问index.jsp资源时,过滤器才会被执行 2.拦截目录:/user/* 访问/user下的所有资源时,过滤器都会被执行 3.后缀名拦截:*.jsp 访问所有后缀名为jsp资源时,过滤器都会被执行 4.拦截所有资源:
阅读全文
摘要:Filter细节web.xml配置方式 注解进行注释表示这个类不是拦截器 web,xml标识此类为拦截器 <filter> <filter-name>filter</filter-name> <filter-class>com.peng.filter.filterwq.filterD1</filte
阅读全文
摘要:Filter概述 Filter:过滤器 Filter是一层过滤网,无论进出都会经过filter 生活中的过滤器:净水器,空气净化器... web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能。 过滤器的作用: 一般用于完成通用的操作。如:登录验证、统一编码处理、敏感字
阅读全文
摘要:用户信息复杂条件查询功能 分析: UserDao进行改造:加了一个 Map<String, String[]> condition /** * 查询总记录数 * @return * @param condition */ int findTotalCount(Map<String, String[]
阅读全文
摘要:用户信息分页查询功能 分析: 具体步骤: 后台代码的实现 PageBean实体类: package com.peng.ca.domain; import java.util.List; /** * 分页工具对象 */ public class PageBean<T> { private int to
阅读全文
摘要:用户信息删除选中功能 分析: UserService: /** * 删除选中用户 * @param ids */ void delSelectedUser(String[] ids); UserServiceImpl: @Override public void delSelectedUser(St
阅读全文
摘要:用户信息修改功能 分析: 信息的回显功能: list.jsp:进行修改 UserDao: User findById(int parseInt); UserDaoImpl: @Override public User findById(int id) { String sql = "select *
阅读全文
摘要:用户信息添加功能 分析: list.jsp:进行修改一下 add.jsp: <%@ page contentType="text/html;charset=UTF-8" language="java" %> <!-- HTML5文档--> <!DOCTYPE html> <!-- 网页使用的语言 -
阅读全文
摘要:页面简单优化 会做出以下的功能 1.简单功能 列表查询,登录,添加,删除,修改 2.复杂功能 删除选中,分页查询,复杂条件查询 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@taglib prefix="c"
阅读全文
摘要:用户信息列表展示案例 1.需求:用户信息的增删改查操作 2.设计 1.技术选型:Servlet+JSP+MySQL+JDBCTempleat+Duird+BeanUtils+tomcat 2.数据库设计: create database day17; -- 创建数据库 use day17; -- 使
阅读全文
摘要:JSTL练习 需求∶在request域中有一个存有User对象的List集合。需要使用jstl+el将list集合数据展示到jsp页面的表格table中 <%@ page import="com.peng.request.demo.domain.User" %> <%@ page import="j
阅读全文
摘要:JSTL常用标签choose choose:相当于java代码中的switch语句 完成数字编号对应星期几案例 1.域中存储一数字 2.使用choose标签取出数字 相当于switch声明 3.使用when标签做数字判断 相当于case 4.otherwise标签做其他情况的声明 相当于defaul
阅读全文
摘要:JSTL概述 1.概念:JavaServlet Pages Tag Library(JSP标准标签库) 是由Apache组织提供的开源的免费的jsp标签 <标签> 2.作用:用于简化和替换jsp页面上的java代码 3.使用步骤: 1.导入jstl相关jar包 2.引入标签库:taglib指令:<%
阅读全文
摘要:EL获取域中存储的值List集合&Map集合值 3.获取对象、List集合、Map集合的值 1.对象:${域名称.键名.属性名} 本质上会去调用对象的getter方法 2.List集合:${域名称.键名[索引]} 3.Map集合: ${域名称.键名.key名称} ${域名称.键名["key名称"]}
阅读全文
摘要:EL获取域中存储的值 1.el表达式只能从域对象中获取值 2.语法: 1.${域名称.键名}:从指定域中获取指定键的值 域名称: 1.pageScope --> pageContext 2.requestScope --> request 3.sessionScope --> session 4.a
阅读全文
摘要:EL概述 EL表达式: 1.概念:Expression Language 表达式语言 2.作用:替换和简化jsp页面中java代码的编写 3.语法:${表达式} 4.注意: jsp默认支持el表达式的。如果要忽略el表达式 1.设置jsp中page指令中:isELIgnored = "true" 忽
阅读全文
摘要:MVC_jsp演变历史 MVC: 开发模式(Model View Controller) 1.jsp演变历史 1.早期只有Servlet,只能使用response输出标签数据,非常麻烦 2.后来又jsp,简化了Servlet的开发,如果过度使用jsp,在jsp中即写大量的java代码,又写html表
阅读全文
摘要:JSP指令include&taglib指令 include:页面包含的。导入页面的资源文件 <%@include file = "top.jsp"%> taglib:导入资源 需要先导入资源库(这两个jar包) <%@ taglib prefix="c" uri="http://java.sun.c
阅读全文
摘要:JSP指令概述 作用:用于配置JSP页面,导入资源文件 格式:<%@ 指令名称 属性名1=属性值1 属性名2=属性值2 ...%> 分类: 1.page :配置JSP页面的 2.include :页面包含的。导入页面的资源文件 3.taglib :导入资源 JSP指令page指令 contentTy
阅读全文
摘要:
验证码 需求: 1.访问带有验证码的登录页面login.jsp 2.用户输入用户名,密码以及验证码 如果用户名和密码输入有误,跳转登录页面,提示:用户名或密码错误 如果验证码输入有误,跳转登录页面,提示:验证码错误 如果全部输入正确,则跳转到主页success.jsp,显示:用户名,欢迎您 分析:
阅读全文

摘要:细节: 1.当客户端关闭后,服务器不关闭,两次获取Session是否为同一个? 1.默认情况下不是 把浏览器关闭后在访问 session的地址值不一样了 如果需要相同,则可以创建Cookie,键为JSESSIONID,设置最大存活时间,让cookie持久化保存 @WebServlet("/sessi
阅读全文
摘要:会话技术Session快速入门 1.概念:服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中。HTTPSession 2.快速入门: 1.获取HTTPSession对象: HTTPSession session = request.getSession(); 2.使用HT
阅读全文
摘要:JSP改造Cookie案例 可以使你的页面方便的添加一些html元素后台标签(观赏性不好) <%@ page import="java.net.URLDecoder" %> <%@ page import="java.util.Date" %> <%@ page import="java.text.
阅读全文
摘要:JSP脚本 JSP的脚本:JSP定义Java代码的方式 1.<% 代码 %>:定义的java代码,在service方法中。service方法中可以定义什么,该脚本中就可以定义什么。 2.<%! 代码 %>:定义的java代码,在jsp转换后的java类的成员位置。 3.<%= 代码 %>:定义的ja
阅读全文
摘要:
JSP概念 1.概念: Java Server Pages:java服务器端页面 可以理解为:一个特殊的页面,其中既可以指定定义html标签,又可以定义java代码 用于简化书写 JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。J
阅读全文

摘要:会话技术Cookie案例 记住上一次访问时间 1.访问一个servlet,如果是第一次访问,则提示∶您好,欢迎您首次访问。 2.如果不是第一次访问,则提示∶欢迎回来,您上次访问时间为:显示时间字符串 分析: 1.可以采用Cookie来完成 2.在服务器中的Servlet判断是否有一个名为lastTi
阅读全文
摘要:会话技术Cookie共享 1.假设在一个tomcat服务器中,部署了多个web项目,那么在这些web项目中cookie能不能共享? 默认情况下cookie不能共享 setPath(String path):设置cookie的获取范围。默认情况下,设置当前的虚拟目录 如果要共享,则可以将path设置为
阅读全文
摘要:会话技术Cookie存活时间 1.默认情况下,当浏览器关闭后,Cookie数据被销毁 2.持久化存储: setMaxAge(int seconds) 1.正数:将Cookie数据写到硬盘的文件中。持久化存储。cookie存活时间。 2.负数:默认值 3.零:删除cookie信息 @WebServle
阅读全文
摘要:会话技术Cookie原理分析 基于响应头set-cookie和请求头cookie实现的 客户端给服务器发送一次请求,服务器给浏览器返回一次响应。因为有会话,我们得有多次请求应证这个过程。 首先第一次请求完成,服务器会携带一些数据响应给浏览器。 浏览器发现了这些数据之后,把这些数据保存在浏览器本地。
阅读全文
摘要:会话技术概述 会话:一次会话中包含多次请求和响应。 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 功能:在一次会话的范围内的多次请求间,共享数据 方式: 客户端会话技术:Cookie 服务器端会话技术:Session 会话技术Cookie快速入门 Cookie: 1.概念
阅读全文
摘要:文件下载案例: 文件下载需求: 1.页面显示超链接 2.点击超链接后弹出下载提示框 3.完成图片文件下载 分析: 1.超链接指向的资源如果能够被浏览器解析,则在浏览器中展示,如果不能解析,则弹出下载提示框。(不满足需求) 2.任何资源都必须弹出下载提示框 3.使用响应头设置资源的打开方式: cont
阅读全文
摘要:ServletContext功能 1.获取MIME类型 MIME类型:在互联网通信过程中定义的一种文件数据类型 格式:大类型/小类型 text/html image/jpeg 获取:String getMimeType(String file) @WebServlet("/servletContex
阅读全文
摘要:ServletContext概述 概念:代表整个web应用,可以和程序的容器(服务器)来通信 功能: 1.获取MIME类型: 2.域对象:共享数据 3.获取文件的真实(服务器)路径 (代码解析) ServletContext获取 1.通过request对象获取 request.getServletC
阅读全文
摘要:
Response验证码 验证码: 1.本质:就是一张图片 2.目的:防止恶意表单注册 分析:>创建一对象,在内存中图片(验证码图片对象) >美化图片 >将图片输出到页面展示 @WebServlet("/checkCodeServlet") public class CheckCodeServlet
阅读全文

摘要:Response输出字符数据 步骤: 1.获取字符输出流 2.输出数据 @WebServlet("/responseD3") public class ResponseD3 extends HttpServlet { protected void doPost(HttpServletRequest
阅读全文
摘要:Response路径相对路径和绝对路径 1.路径分类 1.相对路径:通过相对路径不可以确定唯一资源 如:./index.html 不以/开头,以.开头路径 规则:找到读取资源和目标资源直接的相对位置关系 ./:当前目录 ../:后退一级目录 2.绝对路径:通过绝对路径可以确定唯一资源 如:http:
阅读全文
摘要:Response功能介绍 功能:设置响应消息 1.设置响应行 1.格式:HTTP/1.1 200 ok 2.设置状态码:setStatus(int sc) 2.设置响应头:setHeader(String name,String value) 3.设置响应体: 使用步骤: 1.获取输出流 字符输出流
阅读全文
摘要:HTTP_响应消息_概述 HTTP协议: 1.请求消息:客户端发送给服务器端的数据 数据格式 1.请求行 2.请求头 3.请求空行 4.请求体 2.响应消息:服务器端发送给客户端的数据 数据格式: 1.响应行 1.组成:协议/版本 响应状态码 状态码描述 2.响应状态码:服务器告诉客户端浏览器本次请
阅读全文
摘要:登录案例代码实现 步骤: 1.创建项目,导入html页面,配置文件,jar包 html页面:中form表单的action路径的写法: 虚拟目录+Servlet的资源路径 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <t
阅读全文
摘要:Request获取ServletContext ServletContext getServletContext() protected void doPost(HttpServletRequest request, HttpServletResponse response) throws Serv
阅读全文
摘要:Request请求转发 请求转发:一种在服务器内部的资源跳转方式 1.步骤: 1.通过request对象获取请求转发器对象:RequestDispatcher getRequestDispatcher(String path) 2.使用RequestDispatcher对象来进行转发:forward
阅读全文
摘要:Request获取请求体数据 获取请求体数据: 请求体:只要POST请求方式,才有请求体,在请求体中封装了POST请求的请求参数 步骤: 1.获取流对象 BufferedReader getReader():获取字符输入流,只能操作字符数据 ServletInputStream getInputSt
阅读全文
摘要:Request获取请求头数据 Request获取请求体数据 String getHeader(String name):通过请求头的名称获取请求头的值 Enumeration<String> getHeaderNames():获取所有的请求头名称 @WebServlet("/requestD4")
阅读全文
摘要:Request_获取请求行数据_方法介绍 GET/day14/demo01?name=zhangsan HTTP/1.1 方法: 1.获取请求方式:GET String getMethod() 2.获取虚拟目录:/day14 String getContextPath() 3.获取Servlet路径
阅读全文
摘要:Request原理 1.request对象和response对象的原理 1.request和response对象是由服务器创建的。我们来使用它们 2.request对象是来获取请求消息,response对象是来设置响应消息 Request继承体系 requese对象继承体系结构: ServletRe
阅读全文
摘要:HTTP请求消息请求行 1.请求行 请求方式 请求url 请求协议/版本 GET/login.html HTTP/1.1 请求方式: HTTP协议有7中请求方式,常用的有2种 GET: 1.请求参数在请求行中,在url后。 2.请求的url长度有限制的 3.不太安全 POST: 1.请求参数在请求体
阅读全文
摘要:Servlet_urlpartten配置 7.Servlet相关配置 1.urlpartten:Servlet访问路径 1.一个Servlet可以定义多个访问路径:@WebServlet({"/d2","/dd4"}) 2.路径定义规则 1./xxx 2./xxx/xxx:多层路径,目录结构 3.x
阅读全文
摘要:IDEA与tomcat相关配置 IDEA会为每一个tomcat部署的项目单独建立一份配置文件 1.查看控制台的log:Using CATALINA_BASE: "C:\Users\Administrator\AppData\Local\JetBrains\IntelliJIdea2020.1\tom
阅读全文
摘要:Servlet生命周期详解 1.被创建:执行init方法,只执行一次 Servlet什么时候被创建? 默认情况下,第一次被访问时,Servlet被创建 可以配置执行Servlet的创建时机。 在<servlet>标签下配置 1.第一次被访问时,创建 <load-on-startup>的值为负数 2.
阅读全文
摘要:Servlet执行原理 1.当服务器接收到客户端浏览器的请求后,会解析请求URL路径,获取访问的Servlet的资源路径 2.查找web.xml文件,是否有对应的<url-pattern>标签体内容。 3.如果有,则在找到对应的<servlet-class>全类名 4.tomcat会将字节码文件加载
阅读全文
摘要:Servlet概述 概念:运行在服务器端的小程序 Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。 将来我们自定义一个类,实现Servlet接口,复写方法。 Servlet快速入门 1.创建JavaEE项目 2.定义一个类,实现Servlet接口 3.实现接口中
阅读全文
摘要:tomcat动态java项目的目录结构 java动态项目的目录结构: - - 项目的根目录 - - WEB - INF目录: - - web.xml:web项目的核心配置文件 - - classes目录:放置字节码文件的目录 - - lib目录:放置依赖的jar包 tomcat与IDEA集成&创建w
阅读全文
摘要:tomcat关闭 1.正常关闭: 找到然后双击: ctrl+c 2.强制关闭: 点击启动窗口的x tomcat部署项目的方式 1.直接将项目放到webapps目录下即可。 /hello:项目的访问路径- ->虚拟目录 简化部署:将项目打成一个war包,再将war包放置到webapps目录下。 war
阅读全文
摘要:tomcat安装&卸载&启动 下载:https://tomcat.apache.org/ 安装:解压压缩包即可。 注意:安装目录建议不要有中文和空格 卸载:删除目录就行了 启动: bin目录下找到:双击 然后浏览器访问:127.0.0.1:8080 会显示出自带的一个页面 访问别人的ip:8080
阅读全文
摘要:web相关概念回顾 1.软件架构 1.C/S:客户端/服务器端 1.B/S:浏览器/服务器端 2.资源分类 1.静态资源:所有用户访问后,得到的结果都是一样的,称为静态资源.静态资源可以直接被浏览器解析 如:html,css,JavaScript 2.动态资源:每个用户访问相同资源后,得到的结果可能
阅读全文
摘要:xml解析Jsoup根据选择器查询 selector:选择器 使用的方法:Elements select(String cssQuery) /* 选择器查询 */ private static void xuanze() throws IOException{ //获取student.xml的pat
阅读全文
摘要:xml解析jsoup_Document对象 Document:文档对象。代表内存中的dom树 获取Element对象 getElementById(String id):根据id属性值获取唯一的element对象 getElementsByTag(String tagName):根据标签名称获取
阅读全文
摘要:xml_Jsoup快速入门 步骤: 1.导入jar包 2.获取Document对象 3.获取对应的标签Element对象 4.获取数据 找到jar包进行引入: 或:工程项目的pom.xml文件引入 或:直接写main方法写Jsoup提示出来回车就自动添加了 快速入门代码: public class
阅读全文
摘要:xml解析方式 解析:操作xml文档,将文档中的数据读取到内存中 操作xml文档 1.解析(读取):将文档中的数据读取到内存中 2.写入:将内存中的数据保存到xml文档中。持久化的存储 解析xml的方式: 1.DOM:将标记语言文档一次性加载进内存,在内存中形成一棵树dom树 优点:操作方便,可以对
阅读全文
摘要:xml约束dtd 分类: 1.DTD:一种简单的约束技术 2.Schema:一种复杂的约束技术 DTD: 引入dtd文档到xml文档中 内部dtd:将约束规则定义在xml文档中 外部dtd:将约束的规则定义在外部的dtd文件中 本地:<!DOCTYPE 根标签名 SYSTEM "dtd文件的位置">
阅读全文
摘要:xml组成部分 1.文档声明 1.格式:<?xml 属性列表 ?> 2.属性列表: version:版本号,必须的属性 encoding:编码格式。告知解析引擎当前文档使用的字符集,默认值:ISO-8859-1 standalone:是否独立 取值: yes:不依赖其他文件 no:依赖其他文件 2.
阅读全文
摘要:xml概述 1.概念:Extensible Markup Language 可扩展标记语言 可扩展:标签都是自定义的。<user> <student> 2.功能: 存储数据 1.配置文件 2.在网络中传输 3.xml与html的区别 1.xml标签都是自定义的,html标签是预定义。 2.xml的语
阅读全文
摘要:Bootstrap案例_旅游网 <!doctype html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="vi
阅读全文
摘要:Bootstrap组件导航条&分页条&轮播图 <!doctype html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta n
阅读全文
摘要:Bootstrap_全局CSS样式_按钮&图片&表格&表单 全局CSS样式: 按钮:class = “btn btn-default” 图片: class=“img-responseive”:图片在任意尺寸都占100% 图片形状 <img src="..." alt="..." class="img
阅读全文
摘要:Bootstrap_栅格系统_入门 响应式布局: 1.同一套页面可以兼容不同分辨率的设备 2.实现:依赖于栅格系统:将一行平均分成12个格子,可以指定元素占几个格子 3.步骤: 1.定义容器。相当于之前的table 容器分类: 1.container:两边留白 2.container-fluid:每
阅读全文
摘要:Bootstrap_概述 1.概念:一个前端开发的框架,Bootstrap,来自Twitter,是目前很受欢迎的前端框架。 Bootstrap基于HTML、CSS、JavaScript 开发的简洁、直观、强悍的前端开发框架,使得 Web 开发更加快捷 框架:一个半成品软件,开发人员可以在框架基础上,
阅读全文
摘要:案例_表格全选 (1)实现全选、全不选、反选按钮功能(2)实现点击第一行按钮,会同时控制其余三行按钮(3)实现鼠标移到哪一行,哪一行背景颜色变为红色 注意:(1)先加载整个页面:onload = function () {}(2)复选框 checkbox,选中和未选中靠属性checked控制 <!D
阅读全文
摘要:事件_概述 事件监听机制: 概念:某些组件被执行了某些操作后,触发某些代码的执行。 事件:某些操作。如:单击,双击,键盘按下了,鼠标移动了 事件源:组件。如:按钮 文本输入框... 监听器:代码。 注册监听:将事件,事件源,监听器结合在一起。当事件源上发生了某个事件,则触发执行某个监听器代码。 常见
阅读全文
摘要:HTMLDOM_innerHTML <body> <div id="div1"> div </div> <script> var div = document.getElementById("div1"); var innerHTML = div.innerHTML; //div标签中替换一个文本输
阅读全文
摘要:添加: 1.给添加按钮绑定单击事件 2.获取文本框的内容 3.创建td,设置td的文本为文本框的内容。 4.创建tr 5.将td添加到tr中 6.获取table,将tr添加到table中 1.确定点击的是哪一个超链接 onclick="delTr(this);"2.删除 removeChild():
阅读全文
摘要:DOM_Element对象 removeAttribute():删除指定的属性 setAttribute():添加新属性 <!--Element对象--> <a>点我试一下</a> <input type="button" value="给a标签设置属性" id="btn_set"> <input
阅读全文
摘要:DOM_Document对象_获取Element方法 核心DOM模型: Document:文档对象 1.创建(获取):在html dom模型中可以使用window对象来获取 1.window.document 2.document 2.方法: 1.获取Element对象: 1.getElementB
阅读全文
摘要:案例_自动跳转首页 倒计时读秒效果实现 1.定义一个方法,获取span标签,效果span标签体内容,时间- - 2.定义一个定时器,1秒执行一次该方法 在方法中如果时间<=0,则跳转到首页 <html lang="en"> <head> <meta charset="UTF-8"> <title>自
阅读全文
摘要:BOM_Window_属性 1.获取其他BOM对象: history 对 History 对象的只读引用。请参数 History 对象。 location 用于窗口或框架的 Location 对象。请参阅 Location 对象。 navigator 对 Navigator 对象的只读引用。请参数
阅读全文
摘要:BOM_Window_定时器方法 定时器方法: clearInterval() 取消由 setInterval() 设置的 timeout。 参数: 1.js代码或者方法对象 2.毫秒值 返回值:唯一标识,用于取消定时器 setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式。
阅读全文
摘要:BOM_Window_弹出方法 Window:窗口对象 1.创建 2.方法 1.与弹出框有关的方法: alert() 显示带有一段消息和一个确认按钮的警告框。 confirm() 显示带有一段消息以及确认按钮和取消按钮的对话框。 如果用户点击确定按钮,则方法返回true 如果用户点击取消按钮,则方法
阅读全文
摘要:案例_电灯开关 分析: 1.获取图片对象 2.绑定单击事件 3.每次点击切换图片 规则: 如果灯为开的 2,切换为1 如果灯为关的 1,切换为2 使用标记flag来完成 <html lang="en"> <head> <meta charset="UTF-8"> <title>开关</title>
阅读全文
摘要:DOM简单学习 控制:控制html文档的内容 代码:获取页面标签(元素)对象 Element document.getElementById("id值"):通过元素的id获取元素对象 操作Element对象: 1.修改属性值: 1.明确获取的对象是哪一个? 2.查看API文档,找其中有哪些属性可以设
阅读全文
摘要:JavaScript_对象_Global Global 1.特点:全局对象,这个Global中封装的方法不需要对象就可以直接调用。方法名(); 2.方法: encodeURI():url编码 decodeURI():url解码 encodeURIComponent():url编码,编码的字符更多 d
阅读全文
摘要:JavaScript_对象_RegExp RegExp:正则表达式对象 1.正则表达式:定义字符串的组成规则。 1.单个字符:[] 如:[a] [ab] [a-zA-Z0-9_] 特殊符号代表特殊含义的单个字符: \d:单个数字字符[0-9] \w:单个单词字符[a-zA-z0-9_] 2.量词符号
阅读全文
摘要:JavaScript_对象_Date Date:日期对象 1.创建: var date = new Date(); 2.方法: toLocaleString():返回当前date对象对应的时间本地字符串格式 getTime():获取毫秒值。返回当前如期对象描述的时间到1970年1月1日零点的毫秒差
阅读全文
摘要:JavaScript_对象_Function 1.创建 1.var fun = new Function(形式参数列表,方法体);(不推荐使用或不使用) 2.function 方法名称(形式参数列表){ 方法体 } 3.var 方法名 = function(形式参数列表){ 方法体 } 2.方法:
阅读全文
摘要:JavaScript_语法_特殊语法 1.语句以;结尾,如果一行只要一条语句则;可以省略(不建议) 2.变量的定义使用var关键字,也可以不使用 用:定义变量是局部变量 不用:定义的变量是全局变量(不建议) /* b=4; alert(b); */ var b; function fun() { b
阅读全文
摘要:JavaScript_语法_逻辑运算符 逻辑运算符: &&:与(短路) ||:或(短路) !:非 其他类型转boolean: 1.number:0或NaN为假,其他为真 2.string:除了空字符串(" "), 其他都是true 3.null&undefined:都是false 4.对象:所有对象
阅读全文
摘要:JavaScript_语法_一元运算符 1.一元运算符:只要一个运算符的运算符 ++,--,+(正好) ++ --:自增(自减) ++(- -)在前,先自增(自减),在运算 ++(- -)在后,先运算,在自增(自减) +(-):正负号 注意:在JS中,如果运算数不是运算符所要求的类型,那么js引擎会
阅读全文
摘要:JavaScript_语法_变量 变量:一小块存储数据的内存空间 Java语言是强型语言,而JavaScript是弱类型语言。 强类型:在开辟变量存储空间时,定义了空间将来存储的数据的数据类型。只能存储固定类型的数据 弱类型:在开辟变量存储空间时,不定义空间将来的存储数据类型,可以存放任意类型的数据
阅读全文
摘要:JavaScript_语法_与html结合方式 ECMAScript:客户端脚本语言的标准 1.基本语法 1.与html结合的方式 内部JS: 定义<script>,标签体内容就是js代码 外部JS: 定义<script>,通过src属性引入外部的js文件 注意: 1.<script>可以定义在ht
阅读全文
摘要:JavaScript_简介 概念:一门客户端脚本语言 运行在客户端浏览器中的。每一个浏览器都有JavaScript的解析引擎 脚本语言:不需要编译,直接就可以被浏览器解析执行了 功能: 可以来增强用户和html页面的交互过程,可以来控制html元素,让页面有一些动态效果,增强用户的体验。 JavaS
阅读全文
摘要:CSS_案例_注册页面 实现: <html lang="en"> <head> <meta charset="UTF-8"> <title>注册</title> <style> *{ margin: 0px; padding: 0px; box-sizing: border-box; } body{
阅读全文
摘要:CSS_属性2_盒子模型 盒子模型: margin:外边距 padding:内边距 默认情况下内边距会影响整个盒子的大小 box-sizing: border-box; 设置盒子属性,让width和height就是最终盒子的大小 float:浮动 left right <html lang="en"
阅读全文
摘要:CSS扩展选择器 1.选择所有元素: 语法:{} 2.并集选择器: 选择器1,选择器2{} 3.子选择器:筛选选择器1元素下的选择器2元素 语法:选择器1 选择器2{} 4.父选择器:筛选选择器2的父元素选择器1 语法:选择器1 > 选择器2{} 5.属性选择器:选择元素名称,属性名=属性值的元素
阅读全文
摘要:CSS_语法格式 格式: 选择器{ 属性名1:属性值1; 属性名2:属性值2; ... } 选择器:筛选具有相似特征的元素 注意:每一对属性需要使用;隔开,最后一对属性可以不加; CSS选择器_基础选择器 1.id选择器:选择具体的id属性值的元素:建议在一个html中id值唯一 #id属性值{}
阅读全文
摘要:CSS_概述 CSS:页面美化和布局控制 概念:Cascading Style Sheets 层叠样式表 层叠:多个样式可以作用在同一个html的元素上,同时生效 好处: 功能强大 将内容展示和样式控制分离 降低耦合度。解耦 让分工协作更容易 提高开发效率 CSS_与html结合方式 1.内联样式
阅读全文
摘要:HTML标签_表单标签_表单项select&textarea select:下拉列表 子元素:option,指定的列表项 textarea:文本域 cols:指定列数,每一行有多少个字符 rows:默认多少行。 省份:<select name="province"> <option> 请选择
阅读全文
摘要:HTML标签_表单标签_表单项input input:可以通过type属性值,改变元素展示的样式 type:属性: >text:文本输入框,默认值 placeholder:指定输入框的提示信息,当输入框的内容发生变化,会自动清空提示信息 >password:密码输入框 >radio:单选框 注意:
阅读全文
摘要:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>张三旅游网</title> </head> <body> <!--采用table来完成布局--> <!-- 最外层的table,用于整个页面的布局 --> <t
阅读全文
摘要:HTML标签_表格标签2 tr:定义行 >bgcolor:背景色 >align:对齐方式 td:定义单元格 >colspan:合并列 >rowspan:合并行 th:定义表头单元格 <caption>:表格标题 <thead>:表示表格的头部分 <tbody>:表示表格的体部分 <tfoot>:表示
阅读全文
摘要:语义化标签 语义化标签:html5中为了提高程序的可读性,提供了一些标签。 1.<header> 表示开头 2.<footer> 表示结尾 表格标签1 table:定义表格 width:宽度 border:边框 cellpadding:定义内容和单元格的距离 cellspacing:定义单元格之间的
阅读全文
摘要:HTML链接标签 a:定义一个超链接 >属性: href:指定访问资源的URL(统一资源定位符) target:指定打开资源的方式 _self:默认值,在当前页面打开 _blank:在空白页面打开 <!-- 链接标签 --> <a href="http://www.baidu.com">点我跳转到百
阅读全文