swimminginthecode DIVE!

BACK 50

Spring 02

constructor injection생성자를 통해 의존 관계를 주입하는 방법public class Message { private String msg; public Message(String msg) { this.msg = msg; }} 메시지  setter injection객체의 필드에 대한 의존성을 설정하는 메소드를 통해 주입하는 방법 public class Message { private String msg; public void setMsg(String msg) { this.msg = msg; }} 메시지 singleton scope, prototype scope스프링 빈은 스프링 컨테이너의 시작과 함께 생성되어, 스..

BACK/Spring 2024.07.04

JAVA 21

String, StringBuffer, StringBulider종류설명String한 번 생성되면 할당된 메모리 공간이 변하지 않는다. + 연산자 혹은 concat 메소드를 통해 문자열을 붙이려고 하면 새로운 String 객체를 만든 후 연결된 문자열을 저장하고, 그 객체를 참조하도록 한다. 한 번 생성된 객체의 내부 내용을 변화시킬 수 없는 것이다.StringBuffer문자열 연산 등으로 기존 객체의 공간이 부족하게 되는 경우, 기존의 버퍼 크기를 늘리며 유연하게 동작한다. 각 메소드별로 Synchronized Keyword가 존재하여, 멀티스레드 환경에서도 동기화를 지원한다.StringBuilder문자열 연산 등으로 기존 객체의 공간이 부족하게 되는 경우, 기존의 버퍼 크기를 늘리며 유연하게 동작한다...

BACK/JAVA Basic 2024.07.03

Spring 01

Spring엔터프라이즈용 Java 애플리케이션 개발을 편하게 할 수 있게 해 주는 오픈 소스 경량급 애플리케이션 프레임워크Spring의 특징종류설명IoC (제어의 역행)작업을 수행하는 쪽에서 객체를 생성하는 일반적인 개념을 뒤집은 것으로, 프로그램 제어를 자신이 아닌 다른 곳에 위임하는 것이다.1. IoC에서는 객체가 자신이 사용할 객체를 생성하거나 선택하지 않는다.2. 객체는 자신이 어떻게 생성되고 어떻게 사용되는지 알 수 없다.3. 모든 객체는 제어 권한을 위임받은 특별한 객체(컨테이너)에 의해 만들어지고 사용된다.DI (의존성 주입)클래스 간의 의존관계를 Bean 설정에 기반해 컨테이너가 자동으로 연결해 주는 방식이다. AOP (관점 지향 프로그래밍)횡단 관심사*의 분리를 허용함으로써 모듈성을 증가..

BACK/Spring 2024.07.03

Servlet & jsp 06

