db

http://blog.naver.com/hanorom?Redirect=Log&logNo=100003734568

 

 

http://blog.naver.com/hanorom?Redirect=Log&logNo=100003734568 <--요걸 응용 하면.. select 처리를 유연하게 할수 있을듯!!

 

was

http://blog.naver.com/PostView.nhn?blogId=leeyoon0607&logNo=70089532141&parentCategoryNo=52&categoryNo=&viewDate=&isShowPopularPosts=true&from=search

 

볼 내용이 상당히 많음!

 

아 글고.. 원격(remote)자원을 내 로컬에서 사용하는 것처럼.. 편히 쓸수 있게 하는 인터페이스가..머였드라?

java naming directory interface 인가?  요게 내부적으로 rmi를 래핑한거였나?? 아.. 기억이 잘 안난다...;;

 

http://blog.naver.com/kookh1?Redirect=Log&logNo=120202342605

조금 어려운 개념은.. 인터페이스 클래스와 구현클래스의 분리, 클라측에 인터페이스 클래스 정보만 노출하고

실제 구현 클래스의 정보는 클라의 요청시 직렬화 해서 넘겨줌. 클라는 인터페이스를 통해.. 내부 구현은 몰라

도 다형성(rtti.. 동적 바인딩)을 통해 실제 원격 객체의 서비스를 사용이 가능..

 

이걸 간단히 래핑한게.. 자바의 네이밍 디렉토리 인터페이스인듯~ 실제 안써봐서 모름;;

 

 

by givingsheart 2014. 1. 9. 14:28



http://www.w3schools.com/

이것은.. 진리이다... (^^)// (__ ) (^^)// 선생님께 경배!



ps.예전에 이것 저것 검색하다가.. 나도 찾아봤던 사이트인데.. 당시에는 사이트 이용방법을 익히기
보다는 알아만 두자고 했는데.. 내 예상보다 훨씬 대박인 사이트... 


by givingsheart 2014. 1. 9. 11:53

http://www.manning.com/husted


(코드 재사용.. BUT 안돌아감..)

'프로그래밍 > struts' 카테고리의 다른 글

