【Java】尝试学习SpringBoot

首先

你好。前不久参加了某家公司的研讨会,得知他们在使用SpringBoot框架,引起了我的兴趣,所以我决定学习一下。为了复习和备忘,我打算把这些知识记录在文章中。

本次内容将涉及概念性的内容。

Spring框架是什么东西?

在介绍SpringBoot之前,我先解释一下Spring Framework。

◆ 关于SpringFramework的内容

    • Javaの世界では老舗とも言えるフレームワーク

 

    • DI(依存性注入)を実現するためのもの

 

    DIをベースに様々な機能を実装して「 統合フレームワーク 」に成長

◆ Spring框架中的”DI”是什么意思?

    • Dependency Injection(依存性注入)

 

    オブジェクト間の依存関係を、オブジェクト内のコードに記述せず、 実行時に外部から呼び出す手法
DIについて.png

◆ 由许多框架构成

SpringFramework是一组多个框架的集合体。其中一些著名的框架包括SpringMVC,SpringRoo,以及SpringBoot。

    SpringMVC:Model-View-Controllerアーキテクチャーによる開発
MVC.png
    • SpringRoo:Spring MVCを補完するライブラリとして登場

コードの自動生成機能ライブラリ
簡単なコマンドを実行するだけで、アプリケーションの枠組みが自動的にできあがるらしい(Railsみたいなイメージ)

SpringBoot

◆ 春季引导诞生

之前所解释的SpringMVC和SpringRoo似乎都非常方便而且好用,但也存在一些问题。SpringMVC需要准确地组合许多Spring系列的库,环境配置也很复杂。SpringRoo虽然在一定程度上可以自动化,但还是相当困难。。

所以,SpringBoot出现了!
SpringBoot是一个快速构建最佳Web应用程序开发的起始工具库。可以说Spring Boot是“Spring MVC的完美形态”。

【SpringBoot 特点】

    • 専用のスターターライブラリを設定ファイルに記述するだけで、 一通りのライブラリの読み込み、環境構築が可能

 

    データベースアクセスなどの機能をほとんど自動化

Spring Boot的优点

在Java世界中,已经涌现出许多高效且能够实现快速开发的框架,被称为“Rails风格”。然而,选择使用Spring Boot的原因是什么呢?

在这里,我将介绍Spring Boot的五个优点。

① 没有繁琐的XML配置文件描述

过去的Java EE开发是充斥着XML配置文件,输入繁琐,错误定位困难等问题不容忽视。

SpringBoot 减少了 XML 配置文件的编写量,具体包括以下内容:

Auto-configuration: 各種設定を必要最低限の記述のみで自動設定
不足する部分はJavaConfigを追加

アノテーションによる開発

使用注释描述来减少编码量。

标注是一种通过”@ Xxx”的形式向编译器和执行环境传达Java语言功能无法表达或补充的信息的方式。
例如:@ before(在方法执行前调用)

标注可以分成三种不同的类型。

标记注释:在某种用途下进行标记
单一注释:可以带有数据
完整注释:可以带有多个数据

③ 内部集成服务器方式

一般情况下,通常需要为应用程序准备Apache、Tomcat等服务器,并在其上添加开发的应用程序来运行。
而相比之下,Spring Boot内置了Java服务器,可以直接启动服务器进行执行。

④ 基于DI的始终如一的实施

由于基于DI,因此SpringBoot具有简洁易懂的特点。

    • 数多くのライブラリがあっても、基本的な設計思想は一貫している

 

    • 新しいライブラリが追加されても覚え直す必要なし

 

    テスト時のインスタンスの差し替え可能

AOP (Aspect-Oriented Programming) => AOP(面向切面编程)

面向別的角度和方面思考,是一種叫做AOP的編程方法。

在面向对象编程时,无法将处理任务有效地分解为对象单位…该怎么办…
同一操作分散到多个对象中…糟糕透了…
有时候会遇到这种困扰(好像称为“横切关注事项”)

在这种情况下,使用AOP!将其分离成一个名为Aspect的模块。通过AOP,可以覆盖面向对象无法覆盖的部分。

⑥ STS (春季工具套件)

Spring Boot提供了框架本体和配套开发工具(STS),与一般的框架不同,Spring Boot的态度是”我们提供框架本体,你可以自由使用”。

【STS的特点】

    • ベースは「 Eclipse 」で、Spring Framework利用のためのプラグインが追加されている

必要な処理が自動化され、コードの作成のみに注力できる
ここまで環境整備を行っているフレームワークはSpring Framework以外にはほぼ無い(らしい)

Spring Boot不是“充分条件”。

框架提供的是“Presentation Layer”部分。在MVC中,它只提供了View(屏幕)和Controller(整体控制)部分。也就是说,它仅仅是提供了一个“机制”,还需要使用其他技术。

例如,在数据库相关方面,需要使用Spring Data JPA和Spring Data MongoDB,而在界面实现方面,还会使用到一个名为模板引擎(Thymeleaf)的工具。

最后

到目前为止,我已经介绍了关于Spring Boot的内容。接下来,我将进行总结。

    • SpringBootでは、主にSpring Frameworkのフレームワークを組み合わせて開発

 

    • 複雑な設定処理の記述が必要ない

 

    SpringBootを使えば、従来よりも簡単に素早く Webアプリケーションを開発できる

如果您读到最后,非常感谢您的阅读!如果有任何错误之处,请您指正,我会非常高兴的!

文献引用

本次主要参考了《Spring Boot2编程入门》进行整理。该书很容易理解地为初学者提供了解释,所以对于有兴趣的人来说,请务必参考。

    • Spring Boot2 プログラミング入門(著者:掌田 津耶乃)

 

    • 初めてでも30分で分かるSpring 5 & Spring Boot 2オーバービュー

 

    • ProEngineer「Webアプリの高速開発ならぜひ利用したい!Spring Bootとは?」

 

    • Qoosky「Java アノテーションに関する基本知識」

 

    • DATA INSIGHT「Thymeleafを使ったテンプレー トベースのJava Webアプリケーション開発につ いて」

 

    • slideshare「20150724 spring勉強会資料」

 

    Marikoootaの日記「アスペクト指向」
广告
将在 10 秒后关闭
bannerAds