목록전체 글 (89)
武裝
알고리즘 관련 기록 velogvue 와 javascript 관련 기록 notion
legacy 파일을 Spring으로 변환하는 작업 중 생기는 오류들은 다양하겠지만, 첫 장부터 문제가 생겼다. Spring 구동 시, resource 가 없다는 이유로 계속 Whitelabel Error Page가 보였다. interceptor 부분을 작성 오류인 건가 싶어서, 해당 부분 수정을 전부 하였지만... 여전히 에러 페이지에서 벗어나지 못했다 .기본 코드를 오류를 제외한 나머지 조건들의 문제 해결 방식 기록. 오류가 생길 수 있는 3가지 조건 1. src/main/resources/static 폴더 내부에 index.html 파일 부재 resources 파일은 별도로 건드리지 않아도 된다고 생각하여, 작성하지 않았다. 그래도 해당 부분에 index.html이 없으면 안 된다고 ..
트랜잭션 - 여러 개의 DML 명령문을 하나의 논리적인 작업 단위로 묶어서 관리 ex : member 한 명에 여러 명 취미를 저장할 때, 중간에 끊기면 저장되지 않게 - VO 설정 package chapter09;import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class HobbyVO { private int member_no; private String name;}package chapter09;import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class MemberVO { private int no; private String id; private String pwd; p..
- 의존성 주입 ( Dependency Injection) : A → B 의존 관계 주입 A 객체 안에서 B 객체 생성 package chapter02;public interface MemberDAO { void regist();} package chapter02;public class MemberDAOImpl implements MemberDAO { @Override public void regist() { System.out.println(" 회원 등록 "); }} package chapter02;public interface MemberService { void regist();} package chapter02;public class MemberServiceImpl implemen..
Bean 설정 중심 - Bean 등록, 저장, 사용 (xml, java 방식 모두 알아야 한다. - Bean 에서 id(이름)과 타입(클래스) 두 가지가 있어야 만들고 꺼낼 수 있다. 1. XML 저장 방식 package chapter01;import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class Person { private String name; private int age;} / 필드 2개, 메소드 2개를 가진 클래스를 우선 생성한다. - Spring 에서 Bean 을 설정하는 xml 파일 package chapter01;import org.springframework.context.support.Class..
- 스프링의 경우 객체 생성 주체가 '나' 에서 '스프링' 으로 변경이 된다. - beam : 객체 - beam container : 객체 저장소 -DI (의존성 주입) : 스프링이 필요성을 주입해 준다는 것 - 프레임워크 : 어떤 것을 구성하는 구조 또는 뼈대 : 기능을 미리 클래스나 인터페이스 등으로 만들어 제공하는 반제품 스프링 프레임워크 - 웹 어플리케이션 개발을 위한 오프 소스 프레임워크 - 여러가지 빈(클래스 객체) 를 개발자가 아닌 스프링이 권한을 가지고 직접 관리한다. 스프링 프레임워크 특징 - 제어역행 (IoC ) : 서블릿이나 빈 등을 개발자가 코드에서 생성하지 않고 프레임워크가 직접 수행 : 어플리케이션 간의 느슨한 결..
jsp 등장 배경- 서블릿의 비즈니스 로직과 결과를 보여주는 화면 기능을 분리- 비즈니스 로직과 화면을 분리함으로써 개발자는 비즈니스 로직 구현에 집중하고, 디자이너는 화면 기능 구현에만 집중을 위해- 개발 후 재사용성과 유지관리가 휠씬 수월 JSP 파일은 다음과 같이 3단계를 거쳐 실행1. 변환 단계(Translation Step): 컨테이너는 JSP 파일을 자바 파일로 변환2. 컴파일 단계(Compile Step): 컨테이너는 변환된 자바(java) 파일을 클래스(class 파일로 컴파일)3. 실행 단계(Interpret Step): 컨테이너는 class 파일을 실행하여 그 결과(HTML, CSS와 자바스크립트 코드)를 ..
- 서블릿 속성 ServletContext속성은 애플리케이션 전체에 대해 접근할 수 있다.HttpSession브라우저에서만 접근할 수 있다.HttpServletRequest해당 요청/응답 사이클에서만 접근할 수 있 - 서블릿의 스코프(scope) : 서블릿 API에 바인딩된 속성에 대한 접근 범위 기능 : 로그인 상태 유지 기능, 장바구니 기능, MVC의 Model과 View의 데이터 전달 기능 - 서블릿 URL 패턴 ( @webServlet 옆에 작성 )1. 정확히 이름까지 일치 (" /first/test ")2. 디렉터리까지만 일치 (" /first/* ")3. 확장자만 일치 (" *.do ") 필터- 브라우저에서 서블릿에 요청하거나 응답할 때 미리 요청이나 응답과 ..
- 비지니스 로직 처리 기능을 이용해 데이터베이스에서 정보를 갖고 오는데, 동시 사용자 수가 많아지면 속도에 영향을 받는다. 이 경우 클라이언트 PC나 서버의 메모리에 저장해두고 사용하여 빠르게 실행하는 것. 세션 트래킹 - HTTP 프로토콜은 stateless 방식으로 통신 → 새로운 웹페이지를 열면 페이지나 서블릿 관한 정보를 알 수 없다.- 웹 페이지나 서블릿끼리 상태나 정보를 공유하려면 웹페이지 연결 기능, 세션 트래킹을 이용해야 한 - 연동 방식 - hidden 태그: 사용 - URL Rewriting: GET 방식으로 URL 뒤에 정보를 붙여서 다른 페이지로 전송합니다. - cookie : 클라이언트 PC의 Cookie 파일에 정보를 저장한 후 웹 페이지들이 ..
저장소 - 저장해놓고 꺼내서 쓸 수 있다. 1) Request - getAttribute - setAttribute - 하나의 요청에서만 가능하다. (ex : 상품 목록, 출력) - 요청된 서블릿(자바) 내부에서는 가능하지만, 다른 서버로 넘어가게 되는 경우 사용되지 않는다. // request 객체에 저장 request.setAttribute("name", "홍길동"); //request 객체에서 출력 System.out.println("name : "+ request.getAttribute("name")); //request 객체 전달 RequestDispatcher rd = request.getRequestDispatcher("/second3"..