CS/JAVA
-
Java Template EngineCS/JAVA 2025. 3. 31. 08:14
자바 템플릿 엔진이란 서버 사이드에서 HTML 등의 문서(뷰)를 생성할 때, 자바 코드와 데이터를 HTML에 삽입할 수 있도록 도와주는 도구입니다. 쉽게 말하면, 백엔드에서 동적으로 웹 페이지를 만들어 클라이언트에 전달할 때 사용하는 기술입니다.대표적인 자바 템플릿 엔진에는 타임리프(Thymeleaf), 프리마커(FreeMarker), JSP 등이 있습니다. ⸻1. 타임리프 (Thymeleaf)HTML 원본을 그대로 브라우저에서 볼 수 있음 (natural templating)HTML을 그대로 열어도 깨지지 않아 디자이너와 협업하기 좋음.표현식 문법: ${변수}, th:text, th:if, th:each 등Spring Boot와 잘 통합됨 (자동 설정 지원)HTML5를 기반으로 동작비교적 배우기 쉬운 ..
-
자바의 Optional 클래스CS/JAVA 2025. 2. 16. 01:34
자바 프로그래밍에서는, NullPointerException 예외가 자주 발생하는데요, 이 예외는 null값을 역참조하기 때문입니다.Optional 클래스는 이런 문제를 해결하기 위해 등장했습니다. Optional은 값이 있을 수도 있고 없을 수도 있는 객체를 감싸는 래퍼 클래스입니다. 이를 통해 명시적으로 해당 값이 null일 수 있음을 표현할 수 있으며, NullPointerException을 방지할 수 있는 API를 제공합니다. 예를들어, null값인 String에서 length()를 호출하면 NullPointerException이 발생합니다.하지만 Optional로 감쌀 경우 NullPointerException의 발생을 방지할 수 있습니다.String value = null;System.out...
-
JVM(Java Virtual Machine)CS/JAVA 2024. 9. 2. 02:03
JAVA는 컴파일 언어와 인터프리터 언어의 특징을 모두 가진 하이브리드 언어다.C언어는 각 운영 체제는 고유한 시스템 호출 API가 있어서, OS 간 호환성을 고려하지 않은 코드는 특정 OS에서만 실행될 수 있다.하지만 JAVA로 짜여진 코드는 여러 OS에서 실행이 가능하다. 이걸 가능하게 해주는 것이 JVM이다.자바의 소스 코드는 먼저 JAVA Compiler를 이용해 바이트코드로 컴파일되고, 그 후 자바 가상 머신(JVM)이 이 바이트코드를 실행된다. JVM(Java Virtual Machine)자바 가상머신, 즉 JVM은 JAVA와 운영체제 사이의 중계자 역할을 해준다. JAVA가 OS환경에 상관없이 실해될 수 있게 되는 과정은 다음과 같다.1. 프로그램이 실행되면 JVM은 OS로부터 메모리 공..
-
JAVA - Tomcat, Servlet 으로 클라이언트 요청받기CS/JAVA 2024. 6. 17. 23:20
클라이언트가 서버로 데이터를 요청하고 받는 과정이다. 클라이언트가 서버로 요청을 보내면, db 서버는 그에 맞는 데이터를 db서버에 요청한다.db서버는 데이터를 서버에 보내고 데이터를 받은 서버는 그에 맞는 응답을 클라이언트로 보낸다. 지난 포스팅에서는 JDBC를 이용해 서버와 db서버가 요청/응답을 주고 받는 과정을 구현해보는 실습을 했다.https://shinebyul.tistory.com/51 JAVA - JDBC 사용해보기웹에서 클라이언트가 데이터를 요청하면, 서버는 DB서버에 데이터를 요청해 받아서 보내줘야 한다. 이번 포스팅에서는 JDBC를 이용해 DB에 데이터를 요청해 받아볼 것이다. 사실 나중에는 springshinebyul.tistory.com 이번엔 Tomcat을 이용해 클라이언트와 서..
-
JAVA - JDBC 사용해 db서버와 데이터 요청/응답 받기CS/JAVA 2024. 6. 5. 00:25
웹에서 클라이언트가 데이터를 요청하면, 서버는 DB서버에 데이터를 요청해 받아서 보내줘야 한다. 이번 포스팅에서는 JDBC를 이용해 DB에 데이터를 요청해 받아볼 것이다. 사실 나중에는 spring을 사용할 것이기 때문에 이런 과정을 하나하나 알 필요는 없지만, 어떤 식으로 서버가 db로부터 데이터를 주고받는지 이해하기 위해 이런 과정을 직접 해보는 것이다. 먼저, JDBC가 뭔지 알아보자.JDBC(Java Database Connectivity)는 Java에서 데이터베이스에 접근하고 SQL 문을 실행하기 위한 표준 API이다. JDBC를 사용하면 Java 애플리케이션이 데이터베이스와 상호작용할 수 있으며, 이를 통해 데이터를 조회, 삽입, 업데이트 및 삭제하는 등의 작업을 수행할 수 있다. JDBC..
-
JAVA - 오버로딩, 오버라이딩CS/JAVA 2024. 6. 4. 01:34
java에는 오버로딩과 오버라이딩라는 개념이 있다. 개념 자체가 생소하고 이름이 비슷해 어렵지만, 자바에서 아주 기본으로 쓰이고 중요한 개념이니 확실하게 이해해보자!💪오버로딩 Overloading오버로딩이란, 같은 클래스 내에서 이름은 같지만 인자의 갯수, 형 등이 다른 메서드이다. 바로 코드를 보며 알아봐보자!아래 클래스에서 세개의 이름이 같은 메서드를 만들고, main 메서드에서 오버로딩 메서드를 호출했다.메서드를 호출할 때 메서드의 이름이 같은데도 각각 다른 결과가 나왔다.아래 클래스에서 이름이 같은 세 개의 메서드들을 오버로딩이라한다.public class Calculate { int num01; int num02; int num03; // 1번 메서드 int ..
-
JAVA - 상속, 생성자CS/JAVA 2024. 6. 4. 00:38
상속상속이란, 말그대로 클래스를 상속받아 부모의 메서드나 변수를 사용할 수 있게 하는 것이다.'백문이불여일코'라고, 직접 코드를 짜보자. 자동차에는 기아차, 현대차 등등 종류가 많다. 자동차에 대한 정보를 담은 클래스를 만들어보자. public class Hyundai extends Car{ void hyundaiOnly(){ System.out.println("현대만의 기술, 특징"); }}public class Hyundai { String name; String type; void accel(){ System.out.println("엑셀"); } void brake(){ System.out.println("브레이크"); ..
-
JAVA - static , 접근제어자CS/JAVA 2024. 6. 3. 21:50
static static 변수 또는 메서드는 프로그램이 시작할때부터 메모리 공간에 저장되어 전역변수처럼 사용이 된다.클래스가 있을 때 이 클래스 안의 변수나 메서드를 사용하려면 먼저 객체를 생성해야 한다. 하지만 static변수나 메서드의 경우 객체를 생성하지 않고도 사용할 수 있다. 보통 객체를 생성해야 메모리에 올라가는데, static은 프로그램 시작시 메모리에 올라가기 때문이다. static을 사용할 때 주의할 점static 메서드에서는 static이 아닌 변수는 가져다 사용하는 것이 불가능하다.예시 코드를 보며 이유를 알아보자.public class Example{ int num01; // Example 객체를 생성해야 메모리에 저장 static int num02; // 프로그램 시작..