前后端分离的"前"特指浏览器端(或客户端)。

Java服务器端初学者最容易引起误解的一个概念就是: JSP是前端技术。

JSP一定一定一定要知道全称:Java Server Page。是运行在服务器端JVM之上Servlet容器里的,只是执行的结果是HTML,响应给浏览器。

Java EE先有的Servlet,那时候已经有了ASP(同样要知道是Active Server Page的意思)。

由于要在Servlet里面拼大量的HTML代码,所以Java规范学习了ASP,提出JSP。Servlet是Java代码里混入HTML,JSP是HTML代码里混入Java。

浏览器根本不关心服务器端是JSP、ASP、PHP,或者还是原始的Servlet,或是静态服务器上的HTML,只要返回的是合法的HTML就可以。

所以,把JSP中静态的HTML部分拿出来,变成简单的HTML文件,放在HTTP服务器上,浏览器只要获取到这些HTML就可以了。动态的数据部分用HTML里的JS通过AJAX的方式从服务器端获取,然后动态操作Dom,完成动态内容的展示。这样前后端就分离了。

上面的内容回答的是问题描述中的第一个子问题。问题描述里的后两个子问题应该这样理解:2.静态资源和数据接口被部署在两个不同的服务上就算前后端分离?

静态资源和服务(实现接口的业务逻辑),在开发阶段就分离开发,而部署阶段分离部署在不同服务器上,算是严格意义上的前后端分离。

有些小型项目,开发阶段没有分离开发,也就是说前后端代码在一个Project里。在部署阶段也没有分离,例如静态资源还是放在Tomcat里。这些情况,到底算不算前后端分离,关键是是否"严格"看待。3.接第二个问题,如果静态资源(html模板)是jsp,而jsp的所有动态数据均来自另一个服务,那这算不算前后端分离?

静态资源是JSP这个观点就是错误的,不做再次解释。JSP是运行在Server上的,动态获取另一个Server上的数据,这是服务器和服务器之间的调用,只是两台服务器的相互角色和分工不同。JSP所在的服务器被称为Consumer(消费者,也就是服务的使用者),另一台提供数据的服务器被称为Producer(生产者,也就是服务的提供者)。

如果上面为JSP提供数据的服务又调用了第三个服务的接口获取数据,那么就又产生了新的Consumer和Producer关系。

java 前后端分离_到底什么是前后端分离?相关推荐

  1. java 前端 后端 分离_到底什么是前后端分离?

    这里是经常容易被混淆的一些概念. 在说前后端分离之前,要先弄清楚: 1.什么是前端? 2.什么是后端? 3.什么前后端不分离? 4.什么是动态数据? 5.什么是静态文件? 6.什么是动静分离? 然后, ...

  2. python flask 分页前后端分离_【flask + vue 前后端分离博客】创建第一个 Flask RESTFul(一)...

    1. 代码管理 1.1 创建仓库 github 上创建仓库:flask-vuejs-madblog,并选择开源协议为 MIT License(也可以选择 gitee,速度快一些比之 github). ...

  3. 安卓前端与java后端交互_安卓1_基础前后端交互

    1.前端 大体前端界面图 因为是线性排布 所以将按顺序依次介绍 PS: 图中黑色框部分为批注 界面.png (0)属性介绍 1)id:命名 用于跟后端关联 ps:下为 java代码 a = findV ...

  4. java 文本工具类_干货:排名前16的Java工具类

    原标题:干货:排名前16的Java工具类 作者丨Java技术栈 https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Ja ...

  5. java 管理后台前台分离_系统前台后台是否应该分离(包括部署)

    这个问题困惑我很久了,可能前台/后台这个用词不准确,稍微解释一下我的理解, 很多系统都分为前台和后台,其分别针对的使用者也是不同的 1. 前台一般针对"消费"用户(如读者.网购用户 ...

  6. java开发工具排名_干货:排名前16的Java工具类

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...

  7. python逻辑与界面分离_一种数据与逻辑分离的Python单元测试工具

    一种数据与逻辑分离的Python单元测试工具 几个概念 TestCase TestCase是一个完整的测试单元,最小的测试执行实体,就是我们常说的测试用例. TestSuite 以某种特性将测试用例组 ...

  8. map分组后取前10个_人口净流入排名前10的城市,在这10个城市买房,只涨不跌

    最近几年,房价是涨了又涨,达到了最巅峰!最贵的一二线大城市已经涨到了一平米六七万的高价,一套房子下来怎么也得几百万,普通老百姓可能听到这样的价格就吓傻了,这样的数字简直就是天文数字,很多人一辈子都赚不 ...

  9. python后端服务器_毕设里配合Python后端使用的所谓”CGI服务器“

    1.[代码][C/C++]代码 #define _GNU_SOURCE #ifndef __GNUC__ #error FATAL #endif #include #include #include ...

  10. 查询成绩最好的前两名_一级建造师成绩查询前这几件事很重要

    2020年已经只剩下一个月的时间了,12月份是我们向2020年说再见的月份,同样也是我们一级建造师查分的月份,不知不觉中一级建造师考试已经过去两个多月的时间了,马上就到了查分这个令人心动的的时间节点来 ...

最新文章

  1. ListView中添加Button后,Button的点击事件和ListView的点击事件冲突
  2. Acwing799. 最长连续不重复子序列[C++题解]:双指针算法O(n)
  3. JVM:gc什么时候开始?System.gc()能保证gc一定发生吗?
  4. 7价 半导体掺杂_掺杂工艺(一)
  5. 使用linux 的wget下载国外的域名的地址,下载不了,
  6. 基于JAVA+Servlet+JSP+MYSQL的失物招领系统
  7. 全栈开发工程师微信小程序-上(中)
  8. order by排序的用法
  9. 苹果直营店_请谨慎选择百邦苹果售后维修,亲身体验,倒不如直接去直营店呢...
  10. 2018ACM-ICPC 焦作站现场赛 F. Honeycomb(BFS求最短路,卡memset)
  11. HTML5+CSS大作业——三八女人节主题设计(1页)
  12. 金龙云介绍——城轨云相关
  13. oracle database各个版本地址
  14. #300. 【CTSC2017】吉夫特
  15. tcp/ip的模型与原理
  16. vue+mysql实现前端对接数据库
  17. 大连三家软件企业入围全国软件百强排行榜
  18. CVPR-2021 | RepVGG:极简架构,SOTA性能,让VGG式模型再次伟大
  19. 谈谈前端角度出发做好SEO需要考虑什么?
  20. 【Rust日报】2021-11-15 SIMD模块 nightly 已可用

热门文章

  1. 工程施工工地进度监控带天气经纬度相机(监理日志不再难写)
  2. Javaweb面试题整理
  3. cmd命令行把bat或exe执行为windows服务
  4. 实时系统性能测试指标及方法
  5. C++语法篇之STL库
  6. 科技T3国产平台!成功搭载“翼辉国产实时系统SylixOS”
  7. Android studio 导入项目运行
  8. win7站点服务器配置,IIS 7.0安装配置方法图文教程(win7)
  9. Chapter Three : Python 序列之字符串操作详解
  10. Matlab基础(5)——符号运算