Java Web 后端技术「建议收藏」

Java Web 后端技术「建议收藏」后端技术(上)在拉钩教育学了那么久大数据课程到现在也是第一次写博客,可能理解不是很深,但也是自己学的一个小的总结,也希望各位大神不吝赐教。1.Tomcat服务器1.1JavaWeb在讨论Tomcat之前先说明一下JavaWeb。JavaWeb是用Java技术来解决相关Web领域的技术综合。简单的说就是把编写好的代码放到互联网上提供给所有用户访问。在计算机之间进行信息交流称为交互,目前存在两种典型交互方式:B/S交互模型(架构)和C/S交互模型(架构)B/S交互模型:能够通过普遍浏览器

大家好,又见面了,我是你们的朋友全栈君。

Java Web后端技术(一)

学习Java及其相关技术到现在也是第一次写博客,可能理解不是很深,但也是自己学的一个小的总结,也希望各位大神不吝赐教。

1.Tomcat服务器

1.1Java Web

在讨论Tomcat之前先说明一下Java Web。Java Web是用Java技术来解决相关Web领域的技术综合。简单的说就是把编写好的代码放到互联网上提供给所有用户访问。在计算机之间进行信息交流称为交互,目前存在两种典型交互方式:B/S 交互模型(架构)和 C/S 交互模型(架构)

B/S交互模型:能够通过普遍浏览器访问服务器,并不需要安装专门的客户端。所以也会便于开发,部署以及更新,然而由于便捷性也会导致用户的体检较差。

C/S交互模型:与B//S交互模型不同的是,不要有专门的客户端方位对应的服务器。就如同现在手机中的app和电脑中的各种软件。同样的,对于用户体验感很好,但是开发、部署以及维护比较繁琐,客户端安装包也比较大,下载及安装也比较费时。
两个交互模式之间也是相对的,优缺点也是很明显。

而开发者则通过web服务器资源从本地发布到互联网。资源则分为两类资源,一种是静态资源,是一种固定的资源,对于不同的用户访问时都能看到的是同一个内容,最简单的例子是每天看到的新闻资讯;而另一种是动态资源,相同的页面对于不同的人会显示不同的显示内容,就如同购物车,不同的人看到的不同结果。

url是对互联网上资源位置的一种表示,对于互联网上的每一个文件都有对应的url
一般url表示格式如下:

协议://域名:端口号/资源位置?参数=
  1. 协议,http、https、ftp等
  2. 域名,域名或IP地址,都可以访问WEB资源
  3. 端口号,程序必须使用端口号,才可以让另一个计算机访问。http协议的默认端:80
  4. 资源位置,用于描述WEB资源在服务器上的位置。
  5. 参数=值,浏览器和服务器交互传递的数据

1.2Tomcat 服务器

tomcat官方下载链接:Tomcat
在这里插入图片描述
安装:绿色免安装版,解压即可使用
目录结构

在这里插入图片描述
启动与停止:在bin目录中的startup.batshutdown.bat;

在这里插入图片描述
在启动后可以访问到tomcat界面则启动成功

在这里插入图片描述
发布项目的三种方式

  1. webapps部署(简单):在webapps下部署页面
  2. server.xml部署(了解)
  3. 独立xml部署(开发时使用):在tomcat/conf/Catalina/ localhost 目录下创建一个xml文件,添加标签

1.3在idea中配置使用tomcat服务器【重中之重】

配置Tomcat服务器流程:add Configurations->Templates->Tomcat Server->Local,在Application server中点击Configuration并选择Tomcat Home;在本地文件中选择Tomcat文件目录。

发布web流程:在Tomcat Server中的Development中添加web项目。

在这里插入图片描述
在这里插入图片描述

然后就可以启动Tomcat并且能访问页面了。然而在代码发生变化以后就需要重新启动Tomcat,而idea中存在页面热更新,在页面资源修改后可以立即生效。

在这里插入图片描述

2.HTTP协议

HTTP协议:超文本传输协议(HTTP,HyperText Transfer Protocol)是在互联网中普遍的网络协议,用于定于web浏览器和服务器之间的传输过程。

传输协议:在客户端和服务器端通信时,规范了传输数据的格式

特点:

  1. 基于请求/响应模型的协议—请求和响应必须成对且有了请求才有的响应
  2. 简单快捷—发送请求的时候只需要发送请求方式和请求路径即可
  3. http协议默认端口:80
  4. 无状态协议:多次请求之间相互独立,不能交互数据
    HTTP协议包含两种报文格式:请求报文响应报文

2.1请求报文

定义:由客户端向服务器端发出的报文。

格式:包含请求行、请求头、空行、请求体 四个部分

在这里插入图片描述
2.1.1 请求行

包括 请求方式 资源路径 协议/版本
请求方式在协议中规定了7种,目前常用的有两种GETPOST

1GET请求:在URL后面追加请求参数,较不安全;然而对于请求方式的数据大小没有长度限制;没有请求体。

