본문 바로가기

Software Tech/Spring (feat.JAVA)7

[Java] Spring 시작하기 String initializr은 스프링부트를 기반으로 spring관련 프로젝트를 생성해주는 사이트 입니다. IDE에서 직접 New Project를 생성할수도 있지만 초심자가 구성하기에는 아직 어려움이 있고 community에서는 사용할 수 없기 때문에 Spring Iinitializr를 사용하는 것이 좋습니다. ( https://start.spring.io/ )  Initializr dependency 설정SpringWeb (중요)웹 서비스를 만드는 데 가장 중요한 모듈이다. 내장 톰캣 뿐 아니라 Spring MVC 패턴을 구현하는 데 필요한 기능이 대부분 들어있다. REST API서버를 만든다면 필수입니다.Lombok (추천, 거의 필수)Class에 getter, setter, toString, eq.. 2025. 1. 7.
Servlet & JSP에 대하여 1. JSP와 Servlet의 역할과 차이JSP (Java Server Pages)역할: 웹 애플리케이션에서 화면 처리(View)를 담당.특징:HTML과 자바 코드를 혼합하여 작성.WAS(Web Application Server)가 JSP를 서블릿으로 변환하여 실행.비즈니스 로직을 최소화하고 화면 구성에 집중.동적으로 데이터를 HTML에 렌더링.Servlet역할: 비즈니스 로직(Model)을 처리하고 클라이언트 요청(Request)을 응답(Response)으로 변환.특징:순수 자바 코드로 작성되어 HTTP 요청/응답 처리.HTML 태그를 자바 코드로 작성해야 하므로 복잡.JSP보다 코드 작성이 어렵지만, 정확한 흐름 제어 가능.대체로 JSP와 함께 사용하며 데이터를 전달.2. 라이프사이클과 객체 관리Se.. 2024. 12. 26.
MVC 패턴 (Model-View-Controller) MVC는 소프트웨어 설계 패턴 중 하나로, 애플리케이션을 Model(모델), View(뷰), Controller(컨트롤러) 세 가지 주요 구성 요소로 분리하여 설계합니다. 이를 통해 코드의 재사용성, 유지보수성, 확장성을 높일 수 있습니다.1. 구성 요소와 역할1) Model (모델)역할: 애플리케이션의 데이터와 비즈니스 로직을 관리합니다.데이터 저장 및 관리.데이터 처리와 관련된 로직 수행.데이터 변경 시 View와 Controller에 알림.특징:데이터의 상태를 캡슐화하고 외부에 노출하지 않음.독립적으로 작동하므로 다른 컴포넌트와 분리된 상태에서 테스트 가능. 2) View (뷰)역할: 사용자 인터페이스(UI)를 담당하며, 데이터를 시각적으로 표현합니다.Model에서 제공받은 데이터를 기반으로 화면을.. 2024. 11. 19.
멤버변수, 전역변수, 지역변수 프로그래밍에서 멤버 변수, 전역 변수, 지역 변수는 각기 다른 범위와 역할을 가지는 변수 유형입니다.1. 멤버 변수 (Member Variable)정의: 객체지향 프로그래밍(OOP)에서 클래스의 속성을 나타내는 변수로, 클래스 내에서 선언됩니다.특징:클래스의 인스턴스(객체)에 종속되어 있음.객체가 생성될 때 메모리에 할당되고, 객체가 파괴될 때 해제됨.접근제한자(private, protected, public)에 따라 접근 가능 여부가 달라짐.사용 예 (Java 예시):class Car { String color; // 멤버 변수 int speed; // 멤버 변수}Car myCar = new Car();myCar.color = "Red"; // 멤버 변수 접근2. 전역 변수 (Glob.. 2024. 11. 19.
자식클래스가 부모클래스를 인스턴스로 받을 수 없는 이유 자식 클래스가 부모 클래스를 인스턴스로 받을 수 없는 이유는객체 지향 프로그래밍(OOP)의 상속과 다형성 원리에 기반한 클래스 구조 때문입니다.  1. 상속의 구조부모 클래스는 자식 클래스보다 더 일반적인 특성을 가집니다.자식 클래스는 부모 클래스의 모든 속성과 메서드를 상속받고, 여기에 자신만의 특화된 기능을 추가합니다. 클래스 관계부모 클래스 → 상위 타입 (더 넓은 범위 - 추상화)자식 클래스 → 하위 타입 (더 구체적인 범위) class Animal { void eat() { System.out.println("This animal eats food."); }}class Dog extends Animal { void bark() { System.out.pr.. 2024. 11. 19.
Singleton Pattern (싱글톤 패턴) 싱글톤 패턴이란, 클래스의 인스턴스가 프로그램 전체에 걸쳐 단 하나만 존재하도록 보장하는 구조 입니다. 예를 들어 여러 객체가 생성된다면 어떤 객체에 있는 정보가 정확한 정보인지 알 수가 없기 때문에 문제가 발생합니다.이런 부분은 싱글톤 패턴으로 구현하여 하나의 객체만 존재하도록 해야합니다.  그렇다면 정적(static) 클래스를 사용하는 것과 어떻게 다를까요?#Singleton Pattern classstatic class초기화(생성) 시점필요한 시점에 생성해서 리소스를 효율적으로 사용 가능합니다.프로그램 실행 시점에 자동으로 초기화 되며, 실행 동안에 메모리에 상주하게 됩니다.확장성상속, 인터페이스 구현이 가능하여 확장성을 가집니다.정적 클래스는 상속, 인터페이스 구현이 불가합니다.호출Instance.. 2024. 10. 21.
[Java] 자바 기초 학습 내용 정리 자바는 1995년 썬 마이크로시스템즈에서 발표한 객체지향 언어입니다.현재는 오라클에 인수되어 JDK를 오라클에서 다운로드 받고 있습니다. 자바는 JVM을 통해 윈도우, 리눅스, 맥등의 운영체제에서 실행이 가능합니다. (장점)그리고 C와 다르게 메모리 관리를 자동으로 해주기 때문에 C 대비 비교적 쉬운 언어에 속합니다. (이것도 장점) 현장에서는 에디터로 Intellij IDEA를 주로 사용하는 것 같습니다.이클립스에 비해 자동완성이나 단축키, 디버깅, 최적화 같은 기능들이 비교적 편리한 것 같네요...ㅎ  [자바 프로그램 실행구조 및 메모리 영역구조]모든 자바 프로그램은 자바 바이트 코드 파일(*.class)로 변환된 후 JVM을 통해서 운영체제에서 실행되므로, JVM은 운영체제로부터 프로그램을 실행할 .. 2024. 10. 9.
728x90