스프링 수업 이전 개념을 위해 진행한 부분ModelAndView값을 view로 전달하는 인터페이스 public class ModelAndView { private boolean isRedirect = false; private String viewName = ""; public boolean isRedirect() { return isRedirect; } public void setRedirect(boolean isRedirect) { this.isRedirect = isRedirect; } public String getViewName() { return viewName; } public void setViewName(String viewName) { this.viewName = viewNam..

BACK/Servlet, jsp 2024.07.02

Servlet & jsp 05

MVCModel, View, Controller의 약자로 하나의 애플리케이션, 프로젝트를 구성할 때 그 구성요소를 세 가지의 역할로 구분한 패턴종류설명모델 (model)앱이 포함해야 할 데이터가 무엇인지를 정의뷰 (view)앱의 데이터를 보여 주는 방식 정의컨트롤러 (controller)앱의 사용자로부터의 입력에 대한 응답으로 모델 및 뷰를 업데이트하는 로직 포함참고 블로그 : MVC - MDN Web Docs 용어 사전: 웹 용어 정의 | MDN (mozilla.org)MAVEN자바용 프로젝트 관리 도구로 컴파일과 빌드를 동시에 수행하며 라이브러리를 관리할 수 있는 기능를 포함한다. 장점단점컴파일과 빌드 동시 수행메이븐에서 기본적으로 지원하지 않는 빌드 과정을 추가해야 하는 경우 복잡해짐서버의 Depl..

BACK/Servlet, jsp 2024.07.01

EL & JSTL 01

EL 등을 사용하지 않고 간편하게 출력하기 위한 도구EL 사용 예제 ${r.code}${r.sang}${r.su}${r.dan} JSTL (JavaServer Pages Standard Tag Library)자바 코드를 바로 사용하지 않고 HTML 태그 형태로 직관적인 코딩을 지원하는 라이브러리 JSTL 확장 태그 종류종류설명Core일반 프로그래밍에서 제공하는 것과 유사한 변수 선언변수: remove, set, out흐름 제어 : choose(when, otherwise), forEach, ifFormatting숫자, 날짜, 시간의 포맷을 제공DataBaseDB 입력/ 수정/ 삭제/ 조회XMLXML 문서를 처리할 때 필요한 기능 제공Function문자열을 제공하는 함수 제공ex) trim, repla..

BACK/Servlet, jsp 2024.06.27

Servlet & jsp 04

Connection PoolJava에서 DB를 다룰 때 사용하는 객체 (connection, prestatement...) 들을 효율적으로 사용하기 위한 방법useBean자바 인스턴스를 준비한다.속성설명id객체 이름 설정class패키지 이름을 포함한 클래스 이름scope보관소 지정 (page, request, session, application)type참조 변수 선언시 사용할 타입(class, interface) 지setProperty, getPropertysetProperty는 setter (프로퍼티 값 설정) 역할, getProperty는 getter(값 얻기) 역할을 한다.// setProperty// getProperty참고!property에 *을 넣어 줌으로써 name (useBean의 id값..

BACK/Servlet, jsp 2024.06.12

Servlet & jsp 03

jsp action tag종류설명forward다른 페이지로의 이동과 같은 페이지 흐름 제어include외부 페이지의 내용을 포함하거나 페이지를 모듈화useBeanJSP 페이지에 자바빈즈 설정setProperty자바빈즈의 프로퍼티 값 설정 (setter)getProperty자바빈즈의 프로퍼티 값 얻음 (getter)paramforward, include, plugin 태그에 인자 추가plugin브라우저에 자바 애플릿 실행element동적 XML 요소 설정attribute동적 XML 속성 설정body동적 XML 몸체 설정textJSP 페이지 및 문서에서 템플릿 텍스트 작성jwtJSON Web Token의 약자로 전자 서명된 URL-safe의 JSON장점단점URL 파라미터와 헤더로 사용수평 스케일이 용이디버깅..

BACK/Servlet, jsp 2024.06.05

Servlet & jsp 02

jspHTML 코드에 JAVA 코드를 사용하여 동적 웹페이지 (Dynamic Web Page)를 생성하는 웹 어플리케이션 도구(라이브러리)내장객체입출력 관련종류설명requestClient로부터의 요청 처리responseClient로 결과 출력out출력 스트림 개체현재 실행되는 페이지의 외부 환경 정보 관련종류설명pageContextjsp 실행에 대한 Context 정보sessionsession 정보 처리applicationjsp가 속해 있는 application에 대한 처리exceptionexception이 발생했을 때 처리pagejsp 페이지에 대한 정보를 담고 있으며 이에 대한 처리configjsp 페이지에 대한 초기화 처리

BACK/Servlet, jsp 2024.06.04

Servlet & jsp 01

mime type인터넷에 전달되는 파일 포맷 및 포맷 컨텐츠를 위한 식별자discrete (개별)multiparttextimageaudiovideomodelfontapplicationform-datamixedalternativecontent typeHeader 내에 있는 Body에 든 데이터 타입에 대한 정보로, Request Body에 들어가는 데이터 타입을 HTTP Header가 명시하는 것.인코딩과 디코딩종류설명인코딩(Encoding)컴퓨터가 이해하는 언어(0, 1)로 이루어진 코드로 바꾸는 것으로, 정해진 규칙에 따라 코드화, 암호화, 부호화하는 것.디코딩(Decoding)사람이 이해할 수 있는 언어로 바꾸는 것으로, 복호화, 역코드화하는 것.라이프 사이클서블릿의 생명주기종류설명init()서블릿 ..

BACK/Servlet, jsp 2024.05.30