私はSpring Bootアプリケーションを書くのに忙しいですが、メインアプリケーションからRestControllerにオブジェクトを渡す方法を見つけることができません。ここでSpring:アプリケーションからRestControllerにオブジェクトを渡す
は私Application.javaです:
@SpringBootApplication
@ComponentScan("webservices")
public class Application {
public static void main(String[] args) {
ApplicationContext ctx = SpringApplication.run(Application.class, args);
Application app = new Application(ctx);
LinkedBlockingQueue<RawDate> queue = new LinkedBlockingQueue<>();
// do other stuff here
}
}
そして、ここでは私のRestControllerです:
@RestController
public class GoogleTokenController {
private LinkedBlockingQueue<RawData> queue;
@CrossOrigin
@RequestMapping(value = "/google/token", method = RequestMethod.POST, headers = {"Content-type=application/json"})
@ResponseBody
public String googleToken(@RequestBody AuthCode authCode) {
System.out.println("CODE: " + authCode.getAuthCode());
// do other stuff here
return "OK";
}
}
は、だから私はにApplication
クラスで作成されたLinkedBlockingQueue<RawData>
の同じインスタンスを渡したいですGoogleTokenController
クラス。しかし、春は自動的にGoogleTokenController
クラスを作成するので、私はそれをどうするかわかりません。
ご注意ください私は非常に春に新しいです。ありがとう。
こんにちはおかげで、私はこれを行う場合GoogleTokenControllerでキュー変数がnullです。 –
@ArmandMareeあなたは 'GoogleTokenController'を' new GoogleTokenController() 'で自分で作成していますか?それをしないでください(これはSpringの依存性注入で人々が作る1番の間違いです) - Springに 'GoogleTokenController'を作成させてください。 – Jesper
いいえGoogleTokenControllerを作成していません。春はそれだけでそれを行います。 –