mybatis : 객체 지향 언어인 Java의 관계형 데이터베이스 프로그래밍을 좀 더 쉽게 도와주는 퍼시스턴스 프레임워크
lombok : java의 라이브러리로 반복되는 메소드를 Annotation 을 사용해서 자동으로 작성해주는 라이브러리
entity는 boardDTO이다.
mapper.java는 boardDAO이다.
mapper.xml는 boardDAO랑 마찬가지로 mapper.java를 쓰던가 mapper.xml를 쓰던가 둘중 하나만 하면된다.
DAO는 sql에서 사용하는 문장을 설정하는것
boardController에 가상의 데이터를 설정 해준다.
14번에 public을 지정 안해주는 이유는 이미 8번에 public main이 있기 때문에 안에 포함해준다.
Model : 1. HashMap 형태를 갖고 있으며,
2. key, value값을 가지고 있다.
3. addAttribute()와 같은 기능을 통해 모델에 원하는 속성과 값을 주어
뷰에 데이터를 전달할 수 있다.
servlet : client 의 요청에 대한 결과를 response해주는 역할을 하는 자바 프로그램
servlet-mapping : 특정 servlet을 요청할 때, 전체 경로를 url에 써주면, 너무 복잡하고 보안에도 취약하기 때문에,
간단하게 경로를 표현해주는 것
web.xml :
Servlet을 생성하고 어떤 Servlet이 어떤 요청을 담당할 것인지(mapping),
어떤 요청이 인증과정을 거칠 것인지 등의 제어 기능을 지원해줍니다.
그러려면 WAS에게 Servlet에 대한 정보를 줘야하는데 이때 쓰이는 파일
sevler-context
context:component-scan : 모든 하위 경로에 component-scan의 기본 필터를 제외하고
annotation 타입의 Controller 필터만 추가한다는 의미
ViewResolver : MVC 패턴에서 컨트롤러가 처리를 마친 후에
어떤 뷰로 응답을 생성할지 결정하는 역할(즉 view의 jsp에서 일일히 접두사 접미사 안치고 바로 빠질수 있게 해주는것)
contextConfigLocation :
1. 스프링프레임 워크가 동작하기 위한 설정파일의 위치를 알려주는 파라미터
2. contextConfigLocation이라는 파라미터를 사용하면 Context Loader가 load할 수 있는 설정파일을 쓸 수 있다.
일단 hikariCP를 설정 해주려면 먼저 pom.xml에 설정 해주어야 한다.
root-context.xml :
1.DB연결과 관련된 설정을 하는 xml파일
2.xml이기 때문에 Java버전인 String으로 시작하는게 아닌 bean으로 시작을 한다.
HikariCP
- spring과 mybatis의 중복되는 역할을 각자 담당
- spring : DB연결(HikariCP API) -> zero overhead로 성능이 좋은 cp
- mybatis : SQL과 Mapping하는 역할
- DB연결 하기 위해서 HikariCP에서 필요한 class 2개
1. HikariConfig : DB의 접속정보를 가지고 있는 class
2. HikariDataSource : DB의 접속정보를 가지고 Connection Pool을 만들어줄 class-->
constructor-arg : 객체에 생성자를 사용하는 방식
ref : 위치
JDBC
- Java Database Connectivity
- 자바언어와 DB를 연결해주는 통로와 같은 것.
- 자바 프로그램내에서 SQL문을 실행하기 위한 자바 API.
- db 학습시 SQL이용해서 db에다 직접 값을 넣거나 조회하는 등의 일을 수행했음.
- 프로그램이 이 일을 대신할 수 있게 만들어줘야 하는데 이때 사용하는 것이 JDBC이다.
====================================== Controller ====================================
BoardMapper의 이름을 boardMapper로 수정이 가능하다.
================================ mapper ==============================
mapper.xml 혹은 mapper.java에서 둘중 아무나 설정
encodingFilter : UTF-8 기반의 프로젝트에서 한글이 깨지지 않도록 Encoding Character Set을 처리해주는 필터
forceEncoding : 충돌시 강제 인코딩을 하는것
'Spring' 카테고리의 다른 글
Web Layer + Peersistence Layer (0) | 2024.01.07 |
---|---|
JDBC 설정하기 (0) | 2023.12.29 |
여러개의 객체를 한곳에 추가해주기 List (0) | 2023.12.29 |
내가 찾고싶은거 일일히 찾기 힘들때 (0) | 2023.12.29 |
저장했으나 업데이드가 안될시(강제적으로 하는방법) (0) | 2023.12.28 |