오늘부터 part2.
프레임워크에대해 배울것

인증절차나 db종류 바뀌면
의존하고 있는 객체 바꿔야됨.
객체 직접 생성해서 의존하는 방법은 결합력 최상위
-> 낮추려면 쿠키유틸즈
dependancy injection사용. 생성자로 객체 받음..
->스프링
결합력 낮춤

dao - 커넥션 연결, 종료.. 다 똑같고 쿼리문이랑 받아오는 VO만 달라짐
-> 그 패턴을 미리 코드 짜놓으면 => ibatis

tiles말고 다른 프레임워크들도 있음. 회사 나가서 이거 말고 다른거 쓸수도 있음.

IoC패턴
프레임웤이나 라이브러리 둘다 패턴 미리 만들어놓은 것
IoC패턴이 적용되있으면 프레임웤,
아니면 라이브러리
Inversion of Controller?
제어의 역전

라이브러리는 코드의 일부분. 전체를 제어x
프레임웤은 해야할게 많음. 주도권있다. - 제어 역전
설정파일 만들어야되고 까다롭게 써야되면 프레임웤

IoC 다른말로 DI 명확하게 쓰자. Dependency Injection
마틴 파울러

xml에 등록하는거 원래는 객체가 되야됨. tiles한테 해달라고 xml에 설정해놓는것. - 의존성 주입

프레임웤/라이브러리-필요한 객체를 내가 넣어주느냐 내가 객체를 만들어 쓰느냐

다오
1) connection
2) 쿼리객체 생성
3) 쿼리문
4) 결과집합 받아옴
5) VO로 바꿈
6) close

3),5)말고는 매번 반복되는 쓰레기코드
-> sql mapper.
ibatis
1. persistence framework
2. sql mapper

ibatis 쓸때 xml에 쿼리 미리 등록했었음
그때 쿼리맵에 등록해놓음. id가 맵의 키역할.
쿼리 쓸때 id넘겼었음 - query map에서 꺼내서 쓰기 위한것.

select쿼리 등록할때 vo미리 등록해놓음
그래서 queryforObject쓰고 결과를 그냥 캐스팅해서 쓸 수 있었음. 원래는 5)번했어야 됬는데 ibatis가 해줘서 간결했던것
-> 3.dataMapper
4.ORM
자바-Object
DB-relation
중간에 바꿔주는거 필요-ibatis가.


쿼리문 자바에서 대문자로 바꾸기 : ctrl+shift+x
preparedStatement에서 ?로 한번에 바꾸기

공백이 아닌 문자.
반드시 selected all체크 할것


선생님 쿼리 - 키워드 들어가면 검색하겠다.

INSTR - indexOf랑 비슷한거

jUnit 프레임웤 - 단위테스트. 다오만 중간에 테스트할 수 있는거

test 클래스패스 아래에서만 쓰겠다.

실무나가서 syso못찍음
log4j
hamcrest - 확인용

테스트 하고싶은거 선택해서 new

fail은 실패했을때 나오는것 - 지우고 테스트하면 됨
assert~ 메서드들 이 클래스 안에 없는데 나옴 - static import된 것들!

controller단에서 테스트하려면 Mock객체가 필요. 가짜객체. req, resp만들어야되서. 지금은 복잡해서 안하고 나중에 스프링에서 지원해줘서 그때할것.

id체크 성공했는지 다른데다 저장해놔야 나중에 form전송할때 보낼 수 있다.
전역변수는 위험.
data- :dataStringMap
data() : 타입 유지해서 넣는것 가능
submit하기 전에 idchecked꺼내서 그 값이 true인지 확인해서 전송.

validation은 클,서버단 둘다 체크해야됨

===값,타입,주소까지 다 같은지 비교

새로고침하면 focus, 벗어날때 blur이벤트 잡음 - 아이디 정상적으로 넣기전까지 못넘어가게. - 부트스트랩사이트!!!


jackson에 마샬링 객체로 list넣으면 그 안의 vo 값의 properties 이름들을 키값으로 해서 json만들어준다!

이때 getter없으면 내부적으로 얘도 프로퍼티들 못가져와서 못만드는거같음.

dataTable 예제


validation - 필수파라미터마다 해줘야됨 -> 일일히 쓰기 귀찮 -> DB에서 쿼리문으로!! cols

0개의 댓글