22.05.20 sping수업(6차시)_
1교시
-> Maven -> gradle Spring Boot -> 전자정부표준프레임 워크 |
java script 와 jQury 같은 관계. sping 같은 경우 소켓 부분이 원시적임 . 하지만 Spring Boot를 통해 다양하게 이용할 수 있음. Spring Boot가 gradle 방식으로 되어있음. |
Gradle 방식은 pom.xml이 아니라 build.gradle .
Maven | pom.xml |
Gradle | build.gradle (생긴모양은 프로퍼티나 스크립트 처럼 생김.) |
의존성 주입은 Framwork가 해준다.
Controller는 service에 의존적이고 Service는 Dao에 의존적이다.
이런 기능들이 나중에 모듈명으로 존재함.
DB연동을 위해서는
Spring jdbc, ojdbc6 , myBatis필수
web.xml에 이코드에 의해 실제로 new하지 않음
2교시
위 2개의 코드 + web.xml 수정사항이 있다면 서버 다시 돌려줘야함.
web.xml / root-context.xml / servlet-context.xml 수정 후 꼭!!! server- restart 해주세요.
pom.xml 수정 후 꼭!!! 프로젝트> 오른쪽마우스 > Maven > Update Project > ok 해야함.
- 깨끗하게 jar 모두 지우고 다시 받고 싶다면 force ..체크해주기
DI개념에 설정하는 방법은 2가지
방법1. we.xml으로 설정
방법2 . 핸들러맵핑시 어노테이션으로 지정
servlet에서 했던 방식
model and view
model 이란 우리가 저장해놓고 싶은 데이터
model.addAtrribut 는 rq.setAttribute와 동일함.
>> 위 5개는 servlet에서 다룸
프로젝트 만들기!!
>> 여기에다가는 _ 언더바를 사용하지 않음. + 키워드 사용하지 않음. ( 예를 들어 final..)
pom.xml 수정
spring MVC project 생성 : kh.spring.first2 pom.xml 수정 -
properties : java-version 1.11로 변경,
springFramework 5.3.19로 변경 -94번줄 servlet 그룹아이디 javax.servlet으로 변경,
version 4.0.1로 변경 - plugin :configuration <source> <target>에 ${java-version}으로 변경
3교시
서블릿버전 2.5 에서는 자바가 1.6이여도 괜찮지만
이걸 톰캣 9.0은 java 1.7이상만 지원해주기 떄문에 변경함
<%=request.getContextPath() %>의 기본위치는 wepapp
프레임워크(Ioc)가 login 메소드을 호출시켜줌.
logger
servlet-context에서 붙여주었기때문에 .jsp 와 /WEB-INF/views/를 붙여주지 않아야함.
@RequestMapping -> url상황을 내가 인지하겠어!
너가 두개의 인자를 쓰게된다면 둘중에 뭐인지 몰라
그래서 아래와같이 써줘야함.
함수는 매개인자로 들어가는거지만 어노테이션은 설정임.
그래서 반드시 속성명 = 값 , 속성명 = 값 의 형태로 넣어줘야함. (html과 유사)
따옴표 필요없음 쉼표로 구분하겠어라는 의미.
이거 도움을 받아 root-context.xml 작성
위 빈의 데이터소스를 가지고 아래빈 에대가 대입해줘도 되겠니?
그래서 value 라고 적으면 글자그대로를 세팅한다는 의미
ref이라는건 레퍼런스의 약자로 기존에 만들어진 객체를 대입시켜주겠다는 의미이다.
클래스명 = 자료형
아이디명 = 객체명
5교시
myBatis가 해주는 상태지만 해당 클래스에서 datasource만들어줌.
DAO만들기
6교시 - 실습^^