봉봉의 개인 블로그

2017-06-09-P 본문

학원에서 배운것들/TEA - P

2017-06-09-P

봉봉이네 2017. 6. 9. 16:21

DBMS


SQL은 크게 DDL(Data Definition Language) , DML(Data Manipulation Language) , DCL(Data Control Language)의 세 가지로 나눌 수 있다.


DDL은 데이터 베이스 테이블을 생성하거나 재정의 및 제거할 수 있는 기능을 가진다. DDL의 종류에는 다음과 같은 세 가지가 있다.

CREATE : 데이터베이스 또는 테이블과 같은 객체를 생성한다.

ALTER : 데이터베이스 또는 테이블과 같은 객체를 수정한다.

DROP : 데이터베이스 또는 테이블과 같은 객체를 제거한다.


DML은 데이터의 검색 및 삽입, 수정, 삭제할 수 있는 기능을 가진다. DML문은 다음과 같은 SQL문을 가지고 있다.

INSERT : 테이블에 데이터를 삽입한다.

UPDATE : 테이블에 삽입된 데이터를 수정한다.

DELETE : 테이블에 삽입된 데이터를 삭제한다.

SELECT : 테이블에 존재하는 데이터를 특정 조건으로 검색하여 결과를 출력한다.



Connection Poll (커넥션 풀)

JDBC와 연동하는 예제를 앞에서 많이 보았을것이다.

JDBC를 연동하기 위해서는 드라이버를 로드하고 JDBC URL로 접속하여 Connection 객체를 얻어오는 단계를 거쳐야 한다. 여기서 알아볼 커넥션 풀은 데이터 베이스와 연결된 Connection 객체를 미리 생성하여 풀(pool) 속에 저장해두고 필요할 때마다 이 풀에 접근하여 Connection 객체를 사용하고,작업이 끝나면 다시 반환하는 것을 말한다. 사용자가 웹사이트에 요청을 하는데 이 때마다 매번 Connection 객체를 생성하여 연결한다면 매무 비효율적일 것이다. 즉, 메모리에 Connection 객체가 너무 많이 생성되게 된다. 반면 커넥션 풀을 사용하면 풀 속에 미리 커넥션이 생성되어 있기 때문에 커넥션을 생성하는데 드는 연결 시간이 소비되지 않는다. 또한 현재 다른 사용자가 사용하지 않는 커넥션을 재사용이 가능하기 때문에 사용자가 접속할때 마다 계속해서 커넥션을 생성할 필요가 없다. 즉,커넥션을 사용한다면 프로그램 효율과 성능이 전체적으로 증가하게 된다.


커넥션 풀 사용해보기 (예제)

먼저 커넥션 풀을 사용하기 위해서는

WebContent 안에 META-INF 파일 안에 Context.xml 파일을 생성해줍니다.

그리고 그안을 커넥션 풀을 사용하기 위한 준비를 하기 위해서 톰켓 사이트를 가줍니다.



사이트에가서 위 사진과 같이 Documentation 에서 자신에게 맞는 톰캣 버전을 들어가줍니다.그후

9번에 읽어보면 DB Connection pool 에 관련된 것이다 들어가서 조금 내리다 보면은

이런부분이 나오게 되는데 저 드레그 된 부분을 복사해서

만들었던 xml 파일에 붙여줍니다 이건 외부 환경변수 설정이라고 보면된다. 

그다음 username 이라든지 password 부분과 classname 부분 url 부분의 값을 연결을 해줍니다.

그후 WebContent 폴더아래 WEB-INF 폴터 아래에 web.xml 파일을 먼들어준다음에

아까의 톰캣 사이트에서 더 내리다 보면 

이부분을 복사해서 

복사해서 붙여줍니다 그 후 res-ref-name 의 부분은 Context.xml 파일에서 설정햇을때 name 의 부분을 복사해서 붙여줍니다. 그후 

Pooltest.jsp 파일을 만든다음에 

위 사진과 같이 적어주게 커넥션 pool 이 되있는것입니다.


다음으로는 JSTL 과 EL에 예제입니다.

JSTL 은 jsp 에서 이제 자바코드 스크립틀릿이 모두 사라지도록 만드는것이라고 생각하면 편하다.


먼저 DTO 를 만들어줍니다

위와 같이 DTO를 만들어줍니다 7번줄에서 생성자 오버로딩을 햇기 때문에 13번줄과 같이 매개변수값이 없는 생성자 메서드도 만들어줍니다.

그다음으로 servlet 을 만들어줍니다.

이런식으로 작성해줍니다.

따로 설명하지않고 27~28 부분은 forwarding 부분입니다.이부분은 따로 설명을 하겠다.

그후 받은 셋한 데이터를 이제 view 에서 뿌려주기 위해서 forwarding 을 이용해서 view로 request와 response를 다시 넘겨줍니다. 포워딩은 간단하게만 설명하자면 request 나 response같은걸 다른페이지로 넘겨줄때 사용한다고 생각하면된다.

그후 jsp 에서 화면에 뿌리기 위해서 이전까지는 <%%> 을 이용하고 <%=%>를 이용해 화면에 뿌려줬지만

이런식으로 적어서 화면에 뿌려줄수 잇습니다 설명을 잠깐하자면 먼저 23번줄 에서 변수 name 을 설정하고 items 즉 request 안에 있는 strlist 의 값을 변수 name 에 담아았고 if 나 for 문등을 JSTL로 사용이 가능합니다. 그리고 4번줄과 같이 JSTL 을 사용하기 위해선 저문과 라이브러리가 lib 안에 있어야합니다.

'학원에서 배운것들 > TEA - P' 카테고리의 다른 글

2017-06-15-P  (0) 2017.06.15
2017-06-14-P  (0) 2017.06.14
2017-06-08-P  (0) 2017.06.08
2017-06-07-P  (0) 2017.06.07
2017-06-02-P  (0) 2017.06.02
Comments