서블릿(Servlet)을 한마디로 설명하자면 서블릿 컨테이너(WAS)로부터 동적인 요청을 받아 처리한 후 응답해주는 자바 프로그램 이다. 먼저 웹 서비스의 흐름을 보자면 아래와 같다. Web Service Architecture Client -> WebServer -> WAS(Web Container -> Servlet) -> Database -> Was(Servlet -> Web Containet) -> WebSerber -> Client 위에 과정에서 DA에게 접근하게 해주는 자바 프로그램이 바로 서블릿이다. 참조 : https://gmlwjd9405.github.io/2018/10/28/servlet.html
정적인 웹 페이지(Static Web Page) VS 동적인 웹 페이지(Dynamic Web Page) 한마디로 둘의 차이는 웹 요소를 웹 페이지 내에서 바꿀 수 없냐이다. 물론 이게 정확한 개념은 아니지만 쉽게 설명하자면 정적인 웹페이지는 무언가 추가를 하기 위해서 개발자가 직접 서버에 접속해 HTML파일을 수정하거나 CSS파일을 수정해야 한다. 하지만 동적인 페이지는 페이지 내에서 이러한 수정을 할 수 있다. 우리가 블로그를 작성할 때 서버에 들어가 HTML 파일을 직접 만드는 게 아닌 글쓰기 버튼과 완료버튼을 누름으로써 글을 작성하는 것 같이 말이다. 정적인 웹 페이지(Static Web Page) 서버에 있는 내용들을 그대로 보여준다. 수정을 위해서는 서버에 접속해야하고 별도의 데이터베이스를 가지..
의존 객체 자동 주입(Automatic Dependency Injection) 의존 객체 자동 주입(Automatic Dependency Injection)은 스프링 설정파일에서 혹은 태그로 의존 객체 대상을 명시하지 않아도 스프링 컨테이너가 자동적으로 의존 대상 객체를 찾아 해당 객체에 필요한 의존성을 주입하는 것을 말한다. @Resource, @Autowired, @Inject 이 태그들의 차이점은 의존 객체를 찾는방식이 다르다. 아래의 표를 참고하자 @Resource @Autowired @Inject 설명 Java 에서 지원 Spring Framework 에서 지원 Java 에서 지원 사용하는 위치 필드 , 한개의 파라미터인 빈 프로퍼티 setter 메소드 필드 , 생성자 , 여러개인 파라미터 메소..
1. 🔍 DB 3개를 사용하는 프로젝트에서 발생한 문제와 해결 방법이번 프로젝트에서는 3개의 데이터베이스(DB)를 사용하면서 몇 가지 문제가 발생했습니다. 그중 하나는 내부 DB와 외부 DB에서 서로 다른 설정을 사용하는 부분에서 생긴 문제였습니다.🔹 프로젝트 구조프로젝트는 총 3개의 포털로 이루어져 있으며, 각 포털마다 3개의 DB를 사용합니다.서비스는 하나의 공통된 로직을 사용하며, 각 포털의 controller를 통해 필요한 서비스를 호출하는 방식으로 이루어집니다.🔹 DB 연결 방식각 DB를 연결하기 위해, Mapper 설정 시 3가지의 커스텀 어노테이션을 사용하여 각 포털에 맞는 DB 연결을 설정했습니다. 구체적으로는 아래와 같은 방식으로 @MapperScan을 사용해 각 포털에 맞는 map..
도커(Docker) VS 가상머신(Virtual Machine) 기존에는 하나에 서버에서 하나의 서비스만 구동시켜야 했다. 이렇다 보니 남은 자원이 많아지는 비효율적인 문제가 발생했다. 이를 극복하기위해 등장한 기술이 가상화 기술이다. 이 둘은 하나의 서버에서 여러가지의 서비스를 사용할 수 있도록 독립적인 가상환경을 만들어준다는 가상화 기술 개념을 가지고 있다. 그렇다면 이들의 차이는 뭘까? 도커와 가상머신의 차이 위에 그림은보면 왼쪽(Docker)에 프로세스에 올라가있는 가상 어플리케이션이 훨씬 가벼워 보이는것을 확인할 수 있다. 이는 Guest OS 때문이다. 기존의 가상머신은 하나의 독립된 컴퓨터를 하나 더 생성한다고 생각하면 된다. 따라서 OS, binary, Library 등 여러가지 필수로 들..
이번 노트북에 새롭게 개발환경을 설치하면서 개발환경을 다시 구축하였다. 하는김에 vsCode와 github의 연동을 쉽게 하는법에대해 알려주겠다. 1. 깃 설치 https://git-scm.com/ Git git-scm.com 2. vscode 설치 https://code.visualstudio.com/ Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite pl..
파이썬에서는 배열을 섞어주는 함수가 존재한다. random을 import 해준 후 shuffle함수를 이용하면 된다. import random list = ["one", "two", "three", "four", "five"] random.shuffle(list) print(list)
잘 동작하던 프로젝트가 갑자기 js파일이 열리지 않는 문제가 발생했다. 오류를 확인해 보니 codeMax의 라이센스가 끝나 발생하는 문제였다. 이는 codeMax를 삭제하면 해결된다. 1. Help -> About Eclipse IDE 2. Installation Details 3. codeMax 검색 후 삭제 - 이미 삭제해버렸다... 4. 재시작 끝!!!