javaweb的发展概述

JavaWEB【MVC购物车】 1.引入 问题1:先有servlet还是先有jsp? 先有servlet web发展史:HTML静态页面---serlvet----jsp 问题2:web开发模式发展:模型1 模型2 只有静态页面的时候: HTML+css 出现servlet之后:可以进行交互 模型1:第一代----把所有的代码(java+html)写一个jsp页面。 一层 模型1:第二代---javabean:将数据库交互的代码进行封装 src 二层 模型2:MVC 问题:三层架构---开发设计模式,将程序分为三层去管 阅读详情

混合开发时代

天地初开,万物混沌,这是一个让人既兴奋又无奈的时代。因为JSP的流行,所以大量的公司采用JSP来开发系统。兴奋,因为他确实比较方便,特别是有了struts2的加持,使得jsp如虎添翼。但是,struts2的架构虽然优秀,可是显得非常的臃肿,繁杂,业务简单的系统还好,稍微复杂点的系统,光是配置文件就能整的你没有脾气。撇开配置文件不说,更让人头疼的是前后端代码在一起,要么一个后端程序员把前端任务都做了,但是效果不好,因为后端程序员与专业前端技能上还是有差距的。要么后端做完给前端,出问题再还给后端,这个给项目的正常推进以及项目管理带来十分大的困难。

我们看看JSP带来的问题

java工程师:我这个功能写完了,你把前端效果调一下呗

前端工程师:我看了一下拿不到数据啊,我怎么调

java工程师:数据我给了啊

前端工程师:那为什么显示不出来

java工程师:我写了个逻辑控制啊,你需要传递XX参数就能看到了啊

前端工程师:这个逻辑前端就能做啊,为啥要到后端处理再给我?

java工程师:#¥@#¥¥%##¥%.....

前端工程师:$%^$%@#$......

其实,最根本的原因就是,JSP在MVC(了解即可,后面单独介绍)结构中属于展示层,但是在JSP又可以写业务甚至做数据层的事,这就造成了设计上的困难与开发中的混乱。在这种情况下,亟需一种能够将展示层与业务分离开的技术,这样才能加快软件开发的进度,并且更加容易设计和维护系统。


 

 

前后分离时代

为了解决以上问题,技术在前后端不断的进化。


java从jsp转向了restful结构,springMvc一跃而起,将struts2远远抛在身后,springMVC最大的方便就是配置文件大大降低,甚至已经做到了0配置。通过注解替代配置确实是一个令人兴奋的做法。前后端不再需要往同一个文件里写逻辑,而是通过json的方式传输数据。java工程师可以不需要再去处理前端问题,而将工作重点转向了业务的编写。一般来说,后端开发的过程中会有接口文档,告诉前端人员如何获取数据,数据结构是什么样的,这样可以极大的方便前端人员开发。

前端技术也在不断的演进之中,与后端进行分离以后,采用ajax技术对服务器进行请求,而基于restful风格的项目也能够很好的处理前端的请求,前端也可以专注于自己的组件化,工程化改造。

我们嗯看看前后分离的效果

前端工程师:我页面做完了需要数据

java工程师:好的,文档已经写好,你照着文档上的路径去获取数据就行了

这样的结构无疑大大提升了工作效率和降低了沟通成本。

移动应用时代

 

到了移动应用时代,后端不再单单为WEB提供数据接口了,因为会有各种客户端都会请求服务器,比如手机,pad等。到了这个时候,已经是必须将前端和后端分开,因为现在的前端不仅仅包含WEB页面了。

由于现在的企业级应用,规模在不断的扩大,架构也越来越复杂,所以到目前,又出现了新的前后端技术来接受挑战。比如spring的spring boot 这个简直就是打开了新世界的大门,让开发过程更加便捷,比如开发一个项目会需要很多jar包,很多包又会有不同的版本,每次组织一次开发工具都会劳民伤财,累觉不爱,spring boot出现以后你就不怎么需要去管理这些基础设施了,当然他还有很多其他厉害的功能,我们后面再说。总的说来,你可以更加的专注于业务的开发,而不是将大把的时间拿去调整项目的配置。


angular - react - vue
前端也出现了很多革命性的框架,比如拥抱经典的VUE,一切都是JavaScript 的react,他们带来的是构建大型工程的便利以及极高的性能。

