|
@@ -1,8 +1,13 @@
|
|
|
package com.lovecoding.controller;
|
|
|
|
|
|
|
|
|
+import com.lovecoding.SpringConfig;
|
|
|
import com.lovecoding.service.LoginService;
|
|
|
+import org.junit.Test;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
+import org.springframework.context.ApplicationContext;
|
|
|
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
|
|
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
@@ -14,8 +19,13 @@ public class LoginController {
|
|
|
//第一种方法
|
|
|
//使用属性注入 两行代码解决问题
|
|
|
//默认是按类型匹配 如果我们使用 属性注入代码最简介
|
|
|
-// @Autowired
|
|
|
-// private LoginService loginService;
|
|
|
+ //@Autowired
|
|
|
+// @Qualifier("LoginServiceImpl1")
|
|
|
+
|
|
|
+ //使用 Resource 默认使用Bean对象ID名注入
|
|
|
+ //如果这个名字 查不到, 则改用 类型注入
|
|
|
+ @Resource
|
|
|
+ private LoginService loginService;
|
|
|
|
|
|
//第二种方法
|
|
|
//SET方法添加注解 注入对象
|
|
@@ -28,22 +38,38 @@ public class LoginController {
|
|
|
|
|
|
//第三种注入方法
|
|
|
//我们需要 保留构造器, 并且使用注解 我们依然需要 五行代码
|
|
|
- private LoginService loginService;
|
|
|
- @Autowired
|
|
|
- public LoginController(LoginService loginService) {
|
|
|
- this.loginService = loginService;
|
|
|
- }
|
|
|
+// private LoginService loginService;
|
|
|
+// @Autowired
|
|
|
+// public LoginController(LoginService loginService) {
|
|
|
+// this.loginService = loginService;
|
|
|
+// }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
public void login(){
|
|
|
+ //控制
|
|
|
+ loginService.login();
|
|
|
+ //控制
|
|
|
loginService.login();
|
|
|
+ //控制
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
public static void main(String[] args) {
|
|
|
- ClassPathXmlApplicationContext context =
|
|
|
- new ClassPathXmlApplicationContext("anno.xml");
|
|
|
- LoginController bean = context.getBean(LoginController.class);
|
|
|
- //System.out.println( bean );
|
|
|
- bean.login();
|
|
|
+
|
|
|
+
|
|
|
+// ClassPathXmlApplicationContext context =
|
|
|
+// new ClassPathXmlApplicationContext("anno.xml");
|
|
|
+// LoginController bean = context.getBean(LoginController.class);
|
|
|
+
|
|
|
+ //启动Ioc入口
|
|
|
+ AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
|
|
|
+
|
|
|
+ LoginController loginService = context.getBean(LoginController.class);
|
|
|
+
|
|
|
+ loginService.login();
|
|
|
+ //
|
|
|
|
|
|
}
|
|
|
}
|