전체 글
-
[스프링MVC - 1편] HttpServletRequest스프링&스프링부트 2025. 1. 2. 19:33
HttpServletRequest 역할HTTP 요청 메시지를 개발자가 직접 파싱해서 사용해도 되지만, 매우 불편하다서블릿은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱한다그리고 그 결과를 HttpServletRequest 객체에 담아서 제공한다 ...POST /save HTTP/1.1 (START LINE)Host: localhost:8080 (헤더)Content-Type: application/x-www-form-urlencoded (헤더)username=kim&age=20 (바디)...
-
[JAVA] 자바 mid2 1 - 2 강 요약자바 2024. 12. 30. 12:47
1. 제네릭 Generic 1제네릭이 필요한 이유 제네릭을 사용하면 코드 재사용과 타입 안전성을 모두 지킬 수 있다 EX1.// 숫자를 보관하고 꺼낼 수 있는 단순한 기능을 제공public class IntegerBox { private Integer value; public void set(Integer value) { this.value = value; } public Integer get() { return value; }}// 문자열을 보관하고 꺼낼 수 있는 단순한 기능을 제공public class StringBox { private String value; public void set(String object) { ..
-
[JAVA] 자바 mid1 4 - 6 강 요약자바 2024. 12. 29. 17:41
4. 래퍼, Class 클래스기본형의 한계자바는 객체 지향 언어이다 그런데 자바 안에 객체가 아닌 것이 있다바로 int, double 같은 기본형(Primitive Type)이다 기본형은 객체가 아니기 때문에 다음과 같은 한계가 있다객체가 아님 : 기본형 데이터는 객체가 아니기 때문에, 객체 지향 프로그래밍의 장점을 살릴 수 없다 예를 들어 객 체는 유용한 메서드를 제공할 수 있는데, 기본형은 객체가 아니므로 메서드를 제공할 수 없다 추가로 객체 참조가 필요한 컬렉션 프레임워크를 사용할 수 없다. 그리고 제네릭도 사용할 수 없다null 값을 가질 수 없음 : 기본형 데이터 타입은 null 값을 가질 수 없다 때로는 데이터가 없음이라는 상태를 나타내야 할 필요가 있는데, 기본형은 항상 값을 가지기 때문에 ..
-
[JAVA] 자바 mid1 7 - 8 강 요약자바 2024. 12. 29. 13:01
7. 중첩 클래스, 내부 클래스 1중첩 클래스, 내부 클래스란?class Outer { ... // 중첩 클래스 class Nested { ... }}클래스 안에 클래스를 중첩해서 정의할 수 있는데, 이것을 중첩 클래스(Nested Class)이다 중첩 클래스의 분류 중첩 클래스 : 정적 중첩 클래스 + 내부 클래스 종류 모두 포함정적 중첩 클래스내부 클래스 - 내부 클래스 (inner class): 바깥 클래스의 인스턴스의 멤버에 접근 - 지역 클래스 (local class): 내부 클래스의 특징 + 지역 변수에 접근 - 익명 클래스 (anonymous class): 지역 클래스의 특징 + 클래스의 이름이 없는 특별한 클래스 변수..
-
[스프링MVC - 1편] Hello 서블릿스프링&스프링부트 2024. 12. 25. 14:02
스프링부트 서블릿 환경 구성@ServletComponentScan // 서블릿 자동 등록@SpringBootApplicationpublic class ServletApplication { public static void main(String[] args) { SpringApplication.run(ServletApplication.class, args); }}@WebServlet(name="helloServlet", urlPatterns = "/hello")public class HelloServelt extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse res..
-
[intelliJ / springboot] 'Java/JavaVirtualMachines/openjdk-23.0.1/Contents/Home/bin/java' finished with non-zero exit value 1스프링&스프링부트 2024. 12. 25. 12:46
스프링부트 스타터를 이용해 프로젝트를 오픈하는 과정에서 에러가 발생했습니다메세지를 읽어보면 JVM에 jdk 무언가가 잘못되었다는 것을 확인할 수 있습니다 맥북을 기준 [ IntelliJ IDEA > settiongs ] 에 들어갑니다 [Build, Excution, Deployment > Build Tools > Gradle] 이동합니다 Build and run using / Run tests using 부분을 Gradle > IntelliJ IDEA로 변경하고Gradle JVM 또한 현재 프로젝트 버전과 동일한 버전으로 변경합니다 apply 후 main을 다시 실행해 보면 작동하며 톰캣도 정상 작동하는 것을 확인할 수 있습니다
-
[스프링MVC - 1편] 자바 백엔드 웹 기술 역사스프링&스프링부트 2024. 12. 22. 18:07
자바 웹 기술 역사과거 기술서블릿 - 1997HTML 생성이 어려움JSP - 199HTML 생성은 편리하지만, 비즈니스 로직까지 너무 많은 역할 담당서블릿 + JSP 조합, MVC 패턴 사용모델, 뷰, 컨트롤러로 역할을 나누어 사용MVC 프레임워크 - 2000년대 초 ~ 2010년대 초MVC 패턴 자동화, 복잡한 웹 기술을 편리하게 사용할 수 있는 다양한 기능 지원스트럿츠, 웹워크, 스프링 MVC(과거버전) 현재 기술애노테이션 기반의 스프링 MVC 등장@Controller스프링 부트의 등장스프링 부트는 서버를 내장과거에는 서버에 WAS를 직접 설치하고 소스는 War 파일을 만들어서 설치한 WAS에 배포스프링 부트는 빌드 결과(Jar)에 WAS 서버 포함 > 빌드 배포 단순화 최신 기술 - 스프링 웹 ..
-
[스프링MVC - 1편] HTML, HTTP API, CSR, SSR스프링&스프링부트 2024. 12. 22. 17:51
정적 리소스고정된 HTML 파일, CSS, JS, 이미지, 영상 등 제공주로 웹 브라우저 HTML 페이지동적으로 필요한 HTML 파일을 생성해서 전달웹 브라우저 : HTML 해설 HTTP APIHTML이 아니라 데이터를 전달주로 JSON 형식 사용다양한 시스템에서 호출데이터만 주고받음, UI 화면에서 필요하면 클라이언트가 별도 처리앱, 웹 클라이언트, 서버 to 서버 HTTP API - 다양한 시스템 연동주로 JSON 형태로 데이터 통신UI 클라이언트 접점앱 클라이언트(아이폰, 안드로이드, pc 앱 등)웹 브라우저에서 자바스크립트를 통한 HTTP API 호출React, Vue.js 같은 웹 클라이언트서버 to 서버주문 서버 > 결제 서버기업 간 데이터 통신 서버사이드 랜더링 SSRHTML 최종..