看完这个,很多人觉得我是不是可以不用学习jsp了?其实如果你想深入的学习下去,jsp还是很有必要的,因为jsp与servlet密不可分,但是你知不知道spring mvc 是基于servlet 实现的?所以学习的时候还是有要科学的方法和步骤,这样不但能学到东西,还能学的扎实。
 

西门子1500T系列凸轮同步(CAMIN指令用法) 添加凸轮工艺对象(TO_CAM),也就是凸轮表。开始编程,先写2个轴的使能、回原点与主轴的定位。监控主轴与从轴的位置、速度关系是否满足实验要求。1.添加工艺对象(1个定位轴,1个同步轴)调用CAMIN指令 ,凸轮耦合。主轴为旋转轴且为模数轴。3.调用插补凸轮盘指令。4.仿真、监控、调试。 阅读详情

相关推荐

Android HDMI-CEC协议解析:从机顶盒到电视的无缝遥控联动

本文深入解析Android HDMI-CEC协议,实现机顶盒与电视间的无缝遥控联动。通过剖析设备角色、消息格式及核心操作码,并结合Android HdmiControlManager API实战,详细讲解如何实现电源同步、按键穿透及音量控制,最终解决多设备遥控繁琐的痛点,提升用户体验。

egg99的博客 974

JSP速通

JSP已经过时了?你还在犹豫要不要学JSP?你还不知道JSP需要学哪些东西?如果你有这些疑惑,看完本文相信能为你解惑

热爱编程、热爱生活、热爱探索 4031

Halcon手眼标定实战:九点标定法从入门到精通(附完整代码)

本文详细介绍了Halcon环境下九点标定法的完整实现流程,从基础概念到实战技巧,帮助开发者快速掌握手眼标定技术。通过精确采集图像坐标与机械坐标,计算仿射变换矩阵,实现相机与机械臂坐标系的精确映射,适用于工业自动化中的平面定位场景。

v4w5x6的博客 411

java框架002——jsp(本质也是servlet)

一、JSP简介 1。JSP用于简化Servlet编写。JSP是一种实现普通静态HTML和动态内容混合编码的技术。 2。JSP只需对网页中的要动态产生的内容采用Java代码来编写,而对固定不变的静态内容采用普通静态HTML页面的方式编写。 3。JSP设计的目的在于简化表示层的表示。 4。JSP页面的访问路径与普通HTML页面的访问路径形式完全一样。 5。JSP页面是由HTML语句和嵌套在其中的Java代码组成的一个普通文本文件,JSP 页面的文件扩展名必须为.jsp。 6。在JSP页面中编写的Java代码需要

weixin_45084986的博客 4003

基于51单片机的智能花盆灌溉系统设计与实现

本文详细介绍了基于51单片机的智能花盆灌溉系统设计与实现,通过DS18B20温度传感器、土壤湿度传感器和LCD1602显示屏等硬件模块,结合精确的算法控制,实现自动监测与灌溉。系统解决了传统灌溉依赖定时器、缺乏可视化界面的问题,适合上班族、园艺爱好者和植物园工作人员使用,有效提升植物养护效率。

honey的博客 1014

OpenStack详解、排错、经验总结

第1章 Openstack简介 1.1 计算(Compute):Nova。 一套控制器,用于为单个用户或使用群组管理虚拟机实例的整个生命周期,根据用户需求来提供虚拟服务。负责虚拟机创建、开机、关机、挂起、暂停、调整、迁移、重启、销毁等操作,配置CPU、内存等信息规格。自Austin版本集成到项目中。 1.2 对象存储(Object Storage):Swift。 一套用于在大规模可扩展系统中通过内置冗余及高容错机制实现对象存储的系统,允许进行存储或者检索文件。可为Glance提供镜像存储,为Cinder提供

weixin_40548182的博客 1974

轻松理解Servlet、JSP与MVC架构

Servlet是Java Web技术中的一种用于处理客户端请求的服务器端程序。它是基于Java技术实现的,能够与Web服务器进行交互,接收HTTP请求,处理请求并返回响应给客户端。Servlet是一种典型的基于事件的编程,主要处理逻辑通常集中在doGet和doPost方法中。JSP(Java Server Pages)是一种动态网页技术,允许在HTML中嵌入Java代码片段,实现动态内容的生成。与Servlet相比,JSP页面更便于开发者编写和维护,因为它将程序逻辑与页面显示分离。