2POST请求:请求参数显示请求体处,比较安全;对于请求数据大小也没有限制。

2.1.2请求头

描述客户端向服务器发送请求时使用的http协议类型,所使用的编码,以及发送方内容的长度,referer,等等。
请求头是用键值对key:value。

常见请求头 描述
Referer 浏览器通知服务器,当前请求来自何处。如果是直接访问,则不会有这个头。
Cookie 与会话有关技术,用于存放浏览器缓存的cookie信息。
User-Agent 浏览器通知服务器,客户端浏览器与操作系统相关信息

2.1.3 请求体

通常情况下,只有post请求方式才会使用到请求体,请求体中都是用户表单提交的数据,每一项数据都使用键值对key=value,多组值使用&相连。

2.2响应报文

定义:由服务器向客户端发出的报文。
格式:包含响应行、响应头、空行、响应体 四个部分

在这里插入图片描述
2.2.1响应行

格式:协议/版本 状态码 状态码描述

状态码为服务器于浏览器用于确定状态的固定数字号码

状态码 含义
200 请求成功
302 请求重定向
304 请求资源没有改变,访问本地缓存
404 请求资源不存在。通常是用户路径编写错误,也可能是服务器资源已删除
500 服务器内部错误。通常程序抛异常

2.2.2响应头

用来描述服务器回给客户端浏览器的content的一些描述
响应头也是用的键值对 key:value

常见响应头 描述
Location 指定响应的路径,需要与状态码302配合使用,完成跳转。
Content-Disposition 文件下载的时候使用。通过浏览器以下载方式解析正文
Set-Cookie 与会话相关技术。服务器向浏览器写入cookie
Refresh 定时刷新

2.2.3响应体

服务器发送给浏览器的正文

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149932.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • stata15无法识别调用plus外部命令,报错:command XXX is unrecognized如何解决?

    stata15无法识别调用plus外部命令,报错:command XXX is unrecognized如何解决?stata15无法识别调用plus外部命令,报错:commandXXXisunrecognized如何解决?解决办法:查看stata文件夹下是否有profile.do文件;如果没有,新建profile.do文件;新建的方法可以打开stata,打开do-file编辑器;内容写为(参考连玉君老师Stata:外部命令的搜索、安装与使用):adopath+“D:\应用软件\Stata15\ado\plus”sysdirsetPLUS“D:\应用软件\Stata15\

    2022年10月20日
    6
  • 毕业四年

    好久不见,一年一度的“毕业N年”系列,2019,毕业四年了。工作去年9月份从前公司离职了,加入阿里,很快,再两个月就入职一年了。几条工作上的感受和建议,希望对你有所帮助。1、谨慎面试,大厂永远在招人以阿里为例,你的所有面试记录都是留存的,包括每个面试官的评价以及结果,如果准备不充分的情况下频繁面试,留下的记录会影响之后面试官对你的印象。如果对某个岗位感兴趣,最好联系对应岗位部门的同学,简历…

    2022年3月11日
    46
  • NOVO SOP (SOP简介及历史)[通俗易懂]

    NOVO SOP (SOP简介及历史)[通俗易懂]SOP(StandardOperationProcedure),标准作业程序。一、什么是SOP(标准作业程序)  所谓SOP,是StandardOperationProcedure三个单词中首字母的大写,即标准作业程序(标准操作程序),就是将某一事件的标准操作步骤和要求以统一的格式描述出来,用来指导和规范日常的工作。  SOP的精髓,就是将细节进行量化,用更通俗的话来…

    2022年5月25日
    34
  • 3.3v与5v电平转换_5v电压经过10位A/D转换

    3.3v与5v电平转换_5v电压经过10位A/D转换问题背景在设计一个带MCU或者ARM系统电路时候,经常遇见MCU的VCC是3.3V,但是外围电路需要5V,有时候是反过来。虽然现在MCU的IO都声称支持TTL电平,但是我们谁也不想将MCU的IO口直接接上5V,即使IO口先串联一个电阻,然后再接上5V,这样总是不放心,担心烧掉MCU。再说了,MCU声称IO口支持TTL电平,但是并不是所有的IO都是这样,反正有隐患。解决方法就是电平转换。具体的我只说我在实际项目中运用到的方法,而且在项目中运用比较方便的,其他的都不再说了。法一:基于门电路第一种:利用O

    2022年8月10日
    11
  • oracle的todate函数的日期格式_oracle date格式

    oracle的todate函数的日期格式_oracle date格式转自http://apps.hi.baidu.com/share/detail/10070907OracleTO_DATE日期格式大全Oracle中TO_DATE格式2009-04-1410:53TO_DATE格式(以时间:2007-11-02  13:45:25为例)       Year:            yytwodigits两位年              …

    2022年10月12日
    4
  • sublime 激活码(注册激活)

    (sublime 激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月29日
    214

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号