@Autowired๋ฅผ ์ด์ฉํ๋ฉด xml์์ ๋น์ ์ง์ ์ค์ ํ ํ์์์ด, ์คํ๋ง ์ปจํ ์ด๋๊ฐ ์์์ ์ํ๋ ํด๋์ค๋ฅผ ์ฃผ์ ์์ผ์ค๋๋ค. ๊ทธ๋ผ ๋ฐ๋ก ์์๋ฅผ ๋ณด์ฌ๋๋ฆฌ๊ฒ ์ต๋๋ค.
l ์์
package com.spring.ex02;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
@Controller("loginController")
@RequestMapping(value="/test")
public class LoginController {
@Autowired//=> ์ฃผ๋ชฉ
LoginVO loginVO;
@RequestMapping(value="/login.do", method = {RequestMethod.GET, RequestMethod.POST})
public ModelAndView login(HttpServletRequest request, HttpServletResponse response) throws Exception{
request.setCharacterEncoding("utf-8");
ModelAndView mv = new ModelAndView();
mv.setViewName("result");
loginVO.setId("๊น๋ณ์ค");
System.out.println(loginVO.getId());
return mv;
}
}
์ปจํธ๋กค๋ฌ ์์ @Autowired๋ฅผ ์ฌ์ฉํ์ฌ LoginVO ํด๋์ค๋ฅผ ์ฃผ์ ์์ผ์ฃผ์์ต๋๋ค. ๋ง์ฝ ์ ๋ํ ์ด์ ์ ์ฌ์ฉ์ํ ๊ฒฝ์ฐ xml์์ ๋น ์ค์ ์ ํด์ฃผ์ด์ผ ํ๋๋ฐ ํ๋ก์ ํธ๊ฐ ๋ณต์กํด์ง๋ฉด ์๋นํ ์ด๋ ค์์ง๋๋ค.
package com.spring.ex02;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Repository;
@Component("LoginVO")
public class LoginVO {
private String id;
private String pw;
public void setId(String id) {
this.id = id;
}
public String getId() {
return this.id;
}
public void setPw(String pw) {
this.pw = pw;
}
public String getPw() {
return this.pw;
}
}
๊ผญ LoginVO์์๋ @Component๋ฅผ ์ด์ฉํ์ฌ ๋น์ผ๋ก ์ค์ ํด์ฃผ์ด์ผํฉ๋๋ค.
๋ง์ฝ ์ปจํธ๋กค๋ฌ๋ฉด @Controller ๋ฅผ ์ด์ฉํ์ฌ ์ปจํธ๋กค๋ฌ๋ก ๋ฑ๋กํ๊ณ , ์๋น์ค์ด๋ฉด @Service๋ฅผ ์ด์ฉํ์ฌ ๋ฑ๋กํ๊ณ , DAO์ด๋ฉด @Repository๋ฅผ ์ด์ฉํ์ฌ ๋ฑ๋กํ๊ณ , ๋จ์ ๋น์ ๋ฑ๋กํ๋ ค๋ฉด @Component๋ฅผ ์ด์ฉํ์๋ฉด ๋ฉ๋๋ค.
import๋ฅผ ์ด์ฉํ์ฌ ์ฃผ์ ํ์ง๋ ์์๊ณ , xml์ ์ง์ ์ค์ ๋ ์ํด์ฃผ์์ง๋ง ๋ฌธ์ ์์ด LoginVO ํด๋์ค๋ฅผ ์ปจํธ๋กค๋ฌ ํด๋์ค์ ์ฃผ์ ์์ผ ์ ๋๋ก๋ ๊ฐ์ด ์ถ๋ ฅ๋์์ต๋๋ค. ์ ํํ ๋งํ์๋ฉด xml์ ์ค์ ๋์ด์์ง๋ง ์คํ๋ง ์ปจํ ์ด๋๊ฐ ์๋์ผ๋ก ํด์ค ๊ฒ์ ๋๋ค. ์ด๊ฒ์ด ๋ฐ๋ก ์คํ๋ง์ ํน์ฑ์ธ IoC์ ๋๋ค.
์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
์ง๋ฌธ์ ์ธ์ ๋ ํ์ํฉ๋๋ค.
"๋ ๋ฐ๋์ ๋ฐฑ์๋ ์์ด ๋ ๊ฑฐ์ผ"