m88997766的博客 1660

调节桌面图标大小的方法(编程)

如果你对其他操作系统或编程语言有类似的需求,可以根据具体的情况进行相应的调整和搜索相关的库和方法。在编程中,我们可以使用各种桌面应用程序来调节桌面图标的大小。库提供的函数,我们获取了桌面图标的窗口句柄,并使用Windows消息发送方式设置图标的大小。你可以根据自己的需求修改代码中的图标大小值,并在运行代码后观察桌面图标的变化。函数并传入所需的图标大小,这里设置为48x48像素。首先,我们需要使用Python的第三现的方法。首先,我们需要使用Python的第三方库。首先,我们需要使用实现的方法。

CyberFlare的博客 438

JSP及MVC三层架构

JSP及MVC三层架构

JeromeTCHao的博客 2145

QGIS将经纬度坐标转成点

QGIS绘制一张地图

weixin_46713695的博客 6056

手把手实现STM32+ESP8266+原子云服务器+手机APP应用——第三节-编写STM32程序实现STM32+ESP8266+原子云服务器+手机APP互相通信—远程数据传输及控制灯

接上一篇,本节使用原子云服务器。编写STM32程序实现STM32+ESP8266+原子云服务器+手机APP互相通信—远程数据传输及控制灯。使用的硬件包括:STM32F103(任意其他款系列也可以的)、正点原子ATK-ESP8266、LED灯。实现编写STM32程序代码来传输单片机数据到原子云服务器和手机APP进行显示,同时通过手机APP和原子云服务器可以远程控制单片机,例如本节实现远程点/灭灯,以此可以扩展开发更多的功能。本专栏本系列的相关文章可查看下面链接:

嵌入式阿齐Archie 8414

2024还有必要学JSP吗?,你不懂还不学?

以后访问1.jsp就不再重新编译jsp文件了,直接调用class文件来响应浏览器。当然了,。既然JSP是一个Servlet,?我们来看下上面1_jsp.java的源码就知道了。原来就是用write()出去的罢了。\r\n");?再看回1_jsp.java文件,**JSP内置了9个对象!**内置对象有:out、session、response、request、config、page、application、pageContext、exception。。

m0_58269070的博客 2733

SkillClaw:让大模型 Agent skill在多用户生态中实现群体进化的框架

随着大模型应用步入深水区,基于 LLM 的智能体(Agent)正从单一的“沙盒玩具”转变为处理真实世界复杂任务的生产力工具。然而,现有的 Agent 系统通常面临一个致命瓶颈——部署即固化。为了解决这一问题,最近有一篇新论文**《SkillClaw: Let Skills Evolve Collectively with Agentic Evolver》**提出了一种多用户生态 Agent 群体进化框架。

kakaZhui的博客 263

JavaWeb——Mybatis-入门(1/6)-介绍(MyBatis 引入背景、MyBatis 概述、MyBatis 历史发展、MyBatis学习总览)

MyBatis 定义与定位定义MyBatis 是一款优秀的持久层框架,专注于数据持久化操作,即将数据在内存与数据库之间进行存储、读取和管理,确保数据持久存储且能高效访问。定位在 Web 开发的三层架构(控制层、业务逻辑层、数据访问层)中,MyBatis 主要用于数据访问层(DAO 层),负责与数据库交互,执行数据的增删改查等操作,是连接 Java 程序与数据库的重要桥梁。MyBatis 与 JDBC 的关系JDBC 规范介绍。

li13437542099的博客 785

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

java web发展

javaweb发展历程

hyf1712011164的博客 560

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

浅谈JavaWeb

谈下对JavaWeb, Servlet,JSP的笼统认识 网页的出现 自从http协议,html语言出现。通过网络,浏览器从远程服务器上获取用html语言写的网页并展示出来。 网页可以是静态的。服务器可以只放html页面就够了。 随着发展,人们需要动态的网页。不同的用户,请求相同的页面,要看到不同的内容。为了方便,加入编程语言,C#,Java,Python,只要这个语言能用Socket...

数据产品小lee 288

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Web,JavaWeb,SpringMVC,SpringBoot是什么?

