java 7

Tree를 직접 구현해보자 - 1

개요Tree에 대한 이론을 배웠고, 기본적인 형태를 직접 구성해보며 알아보자각각의 트리에 대해 실습해보자일반 트리 (N-ary Tree)이진 트리 (Binary Tree)이진 탐색 트리 (BST)균형 트리 (AVL, Red-Black)힙 (Heap)트라이 (Trie)일반 트리 (N-ary Tree)각 노드가 여러 자식을 가질 수 있는 구조class TreeNode { String val; List children; public TreeNode(String val) { this.val = val; this.children = new ArrayList(); } public void addChild(TreeNode child) { children..

Cs 2025.03.25

Object Clone?

개요오브젝트(최상위)클래스에서 사용될 수 있는, clone() 에 대해 알아봅시다.Clone() 메서드의 사용법Java Object 클래스의 clone() 메서드는 자바 언어에서 지원하는 객체 복사 메서드이고, 어떻게 생겼는지 실제 clone() 메서드를 살펴보자protected native Object clone() throws CloneNotSupportedException;protected같은 패키지안에서만 접근가능하거나, protected 클래스를 상속한 하위 클래스에서만 접근 가능 (내가 까먹었으니 다시 상기시키고 가겠다)ProtectedOutClasspackage protectedClassOut;import protectedClassOut.protectedInClass.ProtectedInCl..

Java 2025.03.06

Map 자료구조에 대한 실험

개요MAP 자료구조에 대한 테스트를 진행해보며 알아봅시다.실험테스트 코드 1import java.util.HashMap;import java.util.Map;public class KeySetTest { public static void main(String[] args) { Map testMap = new HashMap(); testMap.put("A", "1"); System.out.println("Answer : " + testMap.get("A")); }}값 예상 1어떤 값이 찍힐까?물론 당연하게도 1이 찍힌다테스트 코드 2import java.util.HashMap;import java.util.Map;public class KeySetTest {..

Java 2025.02.24

Java,Servlet, Jsp를 활용한 레거시 코드에 대해 이해해보자 - 3탄

개요클라이언트로부터 받은 데이터를 MyBatis, JDBC를 활용하여 저장해보자pom.xml에 MySQL Driver 의존성 추가 mysql mysql-connector-java 8.0.33DatabaseUtil 클래스로 연결 메서드 작성package com.example.legacyjavapractice.config;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.Properties;public class DatabaseUtil { private static St..

Java 2025.02.07

try-with-resources ?

개요try-with-resourcestry-finally의 차이점을 알 수 있습니다try-with-resources자원을 자동으로 해제(close)해주는 Java의 예외 처리 구문입니다close()를 직접 호출하지 않아도 자원을 안전하게 정리 할 수 있습니다try-finally와의 차이try-finally에서는 예외가 발생하여도 finally에서 close()를 호출해야했음try-with-resources를 사용하면 finally없이 자동으로 close() 호출기존 try-finally 방식Connection conn = null;PreparedStatement pstmt = null;ResultSet rs = null;try { conn = DriverManager.getConnection("jd..

Java 2025.02.06

Java,Servlet, Jsp를 활용한 레거시 코드에 대해 이해해보자 - 2탄

개요이전에는 기초적인 Java,Servlet,xml을 활용한 매핑 구성 방식에 대해 알아 보았다.오늘은 클라이언트 - 서버구조의 컨트롤러의 역할을 수행시켜보자게시글 생성 프로젝트파일을 먼저 만들어주자음 일단 잘 나오는모습이다화면을 좀 꾸며주도록 하자 📌 게시글 생성 게시글을 작성하려면 아래 내용을 입력하세요. 제목 내용 게시글 생성 web.xml boardPost com.example.legacyjavapractice.servlet.BoardServlet boardPost ..

Java 2025.02.06

Java,Servlet, Jsp를 활용한 레거시 코드에 대해 이해해보자 - 1탄

개요Java,Servlet, Jsp에 대한 레거시 코드에 대략적인 흐름에 대해 파악해 봅시다.현재 나의 프로젝트 구조설치과정은 이곳을 참고해주시기 바랍니다설정Jdk (1.8)Spring 미사용ServletJSP설정파일들을 알아보자WEB-INF, Web.xmlWEB-INFWEB-INFomationJava 웹 애플리케이션의 보호된 디렉토리로, 외부 클라이언트에서 직접 접근할 수 없는 폴더즉, 외부(브라우저)로 노출시키고 싶지않은 파일을 모아두는곳Web.xmlJava EE기반의 웹 애플리케이션 설정 파일주요기능들론 아래와같은것이 있다서블릿 URL 매핑 설정필터 설정리스너 설정초기화 매개변수 (서블릿, 애플리케이션 전역에서 사용할 값 지정 가능)보안설정 (인증 및 권한관리)하지만 서블릿 3.0이상버젼부터는, 서..

Java 2025.02.06