问?:这就是判断项目是否是前后端分离的要点对吗?如果是不分离,就是直接返回页面,如果是分离的话,仅仅返回结果,再由页面进行回调?

回答:可以将控制器返回内容作为判断项目是否前后端分离的一个要点,但这并非唯一判断标准,下面详细介绍前后端分离与不分离模式下的特点及判断依据。

前后端不分离
在前后端不分离模式中,后端负责处理业务逻辑的同时,也承担页面渲染工作。后端控制器直接返回视图名称,借助视图解析器找到对应的模板文件,将数据填充到模板中生成完整的 HTML 页面返回给客户端。

特点
控制器返回视图:如 ViewController.java 所示,使用 @Controller 注解,方法返回视图名称,后端完成页面渲染。

D:\Desktop\info-manage-main\src\main\java\com\sm\graduation\view\ViewController.java
Apply
@Controller
@RequestMapping("/view")
public class ViewController {
@GetMapping("/welcome")
public String welcome() {
return "page/welcome";
}
}
前后端耦合度高:前端页面依赖后端模板和数据,前后端开发相互影响,协作效率低。
前后端分离
前后端分离模式下,前端和后端独立开发、部署。前端负责页面展示和交互逻辑,后端专注于提供数据接口。前端通过 AJAX 等技术调用后端接口获取数据,然后在前端进行页面渲染。

特点
控制器返回数据:后端使用 @RestController 或 @Controller 搭配 @ResponseBody 注解,方法返回 JSON、XML 等数据格式。

java
Apply
@RestController
@RequestMapping("/api")
public class DataController {
@GetMapping("/user")
public User getUser() {
User user = new User();
user.setName("John");
user.setAge(30);
return user;
}
}
前端通过 AJAX 请求数据:前端使用 JavaScript 框架(如 Vue、React)发起 AJAX 请求,获取后端数据后渲染页面。

javascript
Apply
fetch('/api/user')
.then(response => response.json())
.then(data => {
// 处理获取到的数据并渲染页面
console.log(data.name);
});
前后端解耦:前后端可并行开发,提高开发效率,且前端可跨平台复用。

总结:
判断要点总结
返回内容:后端返回视图名称,通常是前后端不分离;返回数据(如 JSON),多为前后端分离。
开发模式:前后端开发高度依赖,同时进行页面和逻辑开发,倾向于不分离;前后端独立开发、部署,各自负责展示和数据接口,属于分离模式。
技术栈:若项目使用服务端模板引擎(如 Thymeleaf、JSP),多为不分离;若前端使用独立框架(如 Vue、React),后端提供 RESTful API,则是分离模式。
虽然返回内容是重要判断依据,但需结合开发模式、技术栈等多方面因素综合判断项目是否前后端分离。

不能自闭和,必须成对

在script里,一般用=,因为1‘1’,1!===‘1’

NaN与所有数都不相等(包括自己)

局部变量建议使用let,并且加上"use strict"必须写在script第一行

多行字符拼写:``

模板字符串:let name="qingjian";
let age =3;
let msg=你好呀,${name};