前后端分离
如何理解前后端分离
Java服务器端初学者最容易引起误解的一个概念就是: JSP是前端技术。
JSP一定一定一定要知道全称:Java Server Page。是运行在服务器端JVM之上Servlet容器里的,只是执行的结果是HTML,响应给浏览器。
Servlet是Java代码里混入HTML,JSP是HTML代码里混入Java。
浏览器根本不关心服务器端是JSP、ASP、PHP,或者还是原始的Servlet,或是静态服务器上的HTML,只要返回的是合法的HTML就可以。所以,把JSP中静态的HTML部分拿出来,变成简单的HTML文件,放在HTTP服务器上,浏览器只要获取到这些HTML就可以了。动态的数据部分用HTML里的JS通过AJAX的方式从服务器端获取,然后动态操作Dom,完成动态内容的展示。这样前后端就分离了。
引用
作者:陈龙 链接:https://www.zhihu.com/question/304180174/answer/542961677
来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
前后端分离的好处
对于后端程序员来说,省去了等待前端做好.html
,并改写成.jsp
或者模板引擎的时间,而是前后端约定好接口和参数,并行开发,后端不用考虑前端的集成实现等,而且需求变更或版本迭代,只要接口不变,就无需同时修改前后端的代码。
关于前后端分离的详细介绍,建议参考这里
环境搭建
Node.js
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行
Javascript的速度非常快,性能非常好。
安装
- 访问官网下载适合自己电脑操作系统版本的可执行文件
- 双击下载好的.msi文件,记得勾选自动配置环境变量
测试
安装好之后,打开cmd窗口,执行
node -v
能正确返回版本号,比如
v8.11.1
Npm
npm全称Node Package Manager,他是node包管理和分发工具。其实我们可以把NPM 理解为前端的Maven。
我们通过npm 可以很方便地下载js库,管理前端工程。
最近版本的node.js
已经集成了npm
工具,在命令提示符输入npm -v
可查看当前npm
版本。
Nrm
就和Maven从中央仓库下载jar速度慢要配置国内的镜像一样,Npm也存在下载速度慢的情况。
命令配置
配置成淘宝的镜像。
npm config set registry https://registry.npm.taobao.org
但是在多镜像源间频繁切换的时候,这样的配置方式就显得很不方便。
使用Nrm配置
npm install nrm -g
安装好后,执行
nrm use taobao
即可切换到淘宝镜像。
执行
nrm ls
展示所有配置的镜像源
执行
nrm test
测试各个镜像的网路情况
能起到同样作用的软件有很多,比如cnpm
,这里仅举一个例子。