Java Web 后端技术

article/2025/9/28 7:26:17

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响应体

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


http://chatgpt.dhexx.cn/article/rDGpDj3f.shtml

相关文章

Web后端的基础知识

文章目录 JavaWeb后端计算机网络基础认识Tomcat服务器使用Maven创建Web项目Servlet创建Servlet探究Servlet的生命周期解读和使用HttpServletWebServlet注解详解使用POST请求完成登陆上传和下载文件使用XHR请求数据重定向与请求转发了解ServletContext对象初始化参数 CookieSess…

一分钟整明白web前端和Java后端的就业前景

前端:前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页。随着互联网技术的发展,HTML5,CSS3,前端框架的应用,跨平台响应式网页设计能够适应各种屏幕分辨率,完美的…

web网页开发-前端

web网页开发-前端 refer web开发 https://developer.mozilla.org/en-US/docs/Learn 本文是入门性质文章,主要通过讲解html,css,js的基础知识对前端有一个入门级别的了解。 工具准备 git,使用gitee或者github进行代码托管 https://…

后端都需要学习什么?

目录 理解前、后端后端要干些啥呢小结汇总一下~ 理解前、后端 在一家软件公司里面,我们经常把开发人员分为前端开发人员,后端开发人员,那么我们怎么界定前端开发和后端开发呢。简单地说就是用户在屏幕上看到的和触摸到的体验,都是…

Web后端开发入门(2)

搭建JavaWeb应用开发环境--Tomcat服务器 下载与安装 首先,搜索Tomcat,找到如图网址 点击,进入Tomcat官网 在最左边一栏,有个Download,找到最新版Tomcat 9 ,点击 下拉,找到如上图所示位置&#…

Web后端学习

web后端 一.cs/bs架构 CS/BS模式/客户端与浏览器模式 cs 需要安装客户端,客户端向服务器请求,服务器响应数据返回。 bs 浏览器即可访问通过http协议 3.web资源 静态资源:人们浏览到的网页是一样的 动态资源:不同人、时间…

后端开发基础——Web应用基础

目录 一. 动态网站开发基础 1.1.C/S 与 B/S 1.2.Web开发的请求响应模式 1.3.HTTP协议 1.4.URL简介 1.5.Web服务器简介 二. javaEE简介 2.1.Tomcat服务器 2.1.1.安装Tomcat服务器 2.1.2.Tomcat目录结构 2.1.3.Tomcat配置 2.3.javaEE标准目录结构 2.4.Hello World程…

Web后端开发入门(1)

Web概述: 在英语中web表示网页的意思,它用于表示Internet主机上供外界访问的资源。 Internet上供外界访问的Web资源分为: 1.静态Web资源(如html页面):指web页面中始终不变的数据。 2.动态Web资源&#xff…

Javaweb后端开发必学(HTML、CSS、JS、Vue)

Javaweb HTML、CSSCSS引入方式< span >标签CSS选择器&#xff1a; 页面布局表格表单标签表单项 JavaScriptJavaScript引入方式JS语法变量数据类型运算符函数(Java中方法) JS对象ArrayStringJSON(对象标记法)BOMWindow 浏览窗口对象Location&#xff1a; 地址栏对象 DOM J…

0.Web 后端 开发

后端开发主要做什么: 后端程序主要工作就是 数据管理。 通常 包括数据的 存储 &#xff08;包括 增加、删除、修改&#xff09;和 查询 。 这听起来似乎很简单&#xff0c;其实有的业务流程非常复杂 &#xff08;想想淘宝购物&#xff09;&#xff0c;有时一个购买操作&#…

java课程设计 学生管理系统

java课程设计 学生管理系统 学生成绩管理系统 可实现功能 学生管理系统 查询学生信息&#xff1a;姓名、学号、性别、出生年月日。&#xff08;学号自动生成且唯一&#xff09;查询学生成绩&#xff1a;每个人都有数学、Java与体育与选修课查询学生课程进行公选课选课 教师管理…

java实现简易学生管理系统

最近在学java&#xff0c;看的黑马程序员的视频&#xff0c; 刚学到一个项目&#xff0c;学生管理系统&#xff0c;自己跟着用代码实现了一下。下面是我的代码。 javabean类 Student.java public class Student {private String id;private String name;private int age;priv…

java学生管理系统界面设计

关于学生管理系统的界面设计:代码如下: 数据库设计 DROP TABLE IF EXISTS stu; CREATE TABLE stu (stuId int(11) NOT NULL AUTO_INCREMENT,stuName varchar(30) DEFAULT NULL,stuSex varchar(30) DEFAULT NULL,stuAge int(11) DEFAULT NULL,stuJg varchar(30) DEFAULT NULL,s…

【Java】升级版学生管理系统项目

目录 一、前言 二、学生管理系统主要功能 在学生类下 在学生总部类下&#xff1a; main方法&#xff1a; 登录密码验证&#xff1a; 打印菜单&#xff1a; 增加学生信息&#xff1a; 查看学生信息&#xff1a; 删除学生信息&#xff1a; 修改学生信息&#xff1a; 查…

Java实现 “学生管理系统“

文章目录 一、项目简介二、系统展示三、程序设计 一、项目简介 本项目为基于java下实现模拟学生管理系统&#xff0c;具以下6个功能&#xff1a; 添加学生删除学生修改学生信息查询学生信息输出学生信息退出系统 二、系统展示 1. 菜单 2. 添加学生 3. 修改学生信息 4. 查询…

java学生成绩管理系统

学生成绩管理系统 使用java swing 和 jdbc 技术 管理学生信息 文章目录 学生成绩管理系统一&#xff0c;总体架构二、controller层的编写三、pojo层的编写四&#xff0c;view层的编写五&#xff0c;数据库的连接六&#xff0c;启动程序 一&#xff0c;总体架构 一共五个包 二…

Java——学生管理系统

学生管理系统实现步骤&#xff1a; 定义学生类学生管理系统的主界面的代码编写学生管理系统的查看所有学生的代码编写学生管理系统的添加学生代码的编写学生管理系统的删除学生的代码编写学生管理系统的修改学生的代码编写 学生系统主界面&#xff1a; public class Student…

Java学生管理系统设计与实现 (超详细,含课程设计)

最新文章出炉&#xff0c;欢迎点评 它曾是浏览器的王者&#xff0c;如今却前景堪忧...... 推荐阅读 ★★★★ 往期文章回顾&#xff1a; 1、Java开发岗位面试题汇总&#xff08;不断补充……&#xff09;★★★ 2、Java程序员必须掌握的英语词组 ★★ 3、学习Java的9张思…

用Java实现学生管理系统【简化版】基础

&#x1f389;博客首页&#xff1a;痛而不言笑而不语的浅伤 &#x1f4e2;欢迎关注&#x1f973;点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 欢迎讨论&#xff01; &#x1f52e;本文由痛而不言笑而不语的浅伤原创&#xff0c;CSDN首发&#xff01; &#x1f30b;系列专栏&…

java 学生信息管理系统

只设计了一部分 全部的太多了。会慢慢更新增加。 学生信息管理包括添加&#xff0c;删除&#xff0c;修改&#xff0c;查询&#xff0c;显示全部等 具体结构如图 在SQL Server 2005数据库上实现数据操作。使用纯面向对象的java语言作为开发语言 在sql server 2005新建一个名…