SpringBoot3+Vue3 开发高并发秒杀抢购系统
download: www.sisuoit.com/4456.html
JDK19中有用的新特性
Java Record
// 声明Student Record public record Student(Integer id, String name){ } // 创立Record目标 Student student = new Student(001, "John");
Record和Class相比,有以下特色:
首要Record是public拜访器,带有全部参数的结构办法,且自带toString(),hashCode(),equals()办法;
其次是隐式的final类,不能被承继,特点也是final,经过结构办法创立后不可修改;
终究,没有set(),get()办法,不能声明实例特点,能声明static特点。
public record Student(Integer id, String name){ // 紧凑结构办法 public Student {} // 自界说结构办法 public Student(String name) { this(null, name); } }
除了全部参数的结构办法,还供给紧凑结构办法和自界说结构办法。
Switch
int week = 2; String memo = ""; switch (week) { case 1,7 -> memo = "weekend"; case 2,3,4,5,6 -> memo = "workday"; default -> throw new IllegaArgumentExcepting("Ineffective date"); }
支撑运用箭头->,->和:不能混用。
int week = 2; String memo = switch (week) { case 1,7 : yield "weekend"; case 2,3,4,5,6 : yield = "workday"; default -> throw new IllegaArgumentExcepting("Ineffective date"); }
运用yield关键字回来成果。
Text Block
// 榜首行必须是三个双引号
String colors = """
red
green
blue
"""; colors.indent(4);
文本块在运用时和一般字符串没有差异,但文本块中的缩进会被主动去除,要保存左边的缩进,需求运用Tab键按需移动或许运用indent()办法。
另外还能够运用formatted()办法进行格式化;运用stripIndent()办法删去每行最初和结束的空格;运用translateEscapes()转义字面量。
Var
var num = 0; var name = "John"; var customer = getCuntomer();
var是一个保存字不是关键字,用于声明局部变量。必须有初值。
能够替代显现类型,让代码简洁,但也降低了程序的可读性。
sealed
// 声明sealed类 public sealed class Shape permits Circle, Square, Rectangle { } // 声明子类 // final 子类不能被承继,依然是密封的 public final class Circle extends Shape { } // sealed 子类也是密封类,仍需求指定子类完结 public sealed class Square extends Shape permits RoundSquare { } // non-sealed 子类非密封类,能够被恣意类承继 public non-sealed class Rectangle extends Shape { } public class Line extends Rectangle { }
sealed类首要特色是约束承继,回绝无限的扩张。
Spring Boot的特性
1创立独立的Spring运用程序,而且内嵌Web容器;
2供给主动化装备starter功用,简化Maven装备;
3没有代码生成,无需XML装备就能尽可能地主动装备好Spring和第三方结构;
4开箱即用,运用脚手架创立项目后,一切根底装备就已经完结;
5约定优于装备,界说了常用类,包的方位和结构,代码不需做任何调整,项目就能依照预期运转。
与Spring,Spring Cloud的联系
Spring Boot和Spring都能够创立Spring运用程序,不同的是Spring Boot消除了设置Spring运用程序所需的XML装备,更快更高效更易用。
Spring Cloud是一些列结构的有序组合,供给了快速构建分布式体系中常用东西。而Spring Boot是每个独立的微服务的平台。
Spring Boot3中的变化
1.JDK支撑版别17-20
2.更新Servlet6.0标准
3.支撑Jackson2.14
4.SpringMVC默许运用PathpatternParser,删去过时的FreeMarker和JSP支撑
5.对第三方库更新版别支撑
6.底层依靠从Java EE迁移到Jakarta EE API。
7.支撑GraalVM原生镜像,将Java运用编译为本机代码,供给显著的内存和气动性能改进。
8.支撑Ahead Of Time(运转前编译)。
9.SpringHttp客户端供给根据Micrometer的可调查性跟踪服务,记录服务运转状态
10.其他
运用Spring Boot
从spring-boot-starter-parent开端
starter是一组依靠描述,在运用中参加starter依靠就能够获取Spring相关技能的一站式的依靠和版别。经过starter能够快速发动并运转项目。
starter包含:
依靠坐标和版别;
传递依靠的坐标和版别;
装备类和装备项
// pom.xml
// 在parent标签中指定,表明承继父项目
org.springframework.boot
领取专属 10元无门槛券
私享最新 技术干货