一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Spring 6.0 將停止支持 Freemarker 和 JSP

Spring 6.0 將停止支持 Freemarker 和 JSP

2021-12-31 23:09碼農(nóng)小胖哥 Java教程

Spring Framework 6.0 第一個里程碑版本已經(jīng)發(fā)布,目前已經(jīng)可以從Spring Repo獲取。這里有一些新變更我們可以提前了解一下。

Spring 6.0 將停止支持 Freemarker 和 JSP

Spring Framework 6.0 第一個里程碑版本已經(jīng)發(fā)布,目前已經(jīng)可以從Spring Repo獲取。這里有一些新變更我們可以提前了解一下。

Java EE遷移

甲骨文已經(jīng)把Java EE捐獻給Eclipse基金會數(shù)年了。Java EE的名稱也變更為了Jarkarta EE,包名也相應地從javax變更為jakarta。例如javax.persistence現(xiàn)在對應為jakarta.persistence。

核心容器

在本次里程碑版本中涉及到的兩個核心容器規(guī)范JSR-250和JSR-330的包名都會遷移到Jakarta EE。

持久層

Jakarta EE的持久層規(guī)范也將在此次里程碑版本中完成遷移。這意味著javax.persistence和jakarta.validation都將實裝。對應 Hibernate ORM 5.6.x 和 Hibernate Validator 7.0.x 。

Web 應用

Servlet中間件基準線

由于Jakarta EE的合并遷移,Servlet中間件也要進行升級。Tomcat 10, Jetty 11, 或者基于undertow-servlet-jakarta 的 Undertow 2.2.14 是目前里程碑版本的基準線。

進一步移除過時API

一些過時的基于Servlet的組件已經(jīng)在本次里程碑版本中移除。

Commons FileUpload 上傳組件已經(jīng)被移除。

相關的前后端模板Tiles布局組件例如FreeMarker、JSP停止了支持。現(xiàn)在Spring將精力放在了基于Restful的Web架構。

Controller掃描機制變動

現(xiàn)在Spring MVC和Spring WebFlux將不再將類上單獨有@RequestMapping的Spring Bean視為控制器。在6.0之前默認情況以下代碼是可以的:

  1. /**
  2. * 6.0之前
  3. * @author felord.cn
  4. */
  5. @Component
  6. @RequestMapping("/foo")
  7. public class FooController {
  8. @GetMapping("/hello")
  9. public Map hello() {
  10. return Collections.singletonMap("hello", "world");
  11. }
  12. }

6.0之前相關基于AOP的代理機制將失效, 請為此類控制器啟用基于類的代理 。

在6.0之后默認情況下必須有@Controller或@RestController注解才可以被視為控制器。

HttpMethod

請求方法HttpMethod在6.0之前為Java枚舉。

  1. /**
  2. * 6.0 之前
  3. *
  4. * @since 3.0
  5. */
  6. public enum HttpMethod {
  7. GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE;
  8. private static final Map mappings = new HashMap<>(16);
  9. static {
  10. for (HttpMethod httpMethod : values()) {
  11. mappings.put(httpMethod.name(), httpMethod);
  12. }
  13. }
  14. @Nullable
  15. public static HttpMethod resolve(@Nullable String method) {
  16. return (method != null ? mappings.get(method) : null);
  17. }
  18. public boolean matches(String method) {
  19. return name().equals(method);
  20. }
  21. }

在6.0以后改為Java類:

  1. public final class HttpMethod implements Comparable, Serializable {
  2. private static final long serialVersionUID = -70133475680645360L;
  3. private static final HttpMethod[] values;
  4. private static final Map mappings = new HashMap<>(16);
  5. public static final HttpMethod GET = new HttpMethod("GET");
  6. public static final HttpMethod HEAD = new HttpMethod("HEAD");
  7. public static final HttpMethod POST = new HttpMethod("POST");
  8. public static final HttpMethod PUT = new HttpMethod("PUT");
  9. // 其它省略
  10. }

其它前沿

在2022年的1月份Spring Framework 6.0的第二個里程碑和對應的Spring Boot 3.0第一個里程碑將和大家見面。

原文鏈接:https://mp.weixin.qq.com/s/G2an6b5jg329PudDGgTvOA

延伸 · 閱讀

精彩推薦
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關于小米推送Java代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩(wěn)中求8032021-07-12
  • Java教程Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決

    Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數(shù)據(jù)的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發(fā)現(xiàn)了對于集合操作轉(zhuǎn)換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關于Java8中S...

    阿杜7482021-02-04
  • Java教程xml與Java對象的轉(zhuǎn)換詳解

    xml與Java對象的轉(zhuǎn)換詳解

    這篇文章主要介紹了xml與Java對象的轉(zhuǎn)換詳解的相關資料,需要的朋友可以參考下...

    Java教程網(wǎng)2942020-09-17
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發(fā)項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經(jīng)有好久沒有升過級了。升級完畢重啟之后,突然發(fā)現(xiàn)好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程Java實現(xiàn)搶紅包功能

    Java實現(xiàn)搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現(xiàn)搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
主站蜘蛛池模板: 美国女网址www呦女 美国复古性经典xxxxx | 国产精品午夜性视频网站 | 午夜福利在线观看6080 | 精品视频手机在线观看免费 | 国模丰满美女冰漪34d | 欧美一区二区日韩一区二区 | 日本高清免费观看 | 乌克兰少妇大胆大BBW | 禁忌4中文 | 国产欧美在线播放 | 国产精品久久久久久久久 | 韩剧消失的眼角膜免费完整版 | 国产伦精一区二区三区视频 | 沉香如屑西瓜视频免费观看完整版 | 五月丁香啪啪. | 日韩精品中文字幕久久 | 丁香五香天堂网 | 双子母性本能在线 | 国产大片免费在线观看 | 国产传媒在线播放 | 久久亚洲午夜牛牛影视 | 天天干天天爽天天操 | 成人在线播放视频 | 国产成人精品视频一区 | 网红思瑞一区二区三区 | 很黄的网站在线观看 | 网友偷自拍原创区 | 国产成人综合一区人人 | 国产乱子伦一区二区三区 | 操美女bb| crdy在线看亚洲 | 男女做污事| 蜜桃在线| 爽爽窝窝午夜精品一区二区 | 日产精品一卡2卡三卡4乱码久久 | 亚洲乱码一区二区三区国产精品 | 性一交一无一伦一精一品 | 91精品国产高清久久久久 | 日韩欧一级毛片在线播无遮挡 | 色婷婷综合久久久 | 精品久久久久久影院免费 |