Syain.java (service)
L @ServiceでDIコンテナに登録する
package com.example.demo;
import org.springframework.stereotype.Service;
@Service
public class Syain {
public String getName() {
return "tanka";
}
}
MainController.java
L Autowiredとは、自動的にクラスのプロパティ(setter)や、メンバ変数に値を設定する機能
package com.example.demo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MainController {
@Autowired
Syain syain;
@GetMapping("/test1")
public String write1() {
return syain.getName();
}
}
ほう、、、

### アプリ起動時にインスタンスを取得する
Syain.java
package com.example.demo;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
L @BeanはSpring起動時に設定の内容を取り込む
public class Syain {
@Bean
public String getName() {
return "sato";
}
}
TestApplication.java
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
@SpringBootApplication
public class TestApplication {
public static void main(String[] args) {
ApplicationContext syain = new AnnotationConfigApplicationContext(Syain.class);
SpringApplication.run(TestApplication.class, args);
}
}
@Beanって起動時の設定のことか、豆の印象が強すぎてイマイチ頭に入って来んかった。。