편집자의 선택
Java 기초를 갖춘 소프트웨어 개발자, 대학에서 컴퓨터 및 관련 전공을 전공하는 학생.
간략한 소개
이 책은 네 부분으로 나누어져 있다. 첫 번째 부분은 JDK 다운로드 및 설치, 환경 변수 구성, MyEclipse 다운로드 및 기본 구성을 포함한 Java 개발 환경 구축입니다. 두 번째 부분은 JDBC의 단점 분석, MyBatis에 대한 배경 소개, 입문자용 프로그램 준비, 구성 파일 분석, 고급 매핑 및 캐시 구조에 대한 설명, 마지막으로 MyBatis와 MyBatis의 통합을 포함한 MyBatis 기술 소개입니다. 스프링 프레임워크. 세 번째 부분에서는 Spring MVC에 대한 배경 소개, 전반적인 아키텍처 분석, 환경 구성, 프로세서 및 매퍼에 대한 설명, 프론트 엔드 컨트롤러의 소스 코드 분석, 다양한 뷰 파서 소개, 요청 매핑 및 요청 매핑 등을 포함한 Spring MVC 기술에 대한 소개입니다. 매개변수 바인딩 소개, 유효성 검사 및 예외 처리 설명, 인터셉터. 네 번째 부분은 Spring MVC와 MyBatis의 실제 프로젝트 통합으로, 과일 온라인 판매 플랫폼의 수요 분석, 기능 설계, 데이터베이스 설계 및 모듈 세부 코딩 구현을 통해 독자는 통합 프로젝트 개발의 전체 프로세스를 이해할 수 있습니다. 이 책은 예제와 결합하여 얕은 것부터 깊은 것까지 이해하기 쉽게 프레임워크를 소개하여 독자에게 시작하는 데 강력한 도움을 제공하고 향후 기술 개선을 위한 탄탄한 기반을 마련합니다.
저자 소개
1990년대에 태어난 최첨단 프로그래머 Zhu Yaoguang은 컴퓨터 기술 공부를 좋아하고 괴짜 정신을 추구합니다. 학부 시절에는 알고리즘과 데이터 구조 학습에 관심이 많았으며, 다수의 ACM 알고리즘 대회에 참가하여 개인상과 팀상을 여러 차례 수상했습니다. 소프트웨어 저작권을 보유한 "협업 스케치패드" 및 "포켓 전원 공급 장치" 소프트웨어의 설계 및 개발에 참여했으며, 제8회 대학생 컴퓨터 디자인 공모전에서 2등, 3등상을 수상했습니다. 2015년에는 CSDN의 개인 블로그에서 '준전문가'라는 타이틀을 획득했으며, 수많은 독창적인 블로그 게시물을 보유하고 있으며 그의 블로그 방문자 수는 100만 명에 달합니다.
목차
1부 준비
Chapter 1 개발 환경 설정 2
1.1 JDK 설치 및 구성 2
1.1.1 JDK 3 다운로드
1.1.2 JDK 4 설치
1.1.3 JDK 환경변수 설정 4
1.1.4 Java 환경이 성공적으로 설정되었는지 확인 6
1.2 MyEclipse 7 설치 및 사용
1.2.1 MyEclipse 7 다운로드
1.2.2 MyEclipse 구성 8
1.3 최초의 자바 클래스 10
2부 마이바티스 기술 소개
2장 마이바티스 이해하기 14
2.1 전통적인 JDBC 개발 모델의 결함 14
2.1.1 JDBC 연결 데이터베이스 모드 분석 14
2.1.2 JDBC 연산 SQL 문 패턴 분석 16
2.1.3 최적화해야 할 문제 17
2.2 MyBatis 18에 대한 첫 소개
2.2.1 마이바티스 18 소개
2.2.2 마이바티스 전체 아키텍처 18
2.2.3 마이바티스 운영 프로세스 21
3장 MyBatis 작업 환경 구축 23
3.1 시작하기 프로그램 구축 및 테스트 23
3.1.1 데이터베이스 준비 23
3.1.2 건축 엔지니어링 환경 24
3.1.3 로그 출력 환경 구성 파일 쓰기 26
3.1.4 데이터베이스 커넥션 풀 구성 파일 쓰기 27
3.1.5 SQL 매핑 구성 파일 작성 29
3.1.6 데이터 상호작용 클래스 및 테스트 케이스 작성 30
3.2 프로그램 데이터 운용 시작하기 33
3.2.1 퍼지 쿼리 예제 33
3.2.2 새로운 샘플 34
3.2.3 샘플 삭제 및 수정 37
Chapter 4 MyBatis 구성 파일에 대한 자세한 설명 40
4.1 SqlMapConfig 구성 파일에 대한 자세한 설명 40
4.1.1 속성 구성 분석 43
4.1.2 설정 구성 분석 44
4.1.3 typeAliases 구성 분석 48
4.1.4 typeHandlers 구성 분석 50
4.1.5 objectFactory 구성 분석 53
4.1.6 플러그인 구성 분석 56
4.1.7 환경 구성 분석 58
4.1.8 매퍼 구성 분석 60
4.2 매퍼 매핑 파일 61
4.2.1 매핑 파일에 대한 일반 소개 61
4.2.2 매퍼 구성 입력 매핑 64
4.2.3 매퍼 입력 매핑 예제 65
4.2.4 매퍼 구성 출력 매핑 68
4.2.5 매퍼 자동 매핑 75
4.2.6 매퍼는 동적 SQL 문을 구성합니다. 76
5장 마이바티스 고급 매핑 80
5.1 테스트 데이터 모델 구축 80
5.1.1 비즈니스 모델 분석 80
5.1.2 업무 기반 테스트 테이블 생성 81
5.2 일대일 질의 83
5.2.1 resultType을 사용하여 구현하기 83
5.2.2 resultMap을 사용하여 85 구현하기
5.3 일대다 질의 87
5.3.1 엔터티 클래스 정의 및 매퍼 준비 87
5.3.2 테스트 쿼리 결과 89
5.4 다대다 질의 90
5.4.1 엔터티 클래스 정의 및 매퍼 준비 91
5.4.2 테스트 쿼리 결과 94
5.5 지연 로딩 96
5.5.1 매퍼 매핑 구성 작성 96
5.5.2 지연 로딩 효과 테스트 97
5.6 매퍼 동적 프록시 99
5.6.1 매퍼 에이전트 인스턴스 준비 99
5.6.2 동적 프록시 효과 테스트 100
6장 마이바티스 캐시 구조 102
6.1 레벨 1 쿼리 캐시 103
6.1.1 1차 캐시 원리 설명 103
6.1.2 레벨 1 캐시 테스트 예 103
6.2 보조 쿼리 캐시 105
6.2.1 2차 캐시 원리 설명 105
6.2.2 2차 캐시 테스트 예 106
6.2.3 보조 캐시가 지워졌는지 확인
Chapter 7 마이바티스 기술 개발 110
7.1 MyBatis와 Spring 110의 통합
7.1.1 테스트 프로젝트 생성 110
7.1.2 종속 jar 패키지 소개 111
7.1.3 Spring 구성 파일 작성 112
7.1.4 마이바티스 구성 파일 작성 114
7.1.5 매퍼 및 기타 구성 파일 작성 115
7.1.6 DAO 레이어 작성 116
7.1.7 쓰기 서비스 테스트 클래스 117
7.1.8 매퍼 에이전트 사용 118
7.2 마이바티스 리버스 엔지니어링 121
7.2.1 리버스 엔지니어링 구성 121
7.2.2 역방향 데이터 파일 생성 클래스 123
7.2.3 테스트 방법 실행 124
7.2.4 테스트에 의해 생성된 데이터 파일 126
3부 Spring MVC 기술 소개
8장 스프링 MVC 132
8.1 스프링 MVC 기본 133
8.1.1 스프링 아키텍처 133
8.1.2 Spring MVC 요청 프로세스 134
8.2 Spring MVC와 Struts의 차이점 135
8.3 Spring MVC 환경 구축 136
8.3.1 종속 jar 패키지 추가 및 프런트엔드 컨트롤러 구성 137
8.3.2 핵심 구성 파일 springmvc를 작성합니다. XML138
8.3.3 핸들러 프로세서 및 뷰 작성 140
9장 프로세서 매퍼 및 어댑터 144
9.1 주석이 없는 프로세서 매퍼 및 어댑터 144
9.1.1 주석이 없는 프로세서 매퍼 144
9.1.2 주석이 없는 프로세서 어댑터 146
9.2 주석이 달린 프로세서 매퍼 및 어댑터 151
10장 전면 컨트롤러 및 뷰 리졸버 154
10.1 프론트엔드 컨트롤러 소스코드 분석 154
10.2 리졸버 보기 162
10.2.1AbstractCachingViewResolver 162
10.2.2UrlBasedViewResolver 162
10.2.3InternalResourceViewResolver 163
10.2.4XmlViewResolver 163
10.2.5BeanNameViewResolver 164
10.2.6ResourceBundleViewResolver 165
10.2.7FreeMarkerViewResolver와 VelocityViewResolver 167
10.2.8 ViewResolver 체인 168
11장 요청 매핑 및 매개변수 바인딩 169
11.1 컨트롤러와 요청 매핑 169
11.2 매개변수 바인딩 프로세스 173
11.2.1 단순 유형 매개변수 바인딩
11.2.2 패키징 유형 매개변수 바인딩 176
11.2.3 컬렉션 유형 매개변수 바인딩
12장 검증 187
12.1 Bean Validation 데이터 검증 188
12.1.1 검증 프레임워크 구축 188
12.1.2 검증 주석 정보 추가 189
12.1.3 테스트 검증 효과 191
12.1.4 검증 주석에 대한 포괄적인 소개 192
12.2 그룹 확인 193
12.2.1 그룹 확인 설정하기 193
12.2.2 시험군 검증 효과 195
12.3 Spring Validator 인터페이스 검증 195
12.3.1 검증인터페이스의 활용 195
12.3.2 검증자 인터페이스 검증 테스트 199
13장 예외 처리 및 인터셉터 201
13.1 전역 예외 처리기 201
13.2 인터셉터 정의 및 구성 207
13.2.1HandlerInterceptor 인터페이스 207
13.2.2WebRequestInterceptor 인터페이스 209
13.2.3 인터셉터 체인 210
13.2.4 인터셉터 로그인 제어 213
14장 Spring MVC의 기타 작업 217
14.1 스프링 MVC를 이용한 파일 업로드 217
14.2 Spring MVC를 사용하여 JSON 상호작용 구현 223
14.3 Spring MVC를 사용하여 RESTful 스타일 구현 231
14.3.1RESTful 231
14.3.2 Spring MVC를 사용하여 RESTful 스타일 구현 232
14.3.3 정적 자원 접근 문제 235
Part 4 Spring MVC와 MyBatis 프로젝트 실전 전투
15장 프로젝트 분석 및 모델링 238
15.1 프로젝트 요구사항 분석 238
15.1.1 시스템 주요 사용자 간의 비즈니스 관계 분석 239
15.1.2 시스템 주요 사용자 간의 경제적 관계 분석 239
15.2 프로젝트 UML 범례 240
15.2.1 UML 다이어그램의 유형 240
15.2.2 그리기 시스템 사용 사례 다이어그램 241
15.2.3 시스템 모듈 다이어그램 그리기 241
15.3 프로젝트 데이터베이스 모델링 242
15.3.1 시스템 데이터 관계 분석 243
15.3.2 시스템 메인 테이블 디자인 243
Chapter 16 개발 프레임워크 환경 설정 250
16.1 프로젝트의 Maven 환경 설정 250
16.1.1 Maven 다운로드 구성 250
16.1.2 Maven 프로젝트 생성 252
16.1.3 프로젝트에 종속성 추가하기 254
16.2 개발 프레임워크의 기본 구성 및 테스트 259
16.2.1 개발 프레임워크 환경 구성 259
16.2.2 테스트 환경 구성 결과 266
Chapter 17 핵심 코드 및 로그인 모듈 작성 277
17.1 각 레이어의 핵심 기본코드 277
17.1.1 DAO 계층의 핵심 코드 작성 277
17.1.2 Controller 계층의 핵심 코드 작성 279
17.2 로그인 등록 관리 모듈 280
17.2.1 로그인 모듈 작성 280
17.2.2 로그인 인증 서비스 작성 283
17.2.3 등록 모듈 작성 288
17.2.4 등록 서비스 작성 290
Chapter 18 소매업자 및 상품 관리 모듈 292
18.1 소매점 관리 모듈 292
18.1.1 기본 탐색 모음 추가 292
18.1.2 기본 컨트롤러 및 엔터티 클래스 작성 294
18.1.3 매퍼 매핑 파일 생성 295
18.1.4 DAO 레이어 처리 로직 작성 297
18.1.5 서비스 계층 처리 로직 작성 297
18.1.6 컨트롤러 클래스 개선 298
18.1.7 관련 뷰 페이지 작성 300
18.1.8 페이징 연산 로직 작성 302
18.1.9 페이지 매김 효과 테스트 305
18.1.10 쓰기 및 편집 기능 307
18.1.11 테스트 편집 기능 310
18.1.12 삭제 기능 쓰기 311
18.1.13 삭제 기능 테스트 312
18.1.14 함수 작성 및 추가 312
18.1.15 추가 기능 테스트 314
18.2 화물정보 관리 모듈 315
18.2.1 네비게이션 바 및 Controller 315 기본 준비
18.2.2 매퍼 매핑 파일 생성 316
18.2.3 DAO 레이어 처리 로직 작성 318
18.2.4 서비스 계층 처리 로직 작성 319
18.2.5 컨트롤러 클래스 320 개선
18.2.6 관련 뷰 페이지 작성 322
18.3 액세서리 관리 모듈 325
18.3.1 네비게이션 바와 Controller 325의 기본 준비
18.3.2 매퍼 매핑 파일 생성 326
18.3.3 컨트롤러 클래스 개선 327
18.3.4 관련 뷰 페이지 작성 329
18.3.5 페이지 효과 확인 331
18.3.6 일괄 삭제 구현 332
Chapter 19 구매 및 판매 계약 관리 모듈 335
19.1 구매 및 판매 계약 관리 모듈 335
19.1.1 구매 및 판매 계약 매퍼 구현 335
19.1.2 DAO 레이어 처리 로직 작성 341
19.1.3 서비스 계층 처리 로직 작성 342
19.1.4 컨트롤러 기본 클래스 작성 344
19.1.5 관련 뷰 페이지 작성 345
19.2 가맹점 347
19.2.1 덧셈 로직 작성 347
19.2.2 소매점 연관 팝업창 구현하기 349
19.2.3 소매업체 협회 테스트 354
19.3 관련 과일제품 354
19.3.1 상품 관련 디스플레이 및 팝업박스 작성 354
19.3.2 물품의 기능을 확인하고 358을 쓴다.
19.3.3 화물 협회 테스트 360
19.4 매매계약 개선 360
19.4.1 계약 관련 정보 통합 제출 360
19.4.2 병합 커밋 테스트
19.4.3 계약서 인쇄 및 삭제 구현 369
19.5 요약 372
서문/서문
머리말
Java 언어가 탄생한 이래로 Java 언어를 기반으로 개발된 많은 소프트웨어가 등장했으며, 수년 동안 Java EE 개발 환경을 사용하여 엔터프라이즈급 웹 애플리케이션을 개발해 왔습니다. 수년간의 업데이트와 업그레이드를 통해 Java EE 플랫폼의 안정성과 완벽한 보안 메커니즘을 통해 Java EE 플랫폼은 엔터프라이즈 수준 웹 애플리케이션 개발의 최전선에 확고히 자리 잡았으며 많은 웹 개발자의 선호를 받아 왔습니다. Java EE를 개발하는 동안 많은 개발자와 조직이 해당 API를 최적화, 개선 및 캡슐화했으며 Rod Johnson이 만든 Spring 프레임워크, Gavin King 및 JBoss 팀이 개발한 프레임워크와 같은 우수한 오픈 소스 프레임워크가 많이 등장했습니다. Hibernate 프레임워크, Apache Jakarta 프로젝트의 Struts 프레임워크, 그리고 지난 2년 동안 인기를 끌었던 SpringFrameWork의 후속 제품인 Spring MVC와 Apache의 오픈 소스 프로젝트 MyBatis도 있습니다. 이러한 오픈 소스 프레임워크를 사용하면 웹 개발의 효율성과 품질이 크게 향상되었습니다.
이 책은 Spring MVC와 MyBatis 프레임워크의 기본 지식과 핵심 기술을 자세하게 소개한다. 프레임워크의 기본 이론과 API 개념을 학습함으로써 독자는 프레임워크의 전반적인 기술을 얕은 것부터 깊은 것까지 학습하여 배운 내용을 적용하는 목적을 달성할 수 있습니다. 이론적인 지식을 익히는 동시에, 예문 쓰기와 실습을 통해 지식 포인트를 더욱 철저하게 이해하고 숙달할 수 있습니다. 마지막으로, 소프트웨어 요구사항 분석, 기능 설계, 데이터베이스 생성, 개발 환경 구축, 코딩 개발까지 기업 수준 프로젝트의 실제 작성을 통해 독자는 통합 프레임워크의 실제 개발 기술을 마스터하고 미래를 위한 탄탄한 기반을 마련할 수 있습니다. 관련 업무 및 연구 자료.
이 책의 특징
1. 내용은 기본적이고 포괄적이며 Spring MVC와 MyBatis의 핵심 기술 지식을 다루고 있습니다.
이 책은 Spring MVC와 MyBatis의 의존성 환경부터 구성 파일, API 애플리케이션, 다양한 매개변수에 대한 설명까지 자세히 설명하여 독자가 프레임워크의 개발 지식 체계를 쉽고 빠르게 익힐 수 있도록 한다. 일부 핵심 지식 포인트의 경우 소스 코드도 분석하여 독자가 프레임워크의 설계 개념을 깊이 이해하고 깊은 수준에서 프레임워크의 이론을 이해할 수 있도록 합니다.
2. 지식포인트에는 생생한 예시와 연습문제가 함께 제공되며, 실제 실습을 통해 기능을 구현해 볼 수 있습니다.
이 책의 각 지식 포인트에 대해 구체적인 예를 작성하여 독자에게 지식 포인트를 사용하는 기술과 방법을 보여줌으로써 독자가 기본적인 이론적 지식을 습득할 수 있을 뿐만 아니라 특정 분야에서 지식 포인트의 실제 적용 기술을 배울 수 있도록 돕습니다. 프로젝트.
삼. 대규모 프로젝트의 독특한 추적 설명 및 개발
이 책에서는 Spring MVC와 MyBatis에 대한 기본 지식과 예제를 소개한 후 실제 프로젝트에 대한 장도 추가합니다. 이전 튜토리얼과 달리 이번 프로젝트는 실제 요구 사항부터 시작하여 소프트웨어 수요 분석, 기능 설계, 데이터베이스 설계 및 환경 구축을 거쳐 최종 개발까지 진행되므로 독자는 아이디어부터 최종 전달까지 전체 웹 프로젝트를 단계별로 경험할 수 있습니다. .전체 과정. 대규모 프로젝트의 추적 학습에서 독자는 Spring MVC와 MyBatis 프로젝트를 통합하는 방법을 깊이 이해할 수 있을 뿐만 아니라 전체 웹 프로젝트의 모든 개발 프로세스를 마스터할 수 있습니다.
이 책의 내용과 구성
1부 준비
이 기사에서는 Java 개발 환경 구성, 컴파일러 선택 및 설치, 후속 개발 및 학습을 위해 독자를 준비하는 방법에 대해 자세히 설명합니다.
2부 마이바티스 기술 소개
본 글에서는 기존 JDBC 개발 모델의 단점을 분석하여 MyBatis 프레임워크 탄생 배경과 특징을 소개한다. 그런 다음 입문 프로그램을 통해 독자는 MyBatis에 대한 일반적인 이해를 갖게 되며 MyBatis 구성 파일, 고급 매핑 및 캐시 구조와 같은 지식 포인트를 설명하기 시작합니다. 마지막으로 향후 Spring MVC와의 통합을 준비하기 위해 MyBatis와 Spring의 통합 개발에 대해 설명했습니다.
3부 Spring MVC 기술 소개
이 기사에서는 Spring MVC의 기술적 배경을 소개하고 이를 Struts 프레임워크와 비교하여 독자가 프로젝트에서 Spring MVC가 수행하는 역할에 대한 일반적인 이해를 제공합니다. 그런 다음 그래픽과 텍스트 설명을 통해 Spring MVC의 전체 운영 체제와 포함된 아키텍처 모듈을 자세히 소개하여 독자가 "코끼리를 느끼는 시각 장애인"이 아닌 모듈식 사고 방식으로 전체 프레임워크를 배울 수 있도록 합니다. 독자는 기술적 배경과 일반적인 프레임워크 구조, Spring MVC의 환경 구성, 프로세서 매퍼 및 어댑터, 프런트엔드 컨트롤러 및 뷰 파서, 요청 매핑 및 매개변수 바인딩, 유효성 검사, 예외 처리 및 인터셉터 및 기타 지식 포인트를 이해합니다.
Part 4 Spring MVC와 MyBatis 프로젝트 실전 전투
이 기사에서는 과일 온라인 판매 플랫폼 프로젝트를 사용하여 독자가 프로젝트의 기능 설계 및 프레임워크 계획부터 특정 모듈의 세부 사항에 이르기까지 프로젝트 리더 및 개발자의 관점에서 프로젝트의 전체 개발 프로세스를 종합적으로 분석할 수 있도록 합니다. 코딩 구현을 통해 독자는 Spring MVC와 MyBatis를 매크로에서 마이크로까지 통합하는 실제 프로젝트 개발 프로세스를 완벽하게 파악할 수 있습니다.
이 책의 대상 독자
.Java 소프트웨어 개발 엔지니어
.Spring MVC와 MyBatis의 지식 포인트를 완벽하게 이해하고 싶은 분
.실질적인 웹 프로젝트 개발 방법을 배우고 싶은 분
.다양한 컴퓨터 및 소프트웨어 전공자
.그 외 웹 개발에 관심이 있는 분