MVC : Model View Controller
SpringBean 이란
스프링 IoC(Inversion of Control) 컨테이너에 의해 관리되고 애플리케이션의 핵심을 이루는 객체들을 스프링에서는 빈즈 라고 한다.(Beans)
빈은 스프링 IOC 컨테이너에 의해서 인스턴스화 되어 생성되거나 관리되는 객체를 말함.
빈은 수많은 객체들 중의 하나
빈과 빈 사이의 의존성은 컨테이너가 사용하는 메타데이터 환경설정 (XML 파일)에 반영됨
🥕경로를 구분하는 특수문자
? : 1개의 문자와 매칭
* : 0개 이상의문자와 매칭
** : 0개 이상의 디렉토리와 파일 매칭
활용 예: /user/**/*.xml => /user/ 로 시작하고 0개 이상의 디렉토리와 파일 그 하위의 0개 이상의 문자로 된 .xml 파일
/user/** => /user/로 시작하고 0개 이상의 디렉토리와 파일
/** => /로 시작하고 0개 이상의 디렉토리와 파일
web-inf 는 웹에서 바로 못들어감 (보안상)
-인터셉터 설정 ( ** 인터셉터는 스프링 영역! 필터 영역 아님.. 근데 구현하면 됨 무슨말인진 ㅁ르겟음..ㅎ)
인터셉터의 정식 명칭은 핸들러 인터셉터(Handler Interceptor)
클라이언트의요청이 컨트롤러에 가기 전에 가로채고, 응답이 클라이언트에게 가기 전에 가로챔. 즉, 인터셉터는 DispatcherServlet 이 컨트롤러를 요청하기 전, 후에 요청과 응답을 가로채서 가공할 수 잇도록 해줌
예) 하나의 인터셉터를 만들려면 HandlerInterceptorAdaptor 클래스를 상속받아야 함.
HandlerInterceptorAdaptor 클래스를 상속받으면 사용할 수 있는 3가지의 메서드 preHandle() postHandle() afterCompletion()가 있음.
preHandle(): 컨트롤러가 호출되기 전에 실행되는 메서드
postHandle(): 컨트롤러가 호출된 후에 실행되는 메서드
afterCompletion: 컨트롤러의 처리가 끝나고 화면처리까지 모두 끝나면 실행되는 메서드
🥕jQuery Ajax
주요 옵션(비동기방식)
data : 서버로 데이터를 전송할 때 이 옵션을 사용
datatype : 서버 측에서 전송한 데이터를 어떤 형식의 데이터로 해석할 것인가를 지정함
값으로 올 수 있는 것은 xml. json, script, html 지정하지 않으면 jQuery가 알아서 판단함.
success : 성공했을 때 호출할 콜백을 지정함
type : 데이터를 전송하는 방법을 지정. get, post를 사용.
위에 views 밑으로 다 jsp 폴더가 들어감.. 왜냐면 prefix 되어 있음
그래서 둘 다 인덱스 jsp 파일이지만, 실제 열리는 파일은 view 안에 있는 index.jsp 파일이 되는 것임..
문법 쓰기 위해서 include 해야 하는 파일
마이바티스요???
아이디가 메서드 명
DTD Mapper 3.0
어노테이션 이름은 같으면 안됨!
클래스가 다르더라도 이름은 모두 다르게 해야...
@RequestMapping(value="/user/login", method=RequestMethod.POST) //이 이름으로 요청이 들어오면 아래를 실행해라! 하는 거
@ResponseBody
public Response<Object> login (HttpServletRequest request, HttpServletResponse response){
Response<Object> ajaxResponse = new Response<Object>();
String userId = HttpUtil.get(request, "userId");
String userPwd = HttpUtil.get(request, "userPwd");
response 객체로 받으려면 responseBody 어노테이션 선언해 줘야 함.
프론트 단에서 들어왔을 때에 실행 순서
컨트롤러 > 서비스 > 다오 > XML
다 m
c = controller
v = jsp
'Study > Spring' 카테고리의 다른 글
[스프링] 0215 게시글 수정/삭제 (0) | 2024.02.15 |
---|---|
[스프링] 0213 수업 아카이빙 : 게시판 글쓰기 - 첨부파일 업로드 (0) | 2024.02.15 |
[스프링] 0210 수업 아카이빙: 인터셉터와 필터 (1) | 2024.02.12 |
[스프링] 0207 스프링 아카이브 (1) | 2024.02.08 |
[스프링] 0205 수업 아카이빙 : 회원가입,회원정보수정 로직/org.apache.ibatis.binding.BindingException 에러/ ModelMap (0) | 2024.02.05 |
댓글