通俗的讲,Java后端到底是干什么的?语言工程师到底是啥?你是工程师吗?

article/2025/8/26 21:27:58

新手程序员通常会走入一个误区

就是认为学习了一门语言,就可以称为是某某语言工程师了。但事实上真的是这样吗?其实并非如此。

今天我们就来聊一聊,Java 开发工程师到底开发的是什么东西。准确点来说,Java后端到底在做什么?

通俗来讲

大家都知道 Java 是一门后端语言,后端指的就是服务端,服务端代码一般运行在服务器上,通常我们运行Java 程序的服务器都是 Linux 服务器。

这些服务器在互联网公司中一般放在一个叫做机房的地方里,于是像我们这类 Java 程序员的代码一般也运行在这些机房里的服务器中。

Java 里有一个概念叫做虚拟机,你可以把它理解为一个安卓的模拟器,比如你在电脑上装了一个安卓模拟器,就可以通过它来运行安卓应用程序,比如装个 APP,手机游戏什么的。

所以当你在电脑上安装了一个叫做 JDK 的东西时,电脑里就有了 JRE 也就是 Java 运行环境,有了这个运行环境,你就可以运行 Java 应用程序了。

Java基础知识

知道 Java 程序如何运行在计算机上之后,我们再来讲一讲平时学的一些 Java 基础知识,它们到底有什么用?

其实平时这一些 Java 基础语法都仅仅是你写代码的一些基础知识,就相当于英语中的 26 个字母,常见的有基本类型变量、for 循环、if else 等等基本语法,掌握了这些基础知识之后,你就可以上手写一些很简单的代码了。

除此之外,Java 还有一些比较特别的概念,比如面向对象的特性,其中有类、接口等概念。为什么 Java 要引入这些东西呢,其实就是想让使用者更好地进行设计、抽象和编程。

对于新手来说,你不需要理解得特别的深刻,因为这些东西只有你在你真正写代码之后才能逐步去理解。

集合类

说完基本知识之后,我想你也会好奇,Java里经常提到的一些集合类是干嘛的呢,因为在现实生活中有很多场景,需要用到集合类,比如说一个用户名列表,你要怎么存呢?

你会用一个 List 来做对不对,所以集合类的作用就是让你在编程中更好的存储数据。

事实上,集合类的概念最早是来源于数据结构的,因为计算机里有很多特殊的数据存储结构,比如文件树,比如链表和数组等结构,因此计算机理论把这些存储数据的模型抽象成一些常见的结构,统称为数据结构。

并发编程

那么,Java 中的并发编程又是做什么的呢,Java 中的多线程是为了更好地利用电脑中的CPU核心,通过并发编程,就可以提高程序并发的效率。

但是并发编程的背后需要操作系统的支持,以及计算机硬件的支持,所以,如果你要完全地理解多线程,绝不仅仅是理解 Java 里的 Thread 或者是线程池就足够了,你还需要去理解操作系统,以及计算机组成原理。

和并发编程类似,Java 里也有网络编程的概念,Java 里的网络编程和其他语言大同小异,其实也是基于 TCP/IP 协议实现的一套 API,通过网络编程,你就可以在程序中把你想传输的数据传输到网络的另一端,有了网络编程和并发编程之后,Java 程序员的能量已经很大了。

后端技术

讲完这几点之后接下来再谈谈,我们通常说的 Java 后端技术到底是什么,就拿支付宝来举例吧,曾经的支付宝用户数并不多,一台服务器,一个数据库就可以支持所有的业务了。

当支付宝的用户越来越多的时候,一台服务器无法同时满足海量用户的需求,于是开始出现了多台服务器,多台服务器组成了一个集群,用户可以通过负载均衡的方式访问这些服务器,每个用户可能会访问到不同的机器上,这样子就达到了分流的效果,服务器的压力就会减小。

由于数据库需要保证数据的可靠性,万一某一台数据库挂了,并且没有备份的话,那么这个数据就无法访问了,这在大型系统中是不允许出现的,于是乎,就有了数据库的主从部署。

但事实上,随着业务发展,数据库的压力也越来越大,主备部署并不能解决数据库访问性能的问题,于是乎我们需要进行分库分表,在数据库主备的基础上,我们会把一个数据量很大的表拆成多个表,并且把数据库请求分流到不同的数据上,比如说100个分库,100个分表,就相当于把一个数据表划分成10000个数据表。

分布式技术

此时又出现一个问题,如果一个数据库有多个备库,并且当主库挂掉的时候需要进行主从切换时,主备数据库之间的数据就可能发生不一致,而这也是分布式理论研究的问题之一,因为比较复杂,我们这里就略过不讲。

