見出し画像

Webプログラミングの始め方(13)

ここでのゴール

プログラムを追ってみよう、アノテーションを知ろう

説明

それではようやくJavaのプログラムを見ていきたいと思います。
まずお約束のmain
javaプログラムはmainメソッドから始まりますね。


これがmainメソッドを実装しているクラスになります。
src/main/java/org/example/Main.java
mainメソッドがいますね
mainメソッドはこの一行です。


始めたばっかりの人はおまじない(よくわからんけど、とりあえず書く必要がある)と思ってください。

ちょろっと知っている人は、これはSpringアプリケーションの起動に使っており、mainクラスを渡すことで処理を委譲しています。

なので、mainから処理が始まり、Springアプリケーションはここから起動することになります。

gradleのapplication、bootRunを実行するとアプリケーションが動き、以下のログが出力されればアプリケーションは起動しています。

17:26:55: Executing task 'bootRun'...

Starting Gradle Daemon...
Gradle Daemon started in 2 s 250 ms
> Task :compileJava UP-TO-DATE
> Task :processResources UP-TO-DATE
> Task :classes UP-TO-DATE
> Task :bootRunMainClassName UP-TO-DATE

> Task :bootRun

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.5.4)

2022-01-30 17:27:09.854  INFO 3664 --- [           main] org.example.Main                         : No active profile set, falling back to default profiles: default
2022-01-30 17:27:10.510  INFO 3664 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
2022-01-30 17:27:10.557  INFO 3664 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 51 ms. Found 1 R2DBC repository interfaces.
2022-01-30 17:27:11.416  INFO 3664 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2022-01-30 17:27:11.416  INFO 3664 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2022-01-30 17:27:11.416  INFO 3664 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.52]
2022-01-30 17:27:11.541  INFO 3664 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2022-01-30 17:27:11.541  INFO 3664 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1640 ms
2022-01-30 17:27:12.245  INFO 3664 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2022-01-30 17:27:12.245  INFO 3664 --- [           main] org.example.Main                         : Started Main in 2.863 seconds (JVM running for 3.412)
Tomcat started on port(s): 8080 (http) with
Started Main in 2.863 seconds

この2行でprt8080で待受を行いmainが起動していることがわかります

ここで、ブラウザを開き

http://localhost:8080/customers

URLを上記のようにしてアクセスするとコントローラーのlistメソッドに処理が来ます。

そしてここまでで、出てきている見慣れないもの、メソッドやクラスはあると思いますが、アノテーションと呼ばれる@から始まる書式があるのにお気づきでしょうか?

これらのものです。この@から始まる書式がアノテーションと呼ばれるもので、これらを変数や、メソッドにつけることにより、色々な振る舞いを指定することが出来ます。

この記事が気に入ったらサポートをしてみませんか?