1. Maven: 빌드 절차를 간소화하는 빌드도구
-build: 소스코드를 컴퓨터에서 실행할 수 있는 독립 소프트웨어 가공물로 변환하는 과정
및 결과물
-다수의 인원이 협력해서 개발하기 편리함(실제 파일이 없어도 사용가능)
-라이브러리 파일을 직접 추가하지 않아도 코드 사용으로 라이브러리 사용이 가능함
-하위라이브러리까지 자동으로 설치됨
2. maven project 만들기: new-other-maven 검색
filter: maven-archetype-webapp 검색
Group id(그룹 식별, 도메인 역순으로 작성): com_smhrd
Artfact id(프로젝트 식별):maven
3. superclass 상속: build path-other and export-체크 후 apply
4. pom.xml: maven 환경설정, 외부라이브러리 추가 시 사용함
5. 외부라이브러리 설치하기
외부 라이브러리 다운로드 사이트(Maven)
1)Servlet 라이브러리 설치: Java Servlet API(3.1.0) Maven 코드 복사
외부라이브러리 설치코드를 <dependencies>-</dependency> 태그 다음 줄에 추가-저장
2)라이브러리 설치 확인
index.jsp에서 ctrl+d한 후 다시 실행
3)URL Mapping 값 설정
● 모듈 버전 4.0 이상은 annotation 방식으로 URL Mapping
● 모듈 버전 4.0 이하는 web.xml에서 URL Mapping값 지정
현재 프로젝트 버전
-Servlet 파일에서 annotation 방식으로 매핑값을 지정하면 중복되므로 작성하지 않음
-mapping 값 변경: <url-pattern> 태그
[Mybatis.Lombok]
1. Mybatis: Java를 위한 SQL 문장을 Mapping해주는 Framework
-JDBC로 처리하는 상당 부분의 코드와 파라미터 설정 및 결과 매핑을 대신 처리
-Java 코드와 SQL문장을 분리하여 생산성 향상, 유지 보수 편리
Mybatis 홈페이지: https://blog.mybatis.org/
2. Mybatis 설치: Mybatis 홈페이지-Products-MyBatis3(3.4.6) Maven 코드 복사
*maven project update(변경사항 적용): 프로젝트-Maven-Update Project (Alt+F5)
-Force Update of Snapshots/Releases 체크-finish
4. Mybatis 환경설정: Mybatis 홈페이지-docs 페이지 참고
https://mybatis.org/mybatis-3/getting-started.html
1)Installation: target 폴더의 pom.xml에서 mybatis 라이브러리 추가
2)Building SqlSessionFactory from XML
① mybatis-config.xml 파일
-Building SqlSessionFactory from XML에서 두번째 xml 코드 복사 붙여넣기
value에 바로 보안키를 작성하면 보안에 취약하므로 db.properties.file에 보안키 작성
② db.properties.file 파일: mybatis-config.xml에 있는 value값 작성
-띄어쓰기(공백), 주석x, Enter x, 실행할 코드 행(4행)까지만 존재해야 함
③ db.properties 파일을 config.xml에 연결: mybatis-config 파일에 코드작성
<configuration>태그 아래에 <properties> 태그 추가하여
resource=”db.properties 파일 경로”작성
④mapper.xml 파일을 config.xml에 연결: <mapper> 태그에 resource에 Mapper의
파일 경로로 변경
3)[Mapper.xml]만들기: SQL 쿼리문을 작성하는 XML 파일
● Exploring Mapped SQL Statements 코드 복사하여 붙여넣기
● <mapper> 태그의 namespace에 mapper.xml 파일 경로 작성
● namespace: mapper 안에 있는 id를 그룹화하는 기능
-id는 같은 mapper에서는 중복 불가, 다른 mapper에서는 중복 가능
-쿼리문 실행 시 정확한 id를 구별하기 위해 namespace 작성
-주로 mapper 파일의 경로를 작성
4)[sqlSessionManager.class] 파일 만들기: DB 연결하는 sqlSessionFactory 코드 작성
① static 메소드 만들기-try~catch문 작성하기
② Building SqlSessionFactory from XML의 첫번째 코드를 try문에 붙여넣기
③ resource에 mybatis-config 파일 경로 작성
④ DAO에서 SQLSession 사용할 수 있도록 get 메소드 생성하기
- sqlSessionFactory 전역변수로 만들기
● sqlSessionManager: sqlSessionFactory를 관리하는 클래스
-sqlSessionFactory: sqlSession이 여러 개 있는 객체
*sqlSession==Connection 객체와 같은 기능
mybatic: DB 연결을 "미리" 진행하여 DB 자원 소모를 줄여 성능을 향상하려는 목적
-Connection 객체 사용하는 것이 가장 DB 자원 소모가 큼
-Connection pool을 통해 5개의 connection을 미리 만들어 connection을 빌리고
반납하는 방식으로 connection 객체를 재사용
● static 블록: 클래스가 로딩된 후 무조건 실행되는 블록
-메모리 영역: static,heap(참조형 데이터 타입 저장), stack(기본타입, 주소값, 지역변수
저장) 등
-static: 메모리에 한 번 할당되어 프로그램이 종료할 때 해제되는 메모리
-장점: static에 저장되면 모든 객체에서 공유가능
→다른 메소드나 변수도 static 타입이어야 사용가능함
-단점: 자주 사용하면 프로그램이 종료되기 전까지 메모리에 할당되기 때문에 시스템
메모리 낭비
'JSP&Servlet' 카테고리의 다른 글
[JSP]7. Mybatis 로 JDBC 구현하기 (0) | 2023.06.29 |
---|---|
[JSP]6. Maven&Mybatis (0) | 2023.06.28 |
[JSP]5. Scope (0) | 2023.06.26 |
[JSP]4. cookie&session (0) | 2023.06.23 |
[JSP]3. MVC 패턴으로 JDBC 만들기 (0) | 2023.06.22 |