์์กด์ฑ ์ฃผ์ ์ฉ๋
@Required
ํ์ ํ๋กํผํฐ๋ฅผ ์ค์ , ์ฝ๋ ๋ด์ ํ๋กํผํฐ ์ค์ ๋ฉ์๋์ @Required ์ด๋ ธํ ์ด์ ์ ๋ถ์ธ๋ค.
@Required
public void setName(String name) {
this.name = name;
}
@Autowired
์์กด๊ด๊ณ๋ฅผ ์๋์ผ๋ก ์ค์ ํด์ฃผ๋ ์ด๋ ธํ ์ด์ , Controllerํด๋์ค์์ DAO๋ Service์ ๊ดํ ๊ฐ์ฒด๋ค์ ์ฃผ์ ์ํฌ ๋ ๋ง์ด ์ฌ์ฉ.
@Autowired
private DefaultBeanValidator beanValidator;
@Inject
๊ฐ์ฒด์ ํ์ ์ ๋ณด๊ณ ์ฃผ์ ๋ ํด๋์ค๋ฅผ ํ์ํ๋ค.
@Autowired์ ์ฐจ์ด์ ์
@Autowired๋ ์คํ๋ง์์ ์ง์ํ๊ณ , @Inject์ ์๋ฐ์์ ์ง์ํ๋ ์ด๋
ธํ
์ด์
์ด๋ค.
์ปจํธ๋กค๋ฌ ๊ด๋ จ
@Controller
: @Controller์ด๋ ธํ ์ด์ ์ MVCํจํด์์ Controllerํด๋์ค์ ์ ์ธ, @Component์ด๋ ธํ ์ด์ ์ ์จ๋ ์๊ด์๋ค. ํ์ง๋ง @Controller ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํจ์ผ๋ก @RequestMapping ๋ฑ์ ์ถ๊ฐ ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉ ๊ฐ๋ฅ
@Controller
public class AdmController {
@RequestMapping
: @RequestMapping ์ด๋ ธํ ์ด์ ์ Spring ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ๊ฐ์ฅ ์์ฃผ ์ฌ์ฉ
http request๋ก ๋ค์ด์ค๋ url ํน์ controller ํด๋์ค๋ ๋ฉ์๋๋ก ์ฐ๊ฒฐ์ํค๋ ์ญํ
controller์ class์ ์ ์ฉํ ์ ์๊ณ ํน์ method์ ์ ์ฉ ๊ฐ๋ฅ
@RequestMapping(value="/adm")
public class AdmController {
@PathVariable
: URL ๊ฒฝ๋ก์ ๋ณ์๋ฅผ ๋ฃ์ด์ฃผ๋ ๊ธฐ๋ฅ
@RequestMapping(value="/{page}")
public String onlyPageFowarding(@PathVariable String page,Model model){
return "ttest/adm/"+page;
}
@ResponseBody
: ์๋ฐ ๊ฐ์ฒด๋ฅผ HTTP ์์ฒญ์ body ๋ด์ฉ์ผ๋ก ๋งคํํ๋ ์ญํ ์ ํจ
@RequestBody
: @RequestBody์ ๋ถ์ ํ๋ผ๋ฏธํฐ๋ HTTP ์์ฒญ์ ๋ณธ๋ฌธ body๋ถ๋ถ์ด ์๋ฐ ๊ฐ์ฒด ๊ทธ๋๋ก ์ ๋ฌ
@RequestMapping(value="/bi200.do")
@ResponseBody
public Map<String, Object> exSelect (
@RequestBody List<HashMap<String, String>> exc,
์นํ์ด์ง์์ json์ผ๋ก request ํ ํ๋ผ๋ฏธํฐ๋ค์ java์์ ๋ฐ์ผ๋ ค๋ฉด java object๋ก์ ๋ณํ์ด ํ์ํ๋ฉฐ
๋ง์ฐฌ๊ฐ์ง๋ก response ์์๋ java object์์ json์ผ๋ก ๋ณํ์ด ํ์ํ๋ค.
์ด๋ฌํ ์์ ๋ค์ ํด์ฃผ๋ ์ด๋ ธํ ์ด์ ์ด ๋ฐ๋ก @RequestBody์ @ResponseBody์ด๋ค.
์ปจํธ๋กค๋ฌ์ ๋ ์ด๋ ธํ ์ด์ ์ ์ถ๊ฐํด์ฃผ๋ฉด, JSON์ด๋ key/value ๋ฐฉ์ xml ๋ฑ์ผ๋ก ์ก์์ ํ ์ ์๋ค.
@RequestParam
: ๋จ์ผ HTTP ์์ฒญ ํ๋ผ๋ฏธํฐ๋ฅผ method ํ๋ผ๋ฏธํฐ์ ๋ฃ์ด์ฃผ๋ ์ด๋ ธํ ์ด์
๊ฐ์ ธ์ฌ ์์ฒญ ํ๋ผ๋ฏธํฐ ์ด๋ฆ์ @RequestParam ์ด๋ ธํ ์ด์ ์ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ง์ ํด์ฃผ๋ฉด ๋๋ค.
@RequestMapping(value="/admUpdateView.do", method=RequestMethod.POST)
public @ResponseBody Map<String, Object> adm03UpdateView(
@RequestParam("unId") String unId,
@ModelAttribute("searchVO") UserDefaultVO userSearchVO,
@ModelAttribute
@RequestParam๊ณผ ๋น์ทํ๊ณ
Controller ๋ฉ์๋์ ํ๋ผ๋ฏธํฐ๋ ๋ฆฌํด ๊ฐ์ Model ๊ฐ์ฒด์ ๋ฐ์ธ๋ฉํ๊ธฐ ์ํ ์ด๋ ธํ ์ด์
๋ฐ์ดํฐ ์ ๊ทผ ๊ด๋ จ
@Service
: Service ๋ ์ด์ด ํด๋์ค๋ค์ ์ฌ์ฉ๋๋ ์ด๋ ธํ ์ด์ , @Component์ด๋ ธํ ์ด์ ์ ์จ๋ ์๊ด์๋ค.
@Service์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํจ์ผ๋ก์จ ํด๋น ํด๋์ค๊ฐ ์๋น์ค ๋ ์ด์ด ํด๋์ค๋ผ๋ ๊ฒ์ ๋ช ํํ ํจ
@Service("admService")
public class AdmServiceImpl extends EgovAbstractServiceImpl implements AdmService {
@Repository
: DAO์ ํนํ๋ ์ด๋ ธํ ์ด์ , @Component์ด๋ ธํ ์ด์ ์ ์จ๋ ์๊ด์๋ค.
'Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[springloaded] java file ์์ ํ tomcat ์ฌ์์ ์์ด ๋ฐ์ : ์ฌ๋ก๋ฉ ์์คํ (0) | 2021.03.23 |
---|---|
[eclipse] tomcat server ํ๋ก์ ํธ ์ ํ์ด์๋ ๊ฒฝ์ฐ (0) | 2021.03.22 |
Tomcat server.xml ํ์ผ UTF-8 ์ค์ (0) | 2021.03.18 |
[MVC ํจํด] Model View Controller (1) | 2020.09.01 |
[Spring] Spring Framework ์คํ๋ง ์ ์ ๋ฐ ํน์ง (2) | 2020.08.31 |