전체 글293 스프링 Restful 서비스(API)_API 구현(XML) [3/3] - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 Restful API에 대한 기본 개념과, JSON을 이용한 구현 방법은 이전글을 참조하시면 됩니다. [Spring MVC/- 기본 문법] - 스프링 Restful 서비스(API)_기본 개념 [1/3] [Spring MVC/- 기본 문법] - 스프링 Restful 서비스(API)_API 구현(JSON) [2/3].. ▸Spring MVC/기본 문법 2020. 3. 21. 스프링 Restful 서비스(API)_API 구현(JSON) [2/3] - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 Restful 서비스(API)에 대한 간단한 기본 개념은 이전글을 참고하시면 됩니다. [Spring MVC/- 기본 문법] - 스프링 Restful 서비스(API)_기본 개념 [1/3] 진짜 Restful한 서비스에 대한 의견은 아직도 분분한 것 같고, 누군가는 이건 전혀 Restful한 서비스 구현이 아니라고 .. ▸Spring MVC/기본 문법 2020. 3. 20. 스프링 Restful 서비스(API)_기본 개념 [1/3] - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 [ REST (Representational Safe Transfer) ] HTTP URI를 통한 자원의 명시 HTTP Method를 통해 해당 자원을 제어하는 행위를 표현 데이터를 주고 받는 방식의 아키텍쳐 (디자인 패턴) Restful 서비스(API)란 REST 아키텍쳐를 준수하는 서비스라고 할 수 있습니다... ▸Spring MVC/기본 문법 2020. 3. 20. jUnit, Spring-Test 라이브러리 사용법 [ jUnit ] 전체 프로젝트(특히 WAS)를 구동하지 않고 단위 코드 테스트를 할 수 있게 해주는 라이브러리 [ Spring-Test ] jUnit을 확장한 스프링의 테스트 라이브러리 스프링 MVC 프로젝트를 진행할 때 코드 테스트를 할 때마다 WAS 구동을 하면 꽤나 답답한 경우가 많습니다. 이 때 jUnit 기능을 사용하면 프로젝트의 자원을 이용하면서도 필요한 코드만 간단하게 테스트해볼 수 있습니다. 다른 프로젝트를 하나 만들어서 테스트해볼 수도 있겠지만 이 경우 여러 가지 설정값이나 기능들을 사용할 수 없어 한계가 있습니다. 또 테스트를 하기 위한 코드는 "src/test/java" 와 "src/test/resources" 폴더 안에 넣고 사용하면 됩니다. 혹시 jUnit 라이브러리 import.. ▸Spring MVC/개발 TIP 2020. 3. 19. @Repository, @Service 어노테이션 - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 두 어노테이션을 알기 위해 먼저 스프링 컨테이너 구조와 빈(Bean)에 대해 알고 있어야 할 듯합니다. 컨테이너 구조는 모든 어플리케이션에서 사용하는 "루트 컨테이너", 각 서블릿이 사용하는 "서블릿용 컨테이너", 개발자가 임의로 생성해서 사용하는 "개발자용 컨테이너" 세 가지 종류가 있습니다. 컨테이너 이름은 .. ▸Spring MVC/기본 문법 2020. 3. 18. @Resource, @Inject, @Autowired 사용 (자동 의존성 주입) - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 세 개의 어노테이션은 컨테이너에 생성된 빈(Bean) 객체를 자동으로 주입받을 수 있도록 해주는 어노테이션입니다. Bean 객체를 이용할 때 코드를 아주 간결하게 해주기 때문에 필수로 사용되는 어노테이션입니다. 주의할 점으로는 Bean 객체가 생성될 때 어노테이션을 스캔해서 자동 주입해줍니다. 그냥 일반적인 방법.. ▸Spring MVC/기본 문법 2020. 3. 18. Junit 라이브러리 import가 되지 않을 때 프로젝트 규모가 커지면 테스트할 때마다 WAS 등 모든 프로그램을 구동시키는 것이 부담되기 때문에, 자바용 단위 테스트를 위한 표준 프레임워크인 Junit을 사용해 테스트를 진행하는 경우가 있습니다. 메이븐을 사용해 스프링 환경을 구성하면 디폴트 설정으로 Junit 라이브러리가 의존 설정이 돼 있고, 실제로 라이브러리 파일(.jar)이 있는 것을 확인할 수 있습니다. 그런데 멀쩡히 존재하는 Junit 라이브러리가 import가 되지 않는 경우가 있습니다. 이 경우 메이븐에 설정된 자바 버전과 메이븐 플러그인 버전을 올려주면 해결됩니다. 1.8 이상으로 올려주면 되고, 두 버전을 동일하게 맞춰주면 됩니다. 그리고 메이븐 업데이트를 한 번 해줍니다. 프로젝트를 우클릭해서 "Maven-Update Projec.. ▸Spring MVC/개발 TIP 2020. 3. 17. 도커를 이용한 MySQL 설치 윈도우에서는 그냥 쉽게 설치할 수 있으나.. 나중에 DB 환경을 실제 운영 서버나 다른 곳으로 이전시킬 수 있기 때문에 도커를 이용해 설치를 해봤습니다. 어차피 실제 운영할 때는 리눅스 서버에서 사용할 가능성이 높기 때문에 미리 익숙해지는게 좋을 듯합니다. 윈도우 서버는 유료이고 비쌉니다.. 1. 도커 허브(Docker Hub)에서 이미지 찾기 트레이아이콘을 우클릭하면 나오는 탭 중 "Docker Hub"를 클릭하면 접속이 됩니다. 거기서 mysql을 검색합니다. 공식 이미지 파일(OFFICIAL IMAGE)이 있어서 이 이미지를 받기로 합니다. 그냥 명령어로 "docker search mysql"을 입력해 검색할 수 있지만 설명을 자세히 보기가 힘든디 그냥 도커 허브를 쓰는게 나은 것 같습니다. 눌러보.. ▸인프라/Docker 2020. 3. 16. 도커 커맨드의 기본 명령어 (컨테이너 생성과 삭제) 리눅스 또는 윈도우에서 공통으로 사용할 수 있습니다. 저같은 경우는 윈도우에서 git bash를 사용하고 있습니다. 1. 버전 확인 - docker version 2. 원격 저장소(도커 허브 Repository)에서 도커 이미지 가져와 저장하기 - docker pull '이미지이름':태그 태그를 넣지 않으면 디폴트 태그인 ":latest"로 적용됩니다. 가장 최신의 이미지로 가져온다는 뜻입니다. 3. 로컬 저장소에 보관된 도커 이미지 리스트 확인 - docker images 4. 컨테이너 생성 및 구동 - docker run '이미지이름':태그 - docker run --name '컨테이너이름' '이미지 이름':태그 (컨테이너 이름을 직접 지정) 태그는 없으면 디폴트인 latest로 설정되고, 만약 로컬.. ▸인프라/Docker 2020. 3. 16. 윈도우 가상머신으로 도커(Docker) 설치하기 [ 윈도우에 가상 머신 구동 ] 도커(Docker)는 리눅스 OS 위에서 구동됩니다. 따라서 윈도우에서 사용하기 위해 가상 머신에다가 리눅스 환경을 구축해 사용하도록 하겠습니다. Windows Pro 이상부터는 기본적으로 윈도우의 가상화 기술인 Hyper-V 기능이 제공되므로 해당 기능을 사용하도록 하겠습니다. 1. "작업관리자 - 성능 - CPU" 에서 가상화 사용 여부 확인 아래 빨간색 네모 부분이 '사용'으로 되어 있어야 합니다. 안돼있으면 바이오스에서 켜줘야 하는데 이부분은 따로 구글링을 해보시면 됩니다. 웬만하면 대부분 사용으로 되어 있을겁니다. 2. Hiper-v 기능 활성화 "제어판 - 프로그램 및 기능 - Windows 기능 켜기/끄기" 탭에 들어가서 'Hyper-V'에 체크를 하고 확인을.. ▸인프라/Docker 2020. 3. 16. 도커(Docker)란? [ 도커(Docker)란? ] 복잡한 기술적 설명들은 인터넷에 많으니 기술적인 부분 빼고 최대한 간단히 개념만 정리하고 넘어가겠습니다. 도커는 간단히 리눅스에서 하나의 프로세스가 독립적으로 실행될 수 있도록 하는 가상의 컨테이너 기술입니다. 리눅스에서 하나의 프로그램을 구동하기 위한 환경설정 과정이 매우 복잡한데, 이 부분을 통째로 이미지화해서 저장한 뒤 다른 곳에서 그대로 불러와 사용하는 방식입니다. 이미지로 저장된 환경이 독립적으로 실행될 수 있도록 분리해주는 개념이 리눅스의 컨테이너입니다. Hyper-V나 VMWare 같은 가상화 기술과 다른 점은, OS의 자원을 최대한 활용하면서 프로세스 실행에 필요한 부분만 최소한으로 가상화 환경으로 구동시킨다는 것입니다. 가상화의 경우 OS안에 아예 독립적인 .. ▸인프라/Docker 2020. 3. 16. 스프링(Spring) MVC 동작 구조 및 스프링 컨테이너 - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 서블릿을 다루다 스프링으로 넘어온 후 제일 헷갈리는 부분이 컨테이너와 빈(Bean) 부분이었습니다. 스프링 MVC 프로젝트의 구동 순서대로 따라가보겠습니다. 기본적인 서블릿 구조에 대한 개념이 있어야 이해가 수월할 것 같습니다. 그리고 스프링 MVC 폴더 구조에 대해서 미리 알면 좋습니다. [Spring/- 기본 상식] - 스프링(Spring) 프로젝트의 폴더 구조 1. 톰캣(WAS) 구동 (web.xml) 스프링 MVC .. ▸Spring MVC/기본 상식 2020. 3. 15. 스프링 MVC - 데이터 전달 객체들 - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 기본 서블릿에서는 사용자 요청을 받을 때 서블릿 컨테이너가 request, response 객체 두 개를 전달해주는 방식이 고정적이어서 컨트롤러를 작성할 때 크게 고민되는 부분이 없었던 것 같습니다. 하지만 스프링에서는 컨트롤러에 정해진 형식이 없고, 온갖 어노테이션과 파라미터들을 활용해 컨테이너로부터 파라미터 .. ▸Spring MVC/기본 문법 2020. 3. 11. 스프링 MVC 컨트롤러 작성하기 - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 스프링 MVC 프로젝트의 전체 동작 구조와 기본 설정 파일들에 대한 내용은 아래글을 참조하시면 됩니다. [Spring/- 기본 상식] - 스프링(Spring) MVC 동작 구조 및 스프링 컨테이너 [ 컨트롤러 클래스 만들기 ] 간단히 클래스에다가 "@Controller" 어노테이션을 붙여주면 됩니다. 다만 주의할.. ▸Spring MVC/기본 문법 2020. 3. 11. 스프링 AOP 구현 (관점 지향 프로그래밍) - Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6.3 - ORM : Mybatis 3.2.8 [ AOP ] Aspect Oriented Programming - 관점 지향 프로그래밍 공통 기능과 핵심 기능을 분리시켜 공통 기능을 계속 재활용해 사용하는 방식 개념 자체는 기존 객체 지향 프로그래밍 또는 함수형 프로그래밍과 동일합니다. 공통 코드는 따로 만들어서 여기저기서 가져다 쓰자는거죠. 하지만 IOC의.. ▸Spring MVC/기본 문법 2020. 3. 10. 이전 1 ··· 4 5 6 7 8 9 10 ··· 20 다음 💲 추천 글 반응형