다음은 실무 위주의 **자바 Swing** 책 목차 초안이다. --- # **실무에서 바로 쓰는 자바 Swing** ## **1. 개요 및 환경 설정** 1.1. Swing이란? (AWT와의 차이) 1.2. JavaFX와 비교: 언제 Swing을 선택할까? 1.3. JDK 설치 및 개발 환경 설정 1.4. IntelliJ IDEA와 Eclipse에서 Swing 프로젝트 생성 ## **2. Swing의 기본 구성 요소** 2.1. JFrame과 창 다루기 2.2. JPanel과 레이아웃 기본 2.3. JLabel, JButton, JTextField의 활용 2.4. 이벤트 리스너 개념 및 적용 ## **3. 레이아웃 매니저 활용** 3.1. FlowLayout, BorderLayout, GridLayout 3.2. BoxLayout, CardLayout, GridBagLayout 3.3. 사용자 정의 레이아웃 적용하기 3.4. 레이아웃 없이 직접 컴포넌트 배치하기 ## **4. 고급 컴포넌트 활용** 4.1. JTable을 활용한 데이터 표시 4.2. JTree를 활용한 계층 구조 표현 4.3. JList와 JComboBox의 활용 4.4. JTabbedPane, JSplitPane을 활용한 UI 구성 ## **5. 이벤트 처리 심화** 5.1. ActionListener, MouseListener, KeyListener 5.2. 익명 클래스와 람다 표현식 활용 5.3. Adapter 클래스 활용 5.4. 키보드 단축키 및 마우스 이벤트 조합 ## **6. 멀티스레딩과 Swing** 6.1. Swing에서의 스레드 문제 (EDT 개념) 6.2. `SwingWorker`를 활용한 비동기 처리 6.3. ProgressBar와 백그라운드 작업 처리 6.4. 실시간 UI 업데이트 기법 ## **7. 파일 및 데이터베이스 연동** 7.1. JFileChooser를 활용한 파일 입출력 7.2. CSV, JSON 파일 읽고 쓰기 7.3. JDBC를 이용한 MySQL, PostgreSQL 연동 7.4. 테이블 데이터와 JTable 연동 ## **8. UI 커스터마이징과 테마 적용** 8.1. 기본 Look and Feel 변경하기 8.2. FlatLaf, JTattoo 등을 이용한 테마 적용 8.3. 사용자 정의 컴포넌트 만들기 8.4. 애니메이션 효과 적용 ## **9. 네트워크 및 외부 API 연동** 9.1. Swing에서 HTTP 요청 보내기 9.2. WebSocket을 활용한 실시간 데이터 표시 9.3. JSON 데이터 파싱 및 UI 적용 9.4. RSS, REST API 데이터를 Swing UI에서 보여주기 ## **10. 배포 및 실전 프로젝트** 10.1. JAR 파일 및 실행 파일 생성 10.2. Java Web Start 및 JNLP 활용 10.3. Spring Boot와 연동하여 관리 UI 개발 10.4. 실전 프로젝트: CRUD 기능이 포함된 데스크톱 앱 제작 --- 이 책은 실무에서 Swing을 활용하여 즉시 사용할 수 있는 내용을 중심으로 구성되었다. 필요한 부분이 있으면 추가해도 좋겠다.