JavaWeb新版

一 HTML

1 网络七层:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层
2 title标签内表示网页的标题,meta标签中可设置编码方式,br标签表示换行br标签是一个单标签,p表示段落标签。img图片标签src属性表示图片文件的路径alt表示图片加载不出的提示title表示加载出来的提示,
ol有序列表start表示从*开始type表示显示的类型A a I i 1,ul无序列表type disc(default),circle,square

3 html是解释型语言,不是编译型,解释不了就不解释,浏览器是容错的
Java hospot的解释器是为了避免编译时间过长,编译器优化的是代码热点,和html的解释型不是一个概念
解释型语言,编译后的代码不能直接被机器执行需要解释器来执行,编译型语言编译后的代码可以直接被机器执行c/c++

4 form标签代表表单,表单是一个容器承载我们要发送给服务器的数据,action标签了指明要发送的地址。按钮标签分为三种submit、reset、button,重置按钮不是清空是恢复到默认页面。
5 HTML主要用于网页主题结构的搭建,是Hyper Text Markup Language的缩写。
6 超文本的含义–本身是文本,但是呈现出来的最终效果超越了文本。
7 在生产环境当中html文档是放在服务器上进行部署的
html文件是浏览器负责解析和展示的
8 html是纯文本文件,普通编辑工具都可以编辑。
9 专业词汇,标签tag 页面的一对尖括号,
属性attribute 对标签特征进行设置的一种方式 属性一般在开始标签中定义,
文本text 双标签中间的文字,
元素element 开始标签 + 属性 + 文本 + 结束标签 称之为一个元素
10 w3c文档查看所有标签
11 文件本身是二进制数据
12 HTTP ERROR 405表示请求方式不允许
13 form表单
  Get

  • 参数会以键值对形式放在url后提交 url?key=value&key=value&key=value
  • 数据直接暴露在地址栏上,相对不安全
  • 地址栏长度有限制,所以提交的数据量不大
  • 地址栏上,只能是字符,不能提交文件
  • 相比于post效率高一些

  post

  • 参数默认不放到url后
  • 数据不会直接暴露在地址栏上,相对安全
  • 数据是单独打包通过请求体发送,提交的数据量比较大
  • 请求体中,可以是字符,也可以是字节数据,可以提交文件
  • 相比于get效率略低一些

表单项标签一定要定义name属性,该属性用于明确提交时的参数名
表单项还可以定义value属性,该属性用于明确提交时的实参
14

二 CSS

1 CSS的最基本的分类:标签样式表、类样式表、ID样式表、组合样式
2 CSS从位置上的分类:嵌入式样式表、内部样式表、外部样式表
3 CSS盒子模型:border边框、margin间距、padding填充
4 CSS主要用于页面元素美化

三 JS

1 JS是客户端(浏览器端)运行的脚本语言,语法风格和java比较类似
2 JS是弱类型语言
3 JS的函数
4 DOM技术
5 JavaScript主要用于页面元素的动态处理(人机交互)
6 JavaScript是一种解释型的脚本语言。不会产生编译出来的字节码文件,而是在程序的运行过程中对源文件逐行进行解释。
7 <!---->此种注释方式在script标签里面不生效
8 JSON里面不研究方法,只有属性
9 通过JSON.parse()可以将一个JSON串转换为一个对象
通过JSON.stringify()将一个对象转换为JSON串
10 BOM是Browser Object Mode的简写,即浏览器对象模型

四 Web-CS和BS

