분류 전체보기

·백엔드/Java
팩토리 메서드 패턴과 추상 팩토리 패턴 차이점 추상 팩토리(Abstract factory) 패턴이란? 관련있는 여러 객체를 만들어주는 추상화된 형태로 정의한 인터페이스 팩토리 메서드 패턴과 굉장히 흡사하지만 팩토리를 사용하는 클라이언트가 추가된 패턴 예제 코드 이전 팩토리 메서드에서 Soju 클래스에 Design 클래스가 추가되었다고 가정한다면 public class Soju { private String name; private Design design; public Design getAddress() { return design; } public void setAddress(Design design) { this.design = design; } public String getName() { retu..
·백엔드/Java
팩토리 메서드(Factory method) 패턴 이란? 팩토리 메서드 패턴은 디자인 패턴 중 하나로, 객체지향 설계에서 자주 사용됨 객체 생성에 대한 책임을 서브 클래스로 분리하여 유연성을 높이는 것 인터페이스 안에 기본적인 구현이 있고, 구현부 중에 일부 바뀌어야 하는것 들을 추상 메서드로 분리해 하위 클래스에서 만드는것 기본적인 팩토리 메소드 패턴 예제 1.팩토리 인터페이스 정의 public interface SojuFactory { default Soju orderSoju() { Soju soju = createSoju(); return soju; } Soju createSoju(); } public class Soju { private String name; public String getName..
·백엔드/Java
자바 싱글톤(Singleton) 패턴 싱글톤 패턴이란? 인스턴스를 오직 한개만 제공하는 클래스 조건 인스턴스를 오직 하나만 만들어야함 인스턴스에 글로벌하게 접근할 수 있는 방법을 제공해야함 싱글톤 패턴을 사용하는 이유 인스턴스가 오직 하나만 있을 때 유용하게 사용할 수 있음 여러 번 생성하지 않아 자원을 절약할 수 있음 글로벌 변수 사용을 줄이고, 코드를 관리하기 편해짐 예제 코드 public static void main(String[] args) { 클래스 클래스1 = new 클래스(); 클래스 클래스2 = new 클래스(); System.out.println(클래스1 == 클래스2); // false } 이렇듯 new 클래스();를 사용해 객체를 만들면 싱글톤 패턴을 만족할 수 없다. 그렇다면 ne..
·백엔드/JSP
Redirect 방식 새로운 요청이 발생하므로 웹브라우저 주소표시줄의 URL 이 변경됨 (= 포워딩 될 새로운 주소로 바뀜) 새로운 요청에 의해 새 request 객체가 생성되므로 이전 페이지에서 사용한 request 객체의 속성값이 유지되지 않음 (= 이전 페이지의 request 객체에 접근 불가능) => 포워딩 방법 : response 객체의 sendRedirect() 메서드를 호출하여 포워딩 할 페이지를 파라미터로 전달 response.sendRedirect("main.jsp"); Dispatcher 방식 웹브라우저 주소표시줄의 URL 이 변경되지 않은 채로 요청을 수행 => 이전의 요청 URL 이 새 페이지로 포워딩 될 때도 그대로 유지됨 (즉, 주소 변경 없이 새로운 페이지로 이동) 이전 페이지..
·백엔드/Spring
파일 업로드 기능을 통해 전달받은 파일 객체를 다루기 위해서는 VO 클래스 내에 MultipartFile 타입 변수와 Getter/Setter 정의 필수 태그의 ‘name’ 속성과 동일한 변수명을 사용해야함 가상 업로드 경로에 대한 실제 업로드 경로 알아내기 @PostMapping(value = "/BoardWritePro.bo") public String writePro(@ModelAttribute BoardVO board, Model model, HttpSession session) { // 주의! 파일 업로드 기능을 통해 전달받은 파일 객체를 다루기 위해서는 // BoardVO 클래스 내에 MultipartFile 타입 변수와 Getter/Setter 정의 필수! // => input type="f..
·백엔드/Java
우리가 쉽게 찾아볼 수 있는 스택과 큐의 활용 예 스택의 활용 예 수식계산, 수식괄호검사, 워드프로세서의 undo/redo, 웹브라우저의 뒤로/앞으로 큐의 활용 예 최근 사용문서, 인쇄작업 대기목록, 버퍼(buffer) 스택과 큐의 활용 예제 package collectionsFramework; import java.util.Stack; //스택과 큐의 활용 예제 public class java221106_StackEx1 { public static Stack back = new Stack(); public static Stack forward = new Stack(); public static void main(String[] args) { goURL("1.네이트"); goURL("2.야후"); goU..
dami97
'분류 전체보기' 카테고리의 글 목록 (12 Page)