刚才说到了分布式技术,其实负载均衡、分库分表都是分布式技术的一种实现,如果你不想做分库分表,那还有什么办法能够减轻数据库访问的压力呢?于是缓存就出现了,缓存可以让服务器先把请求打到缓存上,由于缓存的数据一般在内存中,所以访问速度会非常快,这些请求无需经过数据库。

随着业务发展,缓存的单点压力也会比较大,于是乎分布式缓存就出现了,通常来说,缓存难以保证数据的可靠性,因为它们的数据可能会丢失,同时缓存只能存储一部分的数据,并不能解决所有问题。

所以当某些业务的请求量非常大的时候,光靠缓存也解决不了问题,此时我们还可以通过消息队列来帮我们解决大流量并发请求的问题。

总结

我们可以通过消息队列来存储一部分的请求消息,然后根据我们服务器处理请求的能力,把消息再逐步取出来,接着去把这些消息逐渐地进行处理,这样就可以很好的解决高并发的问题。当然,前提是消息队列要保证消息存储的可靠性,这也是大部分消息队列都会保证的能力。

一口气讲了这么多,算是把 Java 后端的大概面貌介绍清楚了,除此之外还有很多东西没讲到,真要讲完的话一晚上也说不完。

总体来说,Java 后端技术,说难不难说简单也不简单,我尽量把这些内容都讲的比较通俗易懂,事实上每项技术的背后都有特别多复杂的实现原理,当然,在你理解了 Java 后端技术的整体概念以后,相信对于你之后的学习会更有帮助。

以上仅代表个人观点,如果有哪里错误了,欢迎下面留言告知。谢谢

 


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

相关文章

Web开发从前端、后端、编程语言、到框架的初学指南

[导读] 作为一篇Web开发初学者指南,本文从学习什么出发到如何专攻。从前端、后端,到编程语言,再到框架,或许对打算进军Web开发的您有所帮助。如果你正在阅读这篇文章,你可能是对Web开发有某种兴趣,甚至你开…

数据库与后端语言

什么是数据库 数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期储存在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。 什么是后端语言 后端语言,在Web应用中实际上就是向前端提供需要显示网页内容的数据,这些数据大多…

前端和后端分别是什么?

从技术工具来看: 前端:常见的 html5、JavaScript、jQuery... 后端:spring、tomcet、JVM,MySQL... 毕竟,如果这个问题问一个老后端,他掰掰手指可以给你罗列出一堆的名词来,比如设计模式、数据库…

前端 语言

前端语言 名称简介用法网址CSSCSS 是一种描述 HTML 文档样式的语言。CSS 描述应该如何显示 HTML 元素https://www.w3school.com.cn/css/index.aspCSS3CSS3 是最新的 CSS 标准。操作https://www.runoob.com/css3/css3-tutorial.htmlScss/SassScss是CSS的预处理器,一…

前后端语言简析

目录 什么HTML语言? 什么是CSS语言&#xff1f; 什么是Javascript语言&#xff1f; 什么是PHP语言&#xff1f; 什么是Mysql语言&#xff1f; 什么HTML语言? 作用&#xff1a;定义的是【网站显示的内容】。 表现形式&#xff1a;<标签名>内容</标签名> …

聊聊开发中经历的几种后端语言

前言 谈这个话题&#xff0c;没有任何语言之争&#xff0c;只是个人开发的经历。 适合 开发语言的选择只是当时条件下适合每个项目或者每个团队乃至每个公司的最佳选择&#xff0c;并不是说XXX公司也用这个我们用这个肯定没问题。 当时还在某手机公司&#xff0c;有次跟某公…

服务器后端的编程语言

本文为 csdn cedricliang 编纂翻译&#xff0c;如有转载&#xff0c;请于原文篇头出标明译者及原文出处&#xff0c;以示尊重&#xff01; 翻译&#xff1a;cedricliang 原文&#xff1a;http://blog.csdn.net/cedricliang/article/details/48437437 对于那些需要web服务的初创…

这么多语言,究竟哪个适合写后端,Java还是?

温馨提示 请拖动到文章末尾&#xff0c;长按识别「抽奖」小程序。现金红包等你来拿。 【公众号回复“1024”&#xff0c;送你一个特别推送】 9:10约会&#xff0c;真爱&#xff0c;请“星标” 前言 作为开发者我们都知道&#xff0c;开发后台语言可选择的方向会很多&#xff0c…

【编程语言】盘点当前主流的后端语言,随便选哪一种都能月薪过万!