생뚱맞지만 struts  (0) 2014.01.02
by givingsheart 2014. 1. 8. 11:49
1.도메인모델(업무에서 추출되는(명사 추상화) 클래스, 비지니스(업무에서 추출되는(동사=유스케이스 추상화) = 
클라에게 제공하는 서비스), 데이터베이스(DAO).. 의 역할 분리.. (프론트엔드쪽은 논외)
 각 주체간 어떻게 디자인을 해야 종속적이지 않을지.. (재사용성및 기능 분리)
 (ex)dao를 어떻게 만들어야 데이터 베이스 종류에 종속을 받지 않을것인지 = 팩토리(dao 계층화)
 다른 개념과 차이점 (ejb의 엔티티빈 vs dao객체) 등등


2.org.apache.commons.lang 패키지의 BaseObject = toString, equals, hashCode를 제너릭하게 구현해놓음..
 org.apache.commons.lang.builder 패키지의 각종 빌더들이 reflect를 이용해 어떻게 처리를 하는지에 대해 분석
(얼핏 봤는데.. 예전 서블릿 코드 분석할때처럼.. 상위 클래스 뒤져가며.. 메소드 추출하고.. 필드 추출하고.. 요런식 같음)


3.스프링에서 aop에 대해 고민해보기

4.웹app의 프로세스랄까?
 (1).클라용 폼(html,jsp)에서 유저가 입력및 커맨드(비지니스) 선택&전달 
 
 (2).서버의 디스패칭 jsp가 받아서.. 
  클라가 전달한 페이지 url에 따라 또는 빈(jsp페이지) 이름에 따라 해당 요청을 처리할 컨트롤러(리스너)에게
  전달(이과정은..web-app.xml에서 url매핑인가로 세팅가능)

 (3).해당 페이지(url or 빈)에 대한 컨트롤러는 해당 페이지에서 처리할 비지니스들(커맨드)에 따라 사용할 로직(메서드)
  를 호출(이과정도 매핑이 가능함)

 (4).호출된 컨트롤러의 메서드는 컨트롤러가 가지고 있는(컨트롤러는 서비스(비지니스) 객체를 setter를 통해 보관중)
  클라가 전달한 커맨드와 리퀘스트 정보에 따라 do객체를 생성하고 do객체에 데이터 세팅(예외 처리,트랜잭션등 생략)
  그 후에 비지니스 객체의 서비스 메서드를 사용하여 처리하고.. 클라에 전달할 응답용 객체를 호출

 (5).클라에 전달되는 객체는 위의 컨트롤러 단에서 처리한 데이터(do)를 가지고 출력할 양식을 만듬.
  그리고 클라이언트에게 응답할때 페이지를 리다이렉션 해줌..


5.요청이 왔을때.. dao 객체를 생성한다. 작업을 시킨다.(insert,update,delete,search).
  insert 작업을 시키려면.. dao객체를 생성할때 매개변수로 다른 부모 테이블의 인덱스는 필요하지만..
  다른 테이블의 do 정보는 필요가 없다.
  update 작업을 시킬때는.. 반대로 다른 테이블의 인덱스가 필요 없고.. 다른 테이블의 do 정보가 필요하다.


by givingsheart 2014. 1. 7. 14:51

난 왜 지금까지.. dml에 대해 매개변수로 do를 전달햇을때.. pk등 키값을 제대로 처리를 안햇었을까?


예를 들어..  xxDAO클래스의  int update(DO do) 메서드라면,.. (insert도 포함)


지금까지 내경운.. sql 쿼리를 "update 테이블 이름 set 칼럼1 = do.칼럼1, 칼럼2 = do.칼럼2

요렇게 했었는데.. 난 바보였다.. 요런 쿼리면.. 모든 로우에 대해 해당 값으로 덮어쓰게 된다.


이런 메서드는 updateAll() 이런 식으로 명명했어야 했다.


update() 라면..

update 테이블 이름 set 칼럼1(pk아님) = do.칼럼1, 칼럼2 = do.칼럼2 ... where 테이블 칼럼.pk = do.pk 

요렇게 했어야 했다... 


난 뭘한건가?????????????????????


오버 로딩으로 중복 코드 줄이겠다는 마음만 앞서서.. (쿼리 구문 ? 에 입력값들 매핑 하는 로직)

update, 와 select를 묶어버리고;; (이것도 위의 삽질처럼.. updateAll과 update 구분못함.. 물론 delete , deleteAll 도 구분 못함)

insert와 delete를 묶었을거다;; 


난 진짜 바보다;;;


db의 테이블.. 그리고 pk.. where 조건절과 서비스 메서드의 조건(selectById...) 구분을 못했었다. 


dml이 왜 dml이냐!!!!! dql 왜 dql이냐??? 왜 두가지 문장이 구분되는 것인지..  좀 깨닫자!!!!!!

select란 dql은 ... 전체 집합에서 조건을 찾는 문법이다.;;; 아.. 그래도 늦게나마 깨달았다;;;

by givingsheart 2014. 1. 7. 14:50
by givingsheart 2014. 1. 7. 12:34

'프로그래밍 > JSP' 카테고리의 다른 글

jsp 322p 세션에 기록해 두는 토큰에 관해  (0) 2014.01.02
jsp ~ jdbc  (0) 2014.01.01
jsp에서 빈의 사용3  (0) 2014.01.01
jsp에서 빈의 사용2  (0) 2014.01.01
빈을 이용한 컴포넌트 방식의 설계1  (0) 2014.01.01
by givingsheart 2014. 1. 2. 17:03
by givingsheart 2014. 1. 2. 12:25
문득.. 예전에 고민했던.. 조인 연산에서 중첩루프 평가가 떠올랐고.. 그중 어떻게해야
반복문의 효율성을 높일수 있을것인가의 문제가 떠올라서.. 검색중에..


자바스크립트 성능 최적화인데.. 일반적인 최적화의 기법이기에.. 알아둘 가치가 있음.(반복문 기법등)



인터넷은 지식의 바다... 검색 안되는게 없네 -_-; (내가 예전에 담배피다.. 숫자 중복 체크하는거 배열을 완전
풀어서 쓴적이 있었는데.. 이게 루프 언롤링과 거의 유사한 개념같다. 사람 생각은 다 비슷비슷 ㅎㄷㄷ)





자바에서 쓸만한 것들..(이 책도 호기심이 떙기긴함.. 최적화 만세!  VS 읽기 쉬운 코드 만세!)

요문제.. 재미있음..


예전에 보던 db 최적화 문서 읽어봐야겠다..(최적화에 필이 꽂히다니;;스윙,xml,ejb는 어떻게하지? )


by givingsheart 2014. 1. 2. 09:44

내 언젠가.. 이걸 이용해서 코메디를 창조해 보리라!! 아잣! 이제 휴식 ㅋㅋㅋ



아래는 키보드 후킹


etc



json

jstl(태그라이브러리.. 내가 옛날 jsp를 보긴 한거군;;)


음.. 아래건 틈틈히 한번씩 읽어볼것 (css등)

jsp 필터 개념 (간단히 접근하면.. 작업을 처리한다의 재귀 개념)


체인오브 리스폰스빌리티

(추가)

목적 없는.. 호기심 주의! 

by givingsheart 2014. 1. 2. 09:42