본문 바로가기

Dev.BackEnd

(66)
4. Model 1 에서 Model 2 까지 변화과정 2편 4. Model 1 에서 Model 2 까지 변화과정 2편controller역할 뿐만 아니라 view 역할과 model 역할까지 모두 하는 서블릿부터 만든 다음에,그 서블릿으로부터 기능들이 하나씩 분리되는 과정을 보이려고 한다.Model 21. 값 객체 ( Value Object ) 생성하기 Member.javaVO란 값을 담는 용도로 사용하기 위한 객체를 말한다. 계층 간 또는 데이터를 전달하는데 이용하여 데이터 수송 객체(DTO)라고도 불린다. 각종 값들을 갖고 있으며 get메소드와 set메소드로 이루어져 있다. 컨트롤러(Servlet)에서 생성하면 뷰(JSP)에서 그것을 참조하여 화면을 출력하는 것이다. 즉, 서블릿에서 값을 set해 놓으면, JSP에서는 값을 get하여 출력하는 것이다. 2. Vi..
3. Model 1에서 Model 2까지 변화과정 1편 3. Model 1 에서 Model 2 까지 변화과정 1편controller역할 뿐만 아니라 view 역할과 model 역할까지 모두 하는 서블릿부터 만든 다음에,그 서블릿으로부터 기능들이 하나씩 분리되는 과정을 보이려고 한다. Model 1 방식의 웹 애플리케이션 구축1. 서블릿 작성 회원 정보를 ArrayList 형식으로 갖고 있는 서블릿을 생성한다.MemberListServlet.java DriverManager 1DriverManager.registerDriver(new com.mysql.jdbc.Driver());csmysql Database와 연동할 코드이다. executeQuery 123456789conn = DriverManager.getConnection( "jdbc:mysql://loc..
[JAVA] 10. 예외처리(Exception Handling) Chapter 10. 예외처리 (Exception Handling)코드를 작성하는 과정에서 예기지 못한 수많은 에러들이 발생한다.컴파일 전에 알게 되는 에러도 있고,작성할 때는 아무 문제 없다가 실행시키고 나서야 발생하는 에러들이 있다.이것들을 제어할 수 있어야 좀 더 안전한 프로그램을 설계할 수 있게 된다. 에러 (Error) ? 예외 (Exception) ?컴파일 에러 - 컴파일 시에 발생하는 에러런타임 에러 - 실행 시에 발생하는 에러논리적 에러 - 실행은 되지만, 의도와 다르게 동작하는 에러 대부분의 컴파일 에러는 이클립스 같은 IDE들이 빨간줄 표시로 잡아준다.문제는 실행 시 발생하는 프로그램 오류다.자바에서는 이 Runtime 오류를 에러와 예외, 두 가지로 나누어 인식한다.에러(error)메..
#객체지향적 설계 원칙 - 이론을 통해 알아보는 객체지향 #객체지향적 설계 원칙 SOLID *SRP (Single Responsibility Principle) : 단일 책임 원칙 OCP (Open-Closed Principle) : 개방-폐쇄 원칙 LSP (Liskov Substitution Principle) : 리스코프 치환 원칙 ISP (Interface Segregation Principle) : 인터페이스 분리 원칙 DIP (Dependency Inversion Principle) : 의존 역전 원칙 단일 책임 원칙 클래스는 단 한 개의 책임을 가져야 한다. 클래스를 변경하는 이유는 단 한개이어야 한다. 단일 책임 원칙을 지키지 않았을 때, 한 책임의 구현 변경에 의해 다른 책임과 관련된 코드가 변경될 가능성이 높다. 개방-폐쇄 원칙 확장에는 열려 ..
2. Servlet 과 JSP에 대한 기본적인 이해 Things 2. Servlet과 JSP에 대한 기본적인 이해 JSP의 장점 / Servlet의 장점 그리고 이것의 활용 JSP는 HTML 중심의 코드 구조이므로 디자인 작업에 바로 사용할 수 있다. 그리고 그 일이 끝나면 다시 프로그램 로직을 고칠 수도 있다. 하지만 프로그램 로직이 복잡할 경우 자바 코드의 논리적 구조를 알아보기가 힘들다. 또한 소스코드가 공개되어 사용자가 소스 코드를 건드려 손상시킬 위험이 존재한다. Servlet은 복잡한 프로그램 로직 구현에 적합하다. 컴파일 결과만 설치해도 되므로 소스 코드를 보호할 수도 있다. 하지만 HTML문서 디자인이 바뀔 때마다 서블릿 클래스를 수정/컴파일/설치해야 하고, 웹 서버를 재가동하는 일을 되풀이해야 한다. 그러므로 프로그램의 복잡한 로직을 구사..
1. MVC 아키텍쳐에 대한 이해 Things 1. MVC 아키텍쳐에 대한 이해떠도는 여러 이미지들과 책에 나온 구성도를 내 나름대로 재구성해보았다. MVC에 대한 기본 개념은 모두 동일하기 때문에 Servlet과 JSP를 기준으로 설명하여 보다 덜 추상적이도록 정리했다. 이렇게 M과 V와 C가 나뉘어 서버를 구성하는 모델을 모델 2라고 한다. 2라고 하면 1도 당연히 존재한다. 모델 1과 모델 2의 차이는 이 포스팅에서 하지 않겠다. 하지만 궁금한 사람은 박재성 교수님이 정말 오래전에 포스팅하신 내용을 링크해둘테니, 들어가서 살펴보면 되겠다.>>모델 1과 모델 2의 차이 MVC의 각 컴포넌트의 역할 Controller(컨트롤러)일종의 조정자라고 할 수 있다. 클라이언트의 요청을 받았을 때, 그 요청에 대해 실제 업무를 수행하는 모델 컴..
0. 자바 웹 개발 워크북으로 Servlet과 JSP 공부 Servlet 과 JSP를 공부하는데 있어서,교재를 선택하는데 많은 어려움을 겪었다.그러는 도중 Spring Framework 를 공부하기 전에, Servlet 과 JSP의 필요에 따른 발전과정을 살펴볼 수 있고, 실습 위주이며, 백엔드 개발의 사이클을 한 바퀴 돌 수 있는 좋은 책을 발견하였다.이 책 또한 자바지기 교수님께서 추천해주신 책이다. 책이 상당히 두껍다.이 책으로 스터디를 진행하게 되었고, 일주일마다 한 번씩 자바지기 교수님의 피드백을 받기로 하였다.스터디는 실습위주로 진행되며, 구체적인 내부 작동 원리보다는,웹 애플리케이션 서버가 이렇게 작동하는구나를 깨닫는 것에 초점을 두고 진행하였다. 이 책의 목차와는 상관없이, Servlet과 JSP 그리고 이어서 myBatis 에 대한 학습과정을 포..
# 객체 지향에 대한 이해 / 객체 지향적 설계 객체지향 프로그래밍 정의 객체 지향의 가장 기본은 객체이며, 객체의 핵심은 기능을 제공하는 것이다.실제로 객체를 정의할 때 사용하는 것은 객체가 제공해야 할 기능이며, 객체가 내부적으로 어떤 데이터를 갖고 있는 지로는 정의되지 않는다. 이러한 기능들을 오퍼레이션(operation)이라고 부른다. 즉, 객체는 오퍼레이션으로 정의가 된다. 시그니처 객체 지향으로 설계하기 위해서는 오퍼레이션의 사용법을 알아야 한다. 오퍼레이션의 사용법은 다음 세 가지로 구성된다. 기능 식별 이름 파라미터 및 파라미터 타입 기능 실행 결과 값 및 타입 이 세 가지를 시그너처(Signature)라고 부른다. 인터페이스 객체가 제공하는 모든 오퍼레이션 집합을 객체의 인터페이스(Interface)라고 부른다. JAVA 언어에서의 인..