Web,JavaWeb,SpringMVC,SpringBoot是什么? Web web是网页的意思,有静态web和动态web两种形式 静态web:即不会变的web网页,不同时间不同人访问展示的都是相同的页面和数据 实现:HTML、CSS 动态web:动起来的网页,展示出的页面数据会根据时间和访问者的变化而动态变化 实现:JSP、PHP等 JavaWeb 在java中,动态web资源开发的技术统称为javaweb 实现动态web资源开发的技术有哪些? 1.ASP:代码量大,维..

qq_41181181的博客 4977

一、java web的发展历史

java web自己本人的理解

siyu9412的博客 762

javaweb欢迎页面_浅谈JavaWeb架构演变

点击上方“Java知音”,选择“置顶公众号”技术文章第一时间送达!来源:Alan_beijingcnblogs.com/wangjiming/p/10376010.html一 JavaWeb架构演变在java架构模式中,我们可以将MVC架构模式抽象为如下结构:View层。View层即UI层,可采用的技术如JSP,Structs,SpringMVC等Controller层。Controll...

weixin_35415045的博客 157

JavaWeb基础专项复习2——JSP文件

JavaWeb早期JavaWeb中期:servlet,在servlet中需要写大量的JavaWeb后期JSP,只需要在html中直接添加动态信息,即java代码片段就可以了。服务器会把所有的<html>语句转换成response.getWriter().println(“<html>”);html + java代码 + JSP动态标签 = jsp (JSP 是在传统的网页 HTML 文件中插入 Java 代码和 JSP 标签,从而形成 JSP 文件,后缀名为.jsp。

2301_78566776的博客 1421

JavaWeb介绍

Web开发是为Internet(World Wide Web)或Intranet(私有网络)开发网站所涉及的工作。Web开发的范围可以从开发简单的纯文本单个静态页面到复杂的基于Web的Internet应用程序(Web应用程序)。 静态web:动态web:可以读取一些服务器存在的数据,例如: 缺点页面会动态展示:web的页面展示效果因人而异。 缺点优点微软:国内最早流行的就是ASP 在HTML中嵌入VB的脚本,ASP+COM优点缺点优点缺点B/S:浏览器和服务器 C/S:客户端和服务器 sun公司主推的B

希望有点用 2万+

Java Web开发技术发展历史

Java Web开发历史可以追溯到20世纪90年代末期

白白白鲤鱼的博客 1565

一、[JAVA WEB]Java Web发展史介绍

参考文档: https://www.cnblogs.com/whx7762/p/7723508.html https://blog.youkuaiyun.com/weixin_39893958/article/details/84389384 https://www.jianshu.com/p/79781dff3fd4 简介 1995年java语言的诞生,刚好赶上了网络时代,java三大军:JavaSE(桌面程序, Java Platform Standard Edition),JavaME(手机端,Java Plat

qq_43421035的博客 1847

从零开始写javaweb框架 pdf_Java Web架构演变

作者: Alan_beijing来源:cnblogs.com/wangjiming/p/10376010.html一 JavaWeb架构演变在java架构模式中,我们可以将MVC架构模式抽象为如下结构:View层。View层即UI层,可采用的技术如JSP,Structs,SpringMVC等Controller层。Controller表示控制器层,可采用的技术,如Servlet/Fi...

weixin_39961522的博客 146

JavaWeb-Tomcat的安装与配置

JavaWeb 需要掌握的知识 JavaSE基础知识 (面向对象 , IO,多线程) HTML ( 表单 :post / get) CSS (选择器) Js (会写就好) jQuery ( 【 $(选择器).事件】 ) MySQL ( 增删改查 ) JDBC (使用JDBC操作数据库) 加载驱动 获取连接 创建一个执行SQL的对象 (安全的 , 普通的) 事务 JavaWeb开发入门...

weixin_43958460的博客 2346

网站发展的技术思考

Java Web项目随着用户的增长,对Web服务的部署架构会提出越来越高的要求,本文是想从一个Java Web项目的角度去考虑一个网站从0用户到亿级用户的发展过程中,Java Web项目的架构变化。 未完待续... ... 1. 单机版 2. 多机版 3. 集群版

288
上一篇: zookeeper使用方法
下一篇: javaWeb项目说明
iamlinuxasd
博客等级 码龄10年 4粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值