Java 21的新特性
Java 21是继Java 17之后的一个长期支持版本(LTS),也是一个里程碑版本,其中稳定提供了很多功能。Java 21引入了15个新特性,但是这些新特性大多都是在之前的版本中进行了孵化和预览的,这里拣选这些特性中比较重要且可能比较常用的功能来记录。
Java 21是继Java 17之后的一个长期支持版本(LTS),也是一个里程碑版本,其中稳定提供了很多功能。Java 21引入了15个新特性,但是这些新特性大多都是在之前的版本中进行了孵化和预览的,这里拣选这些特性中比较重要且可能比较常用的功能来记录。
Java 20与Java 19一样也是一个小功能进化版本,其在Java 19的基础之上并没有引入太多的新功能,而是继续孵化之前版本中引入的功能。
Java 19同样是一个小的进化版本,相比Java 18并没有引入更多稳定发布的功能,而是继续对即将要加入的功能进行孵化和预览。
Java 18是继Java 17这个长期支持版之后的第一个小进化版本。Java 18中引入的变化并不多,根据OpenJDK官方网站的介绍,约引入了9个新特性。
这篇文章中所列出的面试题主要提供 Java 相关职位面试使用。其中主要包括 Java 的基础知识、进阶知识和 Spring 系列框架和工具的基础知识、进价知识。还包括一部分使用 Java 操作数据库的相关知识。
Spring Data JPA是整个Spring Data系列框架中比较核心而且强大的ORM框架,它主要基于Hibernate Core实现了JPA(Java持久化接口标准),并同时做了一些增强。所以在应用中使用Spring Data JPA的时候,主要还是使用JPA所规定的一些规范。例如使用注解定义数据实体与数据库表之间的关联,以及数据实体之间的关联关系。
Java 17是继Java 11之后的第一个长期支持版(LTS),其实相对于之前的一个Java发行版本,Java 17引入的新特性并不多,而与日常应用中所密切相关的特性也是比较少的,更多的是使之前版本中处于预览和孵化状态的特性转正。
之前用了几篇文章分析和记录了Spring Security的用法,但是相比其他安全框架来说,Spring Security虽然与Spring Framework结合紧密,却无法称得上轻量。所以在很多项目中,Spring Security就被很自然的放在一边了,转而采用其他的安全框架。Shiro就是这样一个轻量级的选择。
其实在前两篇文章中如果已经明白了Spring Security在Spring MVC中的配置,那么再去理解Spring Security在Spring WebFlux中的配置就十分容易了。这是因为在Spring WebFlux中的配置与Spring MVC中的配置原理基本相似,只是换了一套类而已。
其实在Spring应用中使用Spring Security并不困难,最复杂的事情应该就是如何完成Spring Security的配置了。一旦Spring Security的配置成功完成,那么在Controller中就可以直接使用Spring Security提供的注解来使用Spring Security安全认证的结果。