Notice
Recent Posts
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 설치
- 이클립스
- 폼태그
- MySQL
- 버튼
- 자바스크립트
- 오라클
- 깃허브 간단요약
- 스프링
- 셋업
- 알고리즘
- jstl
- 깃허브
- 제이쿼리
- 자바
- jquery
- jsp 내부객체
- Eclipse
- EL태그
- html
- 면접
- 마이바티스
- SESSION
- Spring
- jsp
- springboot
- 설정
- Oracle
- 필터체인
- java
Archives
- Today
- Total
은은하게 코드 뿌시기
Spring MVC Framework/스프링 mvc 구조 이해/ 스프링 mvc 주요 어노테이션 본문
728x90
: 로직과 화면을 분리
* Spring MVC 구조
1. 사용자의 요청을 Front Cotroller에 전달
2. 전달된 요청을 적절한 Cotroller를 찾아 호출
3. Spring MVC의 Controller는 해당 Service 객체를 찾아호출
4. Service 객체는 DAO객체를 이용하여 원하는 Data를 요청
5. DAO객체는 Mybatis를 이용하는 Mapper를 통해 작업을 수행 (CURD)
10. Service를 통해 처리한 데이터를 Cotroller에 전달
12. Spring MVC의 Controlller는 다시 스프링 MVC쪽으로 데이터를 전달
* Spring MVC 주요 애너테이션
애너테이션 | 기능 |
@Controller | Controller객체임을 명시 |
@Repository | DAO 객체임을 명시 |
@Service | Service 객체임을 명시 |
@RequestMapping | 특정 URI에 매칭되는 클래스나, 메서드임을 명시 |
@GetMapping | 주어진 URI 표현식과 일치하는 HTTP GET 방식으로 처리하는 메소드 임을 명시 |
@PostMapping | 주주어진 URI 표현식과 일치하는 HTTP POST 방식으로 처리하는 메소드 임을 명시 |
@RequestParam | 요청에서 특정한 파라미터 값을 찾아 낼때 사용 |
@RequestHeader | 요청에서 특정 HTTP 헤더 정보를 추출할때 사용 |
@PathVariable | 현재 URI에서 원하는 정보를 추출할 때 사용 |
@CookieValue | 현재 사용자의 쿠키가 존재하는 경우 쿠키의이름을 이용해서 쿠키 값을 추출 |
@ModelAttribute | 자동으로 해당 객체를 뷰까지 전달하도록 만드는 애너테이션 |
@SessionAttribute | 세션상에서 모델의 정보를 유지하고 싶은 경우 사용 |
@InitBinder | 파라미터 수집해서 객체로 만들 경우 |
@ResponseBody | 리턴 타입이 HTTP의 응답메세지로 전송 |
@RequestBody | 요청 문자열이 그대로 파라미터로 전달 |
VIEW | |
src/main/WEB-INF/views home.jsp a태그 empcount 사원수 요청 |
![]() |
Servelet Controller | |
src/main/java/kr.co.dong.emp EmpController.java |
![]() @Controller @Inject 또는 @Autowired @RequestMapping(value="addEmp", method = RequestMethod.GET) |
Service | |
src/main/java/kr.co.dong.emp EmpServiceImpl.java 서비스 |
![]() @Service @Autowired |
DAO | |
src/main/java/kr.co.dong.emp EmpDAOImpl.java DAO .cnt |
![]() |
My batis Mapper <=> Mysql-DB | |
src/main/resources/mappers empMapper.xml |
![]() |
[DAO] EmpDAOImpl.java empcount() 리턴 [Service] EmpServiceImpl.java empcount() 리턴 |
|
Controller | |
EmpController.java 에서 리턴값 받아서 서비스 함수의 리턴 값을 받아 ModelAndView에 view단 까지 전달 |
![]() |
728x90
'웹 > spring' 카테고리의 다른 글
My batis/마이바티스 - typeAliases (0) | 2022.08.23 |
---|---|
MYBatis - Mapper xml파일 List로 리턴 (0) | 2022.08.23 |
[의존성주입]DI/Dependency Injdection/ 애노테이션/애너테이션/어노테이션- @Autowired, @Resource, @Inject (0) | 2022.08.12 |
[spring] - request parameter 전달 받는 방법 4가지! 예제 /Cotroller의 파라미터 수집 (0) | 2022.08.08 |
스프링 기본 프로젝트 셋업 순서 연습/spring spring legacy project setup/ 스프링 셋업 버전 (0) | 2022.08.03 |
Comments