一、背景
前后端分离已经成为互联网项目开发的行业标准方法。通过nginx+可以有效解耦(也可以中间加一个),前后端分离将为未来大规模分布式架构、弹性计算架构、微服务提供基础。架构、多终端服务(多客户端,如浏览器、车载终端、、IOS等)打下坚实的基础。这一步是系统架构从猿进化到人的必经之路。
核心思想是前端HTML页面通过AJAX调用后端API接口,与JSON数据进行交互。
一般情况下,外网只能访问Web服务器,内网只能访问应用服务器。
在以前的大多数J*a Web项目中,J*a程序员既是父亲又是母亲,既从事前端又从事后端。随着时代的发展,很多大中小型公司也逐渐开始将前后端的界限区分得越来越清晰。前端工程师只负责前端的事情,后端工程师只负责后端的事情。俗话说,艺有专攻。如果一个人什么都知道,那么他终究什么都不擅长。大中型企业需要专业人才,小企业需要通才。但为了个人职业发展,前后端需要分开。
2、不分离的时代(各种耦合)
早期主要使用MVC框架。 Jsp+的结构图如下:
基本上,所有请求都发送到控制器,控制器接受请求并根据请求信息将它们分发到适当的 JSP 进行响应。同时,还根据JSP需求生成实例并输出到JSP环境。 JSP中的数据可以通过直接调用方法或者使用自定义标签来获取。
需要注意的是,这个View还可以使用 、 等模板引擎。使用这些模板引擎可以使开发过程中的分工更加清晰,提高开发效率。
所以,这个时期有两种开发方式:
方法一
方法2
方法2已逐渐被淘汰。主要原因有两个:
因此,方法2逐渐不被采用。不过,不得不说,方法一其实至今仍然被很多小型传统软件公司所采用。那么,方法1和方法2有哪些共同的缺点呢?
1、前端无法独立调试,开发效率低;
2.前端难免会遇到后端代码,比如:
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="max-width: 100%;letter-spacing: 0.544px;font-size: 15px;color: rgb(62, 62, 62);line-height: inherit;text-align: start;background-color: rgb(255, 255, 255);box-sizing: border-box !important;overflow-wrap: break-word !important;"><code class="" style="margin-right: 2px;margin-left: 2px;padding: 0.5em;max-width: 100%;font-size: 12px;color: white;line-height: 15px;border-radius: 0px;background: rgb(51, 51, 51);font-family: Consolas, Inconsolata, Courier, monospace;display: block;overflow-x: auto;word-spacing: -3px;letter-spacing: 0px;box-sizing: border-box !important;overflow-wrap: normal !important;word-break: normal !important;overflow-y: auto !important;"><span class="" style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;"><span class="" style="max-width: 100%;color: rgb(98, 200, 243);line-height: inherit;"><<span class="" style="max-width: 100%;color: inherit;line-height: inherit;font-weight: bold;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;">body</span>></span><br style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;" /> <%<br style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;" /> <span class="" style="max-width: 100%;color: rgb(255, 255, 170);line-height: inherit;">request</span>.setCharacterEncoding(<span class="" style="max-width: 100%;color: rgb(162, 252, 162);line-height: inherit;">"utf-8"</span>)<br style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;" /> <span class="" style="max-width: 100%;color: rgb(255, 255, 170);line-height: inherit;">String</span> name=<span class="" style="max-width: 100%;color: rgb(255, 255, 170);line-height: inherit;">request</span>.getParameter(<span class="" style="max-width: 100%;color: rgb(162, 252, 162);line-height: inherit;">"username"</span>);<br style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;" /> out.print(name);<br style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;" /> %><br style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;" /><span class="" style="max-width: 100%;color: rgb(98, 200, 243);line-height: inherit;"></<span class="" style="max-width: 100%;color: inherit;line-height: inherit;font-weight: bold;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;">body</span>></span><br style="max-width: 100%;font-size: inherit;color: inherit;line-height: inherit;box-sizing: border-box !important;overflow-wrap: inherit !important;word-break: inherit !important;" /></span></code></pre></p>
这种方法耦合性太强。那么,即使使用其他模板引擎,也无法编写J*a代码。前端不可避免地要重新学习模板引擎的模板语法,这会无谓地增加前端的学习成本。就像我们不想在后端开发中写前端一样,想想如果前端代码嵌入到你的后端代码中你会作何感想?因此,这种做法是非常不合适的。
# 互联网项目开发的业界标准使用方式
# 南昌团购网站建设排名
# 网站导航优化要点分析
# 360关键词seo教程
# 嘉兴网站建设建站
# 富锦网站关键词排名地址
# 营销场景运营推广方案
# 新山村网站建设推广
# 湛江房地产网站建设
# 优化网站如何提高排名
# 营销趋势抖音怎么做推广
# seo优化推广网站哪个比较好
# 淮南抖音seo搜索排名
# seo网站推广公司推荐怎么做
# 日照哪个网站建设推广多
# 猪肉营销推广
# 郑州全网营销推广方式
# 前后端分离
# 庐江进口营销推广策划
# 如何开好门户网站推广
# 潜江全网推广网站官网
# react网站加载优化
相关文章:
参加白杨 seo 师徒群培训两个月心得总结:大专女技术员的成长之路,排名不稳的关键词
基于项目化的网页设计与网站建设课程教学改革实践,中国网站建设课程考试
忘记建设银行网银密码怎么办?两种处理方法教你轻松重置,街区营销推广方式
网站建设中页面的 20 个精彩案例,打造整洁优雅炫酷的品牌形象,深圳动画营销推广查询
中国化学工程集团有限公司:工业工程领域的领军者,共建一带一路的排头兵,宝坻区全域营销推广部门
企业网站建设前期需做好哪些准备工作?线尚网络小编分享,丽水网站建设开发商推荐
国家发改委:扩大国家区域医疗中心建设覆盖省份,新增 12 个省份和兵团,营销推广计划有哪些内容
上海视觉艺术学院文化产业研究所成立,助力文创产业发展,营销推广创意图片高清版
档案信息化:信息社会发展的必然要求与长期进程,哪个网站适合视频推广
青岛中交春风景里停工,业主盼早日复工,官方回应来了,蜗牛seo博客推广软件
SEO 优化前的准备工作及整站优化步骤,北海手机网站建设
光明新区:探索低冲击开发雨水综合利用,形成可推广模式,梅州网络推广seo专业
详细解答:企业微信注册所需资质与流程一览,营销类seo关键词
企业定制网站:提升知名度与转化率的关键,你知道吗?,中国邮政营销推广中心
关于提升镇(街道)政务服务水平的通知,椒江专业网站建设
SEO 优化必知:新站老站都需注重关键词库与面包屑导航等细节,昆明网站建设公司排名
公司网站建设所需的元素及决定最终效果的关键因素,滁州网站建设推广哪家好
国内 seo 公司哪家强?这两家公司实力超群,seo主管年终奖
用 ASP.NET 和 ACCESS 开发中小型电子商务网站的分析、设计与实施,网站优化招聘图片素材
成都 seo 服务:网站律师为您的网站增添专业感和信誉度,外贸推广邮件营销技巧
SEO 优化对企业产品销售及形象塑造的重要性,seo原创化妆品
零基础建站神器快刻云建,轻松打造美观实用企业网站,SEO咨询服务推推蛙
外贸企业如何选择谷歌优化公司?看这三个客观数据,萍乡市霸屏推广营销软件
外贸建站靠谱平台有哪些?Wix 和 Shopify 等你来选,佛山营销型网站建设报价
郑州网站建设与制作公司如何选择?专业水平、案例、官网等都是关键,吴中运营推广网站建设
建网站需要什么?域名申请与平台空间选择是关键,利津网站推广培训
百金手指专业二八黑帽 SEO:提升网站排名与流量的理想选择,贵州百度营销推广是什么
宁河 1 单位 1 集体获全总表彰,天津杰出教师名单公示,职工羽毛球赛火热开赛,韶山长沙seo优化团队
华为云云速建站:低门槛快速搭建网站,助力中小企业及个人营销,嘉兴SEO鱼刺系统
SEOer:搜索引擎优化工作者的目标与策略,莱西皮肤优化师招聘网站
中国建设银行大连市分行党委副书记、副行长率长江等接受审查调查,温州清香型白酒网站推广
生鲜电商市场规模猛增,服装行业电商平台孕育无限生机,网站建站和推广
网络时代下,营销型网站建设的关键:用户体验与网站结构,网站建设推广薇辛hfqjwl做词
中石化网站建设方案:打造卓越互动平台,展示品牌特色与社会责任,成都网站优化推广多少钱
北京应急响应级别调整至三级,新发地的作用不可忽视,SEO监控手机赚钱工作
郑州网站建设类型及特点,你了解多少?,seo做外链例子
电商网站制作流程详解:四大流程助你成功建设电商网站,优化网站标题写法
Google 个性化搜索:定制你的搜索结果,优先展示你喜欢的网站,seo推广网站费用具体多少钱
淘宝 seo 搜索优化技巧:提高宝贝转化率与优化标题关键词,金*站的优化企业
六盘水网站建设及网络营销策划:报价、流程与特色产业,培训师推广自己的网站
SEO 站内优化的关键要点及建议,辽阳外贸网站推广哪家好
MBA 教学、毕业论文及案例建设相关工作补充说明,必看,上海百橙网站建设
中山村 BA 暨沙溪镇篮球联赛开幕,体育赋能乡村全面振兴,莆田建设信息网站
SEO 优化常用工具及网站管理员工具介绍,好的网站如何做推广
郑州正规公司网站建设服务:如何选择适合自己的网络公司?,广东网站推广哪家专业
光明新区园区配套环境优化:产业配套宿舍配租与管理办法解读,泉州机械网站建设
新手做 seo 必知:网站建设与 seo 优化的关系及注意事项,唐山装修网站建设
光年 SEO 培训教程:张国平 SEO 培训完整教程全集,不支持退款,整合营销推广地址在哪
SEO 优化的关键步骤:熟悉行业与关键词搜集分析,滁州网站建设预算方案
南宁市举办 2022 年生活垃圾分类进商超主题宣传活动,推广企业网站推荐r火11星美评
相关栏目:
【
网络运营9403 】
【
网站优化48479 】
【
技术教程35695 】
【
IDC资讯40746 】
【
AI推广23161 】
【
网站资讯8470 】
【
网络推广14955 】