当前主流后端开发语言如下&#xff1a; Java 笔者目前是Java开发工程师。Java一般用来做应用的&#xff0c;它作为热门服务端语言活跃多年了&#xff0c;很多公司都有找Java程序员&#xff0c;市场有很多需求。所以说&#xff0c;选择学习Java&#xff0c;也许不是最好的&…

2021最热门的后端编程语言排行榜出炉!

三足鼎立 截止2020年底&#xff0c;后端编程语言中&#xff0c;java依然是市场的王者&#xff0c;C/C、python和go占据一部分江山&#xff0c;从2021年开始&#xff0c;未来十年&#xff0c;在后端编程语言中&#xff0c;各位觉得哪个编程语言会越来越流行&#xff0c;java会一…

当前主流的后端语言,谁能夺得桂冠,果然是后生可畏!

主流后端语言 如今编程语言遍地开花&#xff0c;烟花迷乱&#xff0c;小编整理了最流行的几种编程语言如下&#xff1a; 这几种语言都是经久不衰&#xff0c;占领着后端编程界的半壁江山。TIOBE上的语言排名&#xff1a; C、Java、python&#xff0c;C&#xff0c; C#鏖战榜首…

【项目】前端如何与后端交互

在项目开发中使用了前后端分离&#xff0c;当分离后前后端如何进行交互呢&#xff1f;结合项目做一些简单的实践&#xff0c;经过晓风姐的点拨有了本篇分享。 结构 简单的来说是我发现现在写不下去了&#xff0c;我先补好 REST的博客再来更新~~~ RESTful架构 REST全称是Repre…

【学习笔记】Web前端到后端数据的交互

【学习笔记】Web前端到后端数据的交互 &#x1f4d2;博客首页&#xff1a;*铁甲小宝同学* &#x1f4d2; &#x1f31e;文章目的&#xff1a;HTML—入门篇&#x1f31e; &#x1f64f;博主也在学习阶段&#xff0c;如若发现问题&#xff0c;请告知&#xff0c;非常感谢&#x1…

前端和后端的JSON数据交互

因为之前一直在学后端方面的内容&#xff0c;对于前端这块的知识一直半懂半不懂。昨天学了ajax&#xff0c;一些知识点记录下。 前端知识 最重要的两种请求方式&#xff1a;GET、POST。 GET : 有请求参数&#xff0c;无请求体 POST : 有请求体&#xff0c;但也可以有请求参数…

JAVA前端与后端交互面试题

1.前端与后端交互面试题 1.1. 描述Servlet调用过程&#xff1f; 答案&#xff1a; &#xff08;1&#xff09;在浏览器输入地址&#xff0c;浏览器先去查找hosts文件&#xff0c;将主机名翻译为ip地址&#xff0c;如果找不到就再去查询dns服务器将主机名翻译成ip地址。 &…

java后端与前端的交互_前端和后端数据交互的基本知识和常见方式

一。首先了解前端&#xff0c;后端&#xff0c;数据三者的关系。 1.前端常常是是html&#xff0c;css&#xff0c;js三者的构成的页面的总称。运行在客户端。以浏览器为例。 2.后端常常是后端语言。比如php&#xff0c;java等写的一些脚本。来操作服务器。 3.数据&#xff0c;数…

前后端数据交互

简单实现前后端数据交互 功能要求主要涉及框架后端新建项目新建数据库编写实体类编写映射类编写控制器 前端headbody1.用户接口 UI2. JS 交互 运行测试总结 功能要求 简单实现 员工信息 从 后端 服务器 数据库 加载 并 动态渲染 在Web端&#xff0c;以及Web端新增 员工信息 发…

前端和后端如何进行交互?

背景 目前互联网应用呈现方式基本都是app客户端和web端&#xff0c;其次是移动网站和小程序。以app客户端或web端为例子&#xff08;统一认为前端&#xff09;&#xff0c;前端负责用户的交互与数据收集与展示&#xff0c;数据经后台处理存储在数据库。设计师在参与项目时&…

新手入门前端与后端交互案例(HTML+Java+Axios)

需求分析 前端网页向后端发起相应请求,后端响应前端的请求,做出相关操作.如前端发出获取数据库用户表的请求,后端则将用户表的内容返回给前端.简而言之,前端发出对数据库访问的请求,后端需响应结果. 项目结构 后端项目结构 实现步骤 导入相关依赖包 <parent><grou…

web开发中前端页面是如何跟后端服务器数据交互的

后端服务器一般是指servlet容器&#xff0c;用于执行java源程序 常见的网页有html&#xff0c;htm,shtml&#xff0c;asp&#xff0c;aspx&#xff0c;php&#xff0c;jsp等格式 前两个常用于静态网页&#xff0c;后面几个常用于动态网页。 这里前端网页以比较常见的 xx.html…