springboot jsp、thymeleaf模板引擎和ajax异步请求

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方法

  1. 在地址栏输入url,加载整个页面

  2. 提交表单,比如:输入用户名、密码,点击登录时 加载整个页面

  3. AJAX,体验好,在本教程中,采用 AJAX 与服务器交互数据

    如:今日头条 https://www.toutiao.com/ ,滚动到下面自动加载数据

    如:网易邮箱登录 https://email.163.com/ ,密码错误不会刷新页面,而是有文字提示

同步与异步

同步

一般语言的运行方式都是同步的,即:第一行代码执行完,才会执行第二行代码

例子:就像一个窗口排队买车票,必须排队,前面买完票后,才能下一个人买票

优点:实现起来比较简单
缺点:只要有一个任务(或一行代码)耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行,会造成浏览器无响应

异步

多个任务可同时进行,并且没有先后顺序。也就是说第一行代码没执行完,就开始执行第二行代码,并且哪行代码先执行完,不确定,要看代码的执行耗时

例子:多个窗口买车票,第一个窗口有旅客先买票,买10张票,第二个窗口有旅客后买票,买了1张票,虽然前一个旅客先开始买票的,但耗时长,所以会后执行完

应用场景:耗时很长的操作都应该异步执行,避免浏览器失去响应,比如AJAX


原文出处:/show_1IXiUbR0Qt0.html