JSP
springboot 默认不支持jsp
可以支持jsp,需要做额外配置,在使用springboot框架时,一般很少使用jsp
thymeleaf(推荐)
springboot 内置 thymeleaf,用来替代 jsp,将数据显示到页面上
从 springboot2.x 开始,thymeleaf 性能提升,开始流行
AJAX(推荐)
springboot + ajax 最为流行,而且现在多采用 前后端分离 开发
介绍
AJAX ,全称:Asynchronous Javascript And XML,中文:异步 JavaScript 和 XML
JavaScript:是一种可以在浏览器运行的脚步语言
XML:可扩展标记语言
AJAX 返回的数据编码格式一般为 UTF-8
功能
浏览器与服务器交换数据的一种方式,浏览器端代码使用JavaScript开发,服务器返回的数据是xml格式
与服务器交互数据的三种方式
注意:这里说的不是get、post方法
在地址栏输入url,加载整个页面
提交表单,比如:输入用户名、密码,点击登录时 加载整个页面
AJAX,体验好,在本教程中,采用 AJAX 与服务器交互数据
如:今日头条 https://www.toutiao.com/ ,滚动到下面自动加载数据
如:网易邮箱登录 https://email.163.com/ ,密码错误不会刷新页面,而是有文字提示
同步与异步
同步
一般语言的运行方式都是同步的,即:第一行代码执行完,才会执行第二行代码
例子:就像一个窗口排队买车票,必须排队,前面买完票后,才能下一个人买票
优点:实现起来比较简单
缺点:只要有一个任务(或一行代码)耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行,会造成浏览器无响应
异步
多个任务可同时进行,并且没有先后顺序。也就是说第一行代码没执行完,就开始执行第二行代码,并且哪行代码先执行完,不确定,要看代码的执行耗时
例子:多个窗口买车票,第一个窗口有旅客先买票,买10张票,第二个窗口有旅客后买票,买了1张票,虽然前一个旅客先开始买票的,但耗时长,所以会后执行完
应用场景:耗时很长的操作都应该异步执行,避免浏览器失去响应,比如AJAX