1 CS:客户端服务器架构模式优点是充分利用客户端机器的资源减轻服务器的负荷,缺点是需要安装升级维护成本高。
2 BS:浏览器服务器架构模式优点是客户端不需要安装维护成本较低,缺点是所有的计算和存储任务都是放在服务器端的,服务器的负荷较重,在服务端计算完成之后把数据再传输给客户端,因此客户端和服务器端会进行频繁的数据通信从而网络负荷较重。
3 tomcat是java和c写的程序,因此需要JRE所以需要配置JAVA_HOME
tomcat启动失败可终止端口号对应的进程,或关机重启再终止进程
中文乱码可在conf文件下的logging文件中修改编码方式(或直接删除编码方式)
4 HttpServlet类不在JDK里面
Post请求方式下需设置编码防止添加到数据库中的中文乱码:request.setCharacterEncoding(“UTF-8”)
5 POJO是指那些没有从任何类继承、也没有实现任何接口,也没有被其他框架侵入的Java对象。
6 Servlet中的核心方法:init(),service(),destroy()
服务方法:当有请求过来时,service方法会自动响应(其实是tomcat容器调用的),在HttpService中我们会去分析请求的方式到底是get、post、head还是delete等等,然后再决定调用的是哪个do开头的方法,那么在HttpServlet中这些do方法默认都是405的实现风格-要我们子类去实现对应的方法,否则默认会报405错误。因此我们在新建Servlet时我们才会考虑请求方法从而决定重写哪个do方法。
7 Http是无状态的:服务器无法判断这两次请求是同一个客户端发来的,还是不同的客户端发过来的。
-无状态带来的现实问题:第一次请求是添加商品到购物车,第二次请求是结账,如果这两次请求服务器无法区分是同一个用户的,那么就会导致混乱
-通过回话跟踪技术来解决无状态的问题。
8 -回话跟踪技术:客户端第一次发送请求给服务器,服务器获取session,获取不到,则创建新的,然后响应给客户端 -下次客户端给服务器发送请求时,会把sessionID带给服务器,那么服务器就能获取到了,那么服务器就判断这一次请求和上次某次请求是同一个客户端,从而能够区分开客户端。
-常用的API:request.getSession() --> 获取当前的回话,没有则创建一个新的回话
request.getSession(true) --> 效果和不带参数相同
request.getSession(false) --> 获取当前回话,没有则返回null,不会创建新的
session.getId() --> 获取sessionID
session.isNew() --> 判断当前session是否是新的
session.getMaxInactiveInterval() --> session的非激活间隔时长,默认1800秒
session.setMaxInactiveInterval() --> 设置session的非激活间隔时长
session.invalidate() --> 强制性回话立即失效
9 session保存作用域 -session保存作用域是和具体的某一个session对应的
-常用的API:void session.setAttribute(k,v)
Object session.getAttribute(k)
void removeAttribute(k)
10 服务器内部转发以及客户端重定向
1)服务器内部转发:request.getRequestDispatcher(“…”).forward(request,response);
-一次请求响应的过程,对于客户端而言,内部经过了多少次转发,客户端是不知道的
-地址栏没有变化
2)客户端重定向:response.sendRedirect(“…”)
-两次请求响应的过程。客户端肯定知道请求URL有变化
-地址栏有变化
302表示重定向
405表示请求方式不支持
404表示找不到资源
500表示服务器内部错误

五 Thymeleaf - 试图模板技术

六 过滤器Filter

1 filter也属于servlet规范,servlet规范包括servlet filter listener
2 Filter开发步骤:新建类实现Filter接口,然后实现其中的三个方法:init、doFilter、destroy
配置Filter,可以用注解@webFilter,也可以使用xml文件
3 Filter在配置时,和servlet一样,也可以配置通配符,例如@webFilter(“.do”) 表示拦截所有以.do结尾的请求

七 监听器

1)ServletContextListener - 监听servletContext对象的创建和销毁的过程
2)HttpSessionListener - 监听HttpSession对象的创建和销毁的过程
3)ServletRequestListener - 监听ServletRequest对象的创建和销毁的过程

4)ServletContextAttributeListener - 监听ServletContext的保存作用域的改动(add,remove,replace)
5)HttpSessionAttributeListener - 监听HttpSession的保存作用域的改动(add,remove,replace)
6)ServletRequestAttributeListener - 监听ServletRequest的保存作用域的改动(add,remove,replace)

7)HttpSessionBindingListener - 监听某个对象在Session域中的创建与移除
8)HttpSessionActivationListener - 监听某个对象在Session域中的序列化和反序列化

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_168168ww

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值