본문 바로가기

Java4

[Web] HTML -> Servlet, JSP -> Spring 🎈 Servlet이란? 위와 같은 HTTP 규약에 맞는 요청과 응답을 개발자가 직접 작성하지 않고 메서드 호출로 편리하게 사용할 수 있도록 해주는 프로그램. Servlet Container: 서블릿들을 담고 있는 컨테이너. 서블릿의 생성, 호출, 소멸의 생명주기를 관리. ex) Apache Tomcat 클라이언트가 요청을 하면 서블릿 컨테이너는 서블릿 객체를 생성하고, 초기화하고, 요청에 대한 처리를 반복한다. 생성과 초기화는 한 번만 한다. dynamic web project 생성하고 maven 프로젝트로 변경 서블릿 생성. 서블릿과 매핑할 디폴트 url은 클래스 명이고 url을 변경할 수 있다. BoardController BoardController com.test.board.controller.B.. 2024. 3. 20.
Java에서 불변 객체 🎈 불변(immutable) 객체란? 객체 생성 이후에는 객체의 상태가 바뀌지 않는 객체 🎈 불변 객체의 장점 1. 이해하기 쉽고 안정적인 서비스 개발에 도움이 된다 2. map, set, cache에 쓰기에 적절하다. 예를 들어 아래와 같은 문제가 발생했을 때 Set myRGBs = new HashSet(); RGB green = new RGB(0, 128, 0); myRGBs.add(green); RGB invertedGreen = green.invert(); System.out.println(myRGBs.contains(invertedGreen)); //예상: false, 결과: false System.out.println(myRGBs.contains(green)); //예상: true, 결과: f.. 2024. 2. 21.
변수와 객체와 메모리 변수(variable)는 무엇인가? - '값'을 담을 수 있는 이름이 있는 '그릇' ex) int age = 36; 변수는 값을 바꿔 담을 수 있다 애플리케이션은 어떻게 실행되는가? - 애플리케이션: 일반 사용자가 사용할 기능을 제공하는, 컴퓨터가 실행할 수 있는 명령어들의 집합 - 메모리: 실행된 애플리케이션이 상주하는 곳 - CPU: 명령어를 실행하는 주체 runtime: 애플리케이션이 메모리 위에 올라와 있는 상태 메모리 구조 - 애플리케이션에 할당되는 메모리는 내부적으로 여러 영역으로 나뉨. - stack 메모리: 함수나 메서드의 지역 변수(local variable)와 매개 변수(parameter)가 저장됨. 함수나 메서드가 호출될 때 마다 스택 프레임이 쌓임. - heap 메모리: 객체가 저장.. 2024. 1. 31.
객체와 클래스 객체(Object)란 무엇인가? - 상태가 있고 행동을 하는 실체 ex) 차 클래스(Class)란 무엇인가? - 어떠한 속성이 있고 어떻게 행동하는지를 기술한 설계도 ex) 차 설계도 - 내가 원하는 속성과 행동을 구체적으로 기술한 것이 클래스 - 그렇게 기술한 대로 실체화 된 것이 객체 class Car { private String name; private double speed; ... public void start() {...} public void stop() {...} } Car myCar = new Car("소나타"); 2024. 1. 30.