1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Spring Bootはとても便利

Last updated at Posted at 2023-11-25

Spring Bootとは

Spring BootとはJavaのフレームワークであり、主に@を使用したアノテーションと呼ばれるものを使用します。

アノテーションというのは注釈という意味であり、コード上に注釈として記述することでそのプログラムが何をするのかというのを伝えることが出来ます。
@Overrideは使われることが多いですよね。
基本的にクラスやメソッド、変数の前に定義されます。

Springの機能を用いることでアノテーションを使って様々なことができます。
細かくどういったことができるのかというのは後述します。

Spring Bootを使用するメリット・デメリット

メリット

  • コードが読みやすくなる
  • コード量の減少

デメリット

  • springの知識が無いと他人が読み取れない

基本的にはコード量が減少することで見やすくなるためメリットの方が大きいです。

SpringBootで使用出来るアノテーション

@Controller

画面遷移を行う際にコントローラーとして認識させることができる
Controllerについて詳細に知りたい方はこちらを参考にしてください

使用例

 @Controller
 public class クラス名 {
   
 }
@Service

クラスに付与することでサービスクラスにすることができる

使用例

 @Service
 public class クラス名 {
   
 }
@Data

クラスに付与することでデータクラスにすることができる
setterやgetterなど使用する際に用いる

使用例

 @Data
 public class クラス名 {
   
 }
@GetMapping()

HTTPリクエストでGETメソッドを受け付ける際にメソッドの最初に付与する
 

使用例

 @Controller 
 public class クラス名 {
     @GetMapping("パス名")
     public void メソッド名() {

     }
 }
@PostMapping()

HTTPリクエストでPOSTメソッドを受け付ける際にメソッドの最初に付与する

使用例

 @Controller 
 public class クラス名 {
     @PostMapping("パス名")
     public void メソッド名() {

     }
 }
@PutMapping()

HTTPリクエストでPUTメソッドを受け付ける際にメソッドの最初に付与する

使用例

 @Controller 
 public class クラス名 {
     @PutMapping("パス名")
     public void メソッド名() {

     }
 }
@DeleteMapping()

HTTPリクエストでDELETEメソッドを受け付ける際にメソッドの最初に付与する

使用例

 @Controller 
 public class クラス名 {
     @DeleteMapping("パス名")
     public void メソッド名() {

     }
 }
@RequstMapping()

@Controllerを付与したクラスに付けることで、リクエスト時に指定しているURLに属性(どういった処理を行うか)を指定できる。

使用例

 @Controller
 public class クラス名 {
     @RequstMapping(value = "パス名", Method = RequestMethod.POST)
     public void メソッド名() {

     }        
 }
@Transactional

Transactionalアノテーションを付与しているクラスやメソッド内でエラーが起きた場合にDBをロールバックすることができる。
Transactionalについて詳細に知りたい方はこちらを参考にしてください

使用例

 @Service
 @Transactional
 public class クラス名 {
 }
@Autowired

Autowiredアノテーションを付与することでnew クラス名()を使用せずにインスタンス化できる。DI(依存性の注入)を行います。DIについてはこちらの記事が分かりやすいです。

使用例

SampleBean.java
 public interface SampleBean {
     public String getParametor();
 }
SampleBeanImpl.java
 public class SampleBeanImpl implements SampleBean {
     public String getParametor() {
     }
 }
SampleController.java
 @Controller
 public class SampleController {
     @Autowired
     SampleBean sampleBean

     public void メソッド名() {
         sampleBean.getParametor()
     }
 }
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?