Spring 6

[Spring] MyBatis를 이용해 DB 조작하기(SQL Mapper)

JAVA ORM의 대표인 JAP를 활용해서도 DB를 조작할 수 있지만, SQL Mapper를 활용해 DB를 조작하는 MyBatis도 있습니다. 1. MyBatis란? 객체지향 언어인 자바의 관계형 데이터베이스 프로그래밍을 좀 더 쉽게 할 수 있게 도와주는 개발 프레임워크 복잡한 JDBC 코드를 걷어내며 깔끔한 소스코드를 유지 자바의 객체(Object)와 SQL 사이에서 자동 맵핑을 도와주는 프레임워크 XML 형태로 쓰인 JDBC 코드라고 생각해도 될 만큼 JDBC의 모든 기능을 제공 2. MyBatis 적용하기 1) Dependency 추가 pom.xml에 mybatis 관련 dependency를 추가해 줍니다. (상세 워딩은 직접 쳐도 되지만, 새 프로젝트를 추가하면서 mybatis를 설정해 나온 po..

Spring 2022.03.31

[Spring] 이메일 전송(JavaMailSende)

회원 가입을 할 때 이메일을 기입하게 되는 경우가 있습니다. 이 때 해당 이메일을 확인하기 위한 절차나, 사용자가 비밀번호를 잊었을 경우 확인 절차를 위해 메일을 전송하기도 합니다. 그러면 스프링에서 메일을 전송하기 위한 JavaMailSender를 사용해 보겠습니다. 1. pom.xml에 라이브러리 추가 Mail 관련 기능을 이용하기 위해 pom.xml에 관련 라이브러리를 추가해야 합니다. 가장 쉬운 방법으로 새로운 프로젝트를 생성하면서 관련 기능을 추가해 생성된 dependency 내역을 가져오면 됩니다. 기존과 같은 세팅으로 새로운 프로젝트를 생성해 보겠습니다. "Next"를 눌러 줍니다. JavaMailSender를 사용할 수 있는 "Java Mail Sender"를 클릭해 dependency를 ..

Spring 2022.03.24

[Spring] 기본 디렉토리 구조(Controller, Repository, Model, Service)

Spring은 자바 기반의 객체지향으로 프로그래밍 해야 하는 프레임워크입니다. 그럼 실제 개발할때 구조가 어떻게 되며, 어떤 패턴을 갖게 되는 걸까요? 1. Layered Architecture n-계층 아키텍쳐라고도 하며, 여러 레이어들이 각자 분리되어진 아키텍처를 말합니다. 여기서 레이어는 공통 단위로 묶어진 소프트웨어 단위로, 크게 Presentation / Service / Persistence 로 구성됩니다. 1) Presentation layer(View, Controller, Pages, Display beans) 사용자와의 최종 접점으로, 사용자로부터 데이터를 입력받거나 반대로 데이터를 가공해 처리 결과를 출력해서 보여주는 레이어 입니다. 2) Service layer(Services, M..

Spring 2022.03.24

[Spring] Thymeleaf를 통한 View 페이지 매핑

위에서 MainController 클래스 안에 index함수가 있습니다. 최상위 경로로 요청이 들어오면 "index"를 리턴하도록 작성이 되어있는데, 이는 View역할을 하는 index.html을 리턴하도록 매핑하는 로직 입니다. index.html에 작성된 내용은 위와 같고, 현재 상태에서 실행을 시켜 최상위 경로에 대한 요청을 하게 되면 앞서 작성해 놓았던 View페이지인 "index.html"을 가져오게 됩니다. 그러면, MainController에서 최상위 경로('/')에 request를 하면 "index"를 리턴하게 되고, "index.html"을 가져오게 되는것은 알겠는데 어떻게 내가 작성해 놓았던 "index.html"위치를 알고 가져오게 되는 걸까요? 정답은 타임리프(Thymeleaf) 설..

Spring 2022.03.23

[Spring] 이클립스 스프링 프로젝트 생성하기

1. 새로운 프로젝트 생성에, 'Spring Starter Project'를 클릭해 줍니다. 2. 생성할 스프링 프로젝트의 상세 설정을 진행해 줍니다. - Type: 빌드 툴 설정. 안드로이드는 'Gradle'를 많이 쓰지만 여전히 'Maven'을 많이 사용하고 있다. - Packaging: Jar는 자바 아카이브로 실행, War는 웹 아카이브라고 해서 웹에서 실제 실행시킬 수 있는 파일. 전통적으로 War를 많이 사용한다. 추가적인 스타트업 패키지 중에서 필요한 것만 선택해 설치를 진행한다. 그리고 실제 프로젝트 웹에 표출해줄 템플릿과 'Spring Web'을 선택해 주고 'Finish'를 누릅니다. 3. 설치가 완료되면 스프링 프로젝트가 생성된다. 4. 스프링 프로젝트가 완성되면, 'main' 디렉토..

Spring 2022.03.14

[Spring] 이클립스 플러그인 설치

1. 이클립스 플러그인 설치를 위해, 이클립스에서 마켓플레이스를 활용합니다. 2. 'Eclipse Enterprise Java and Web Developer Tools'를 찾아, 최신 버전으로 설치를 시작합니다. 추가적으로, 앞으로 JSON을 활용할 예정이기에 'Eclipse JSON Editor and Tools'를 체크해 줍니다. 그리고 Accept하여 설치를 마무리 합니다. 3. 다시 이클립스 마켓플레이스에서 'Spring Tools'를 검색해 설치를 진행합니다. 특별히 따로 진행할 건 없고, 쭉 진행해 준다. Accpet하여 마무리합니다. 전부 설치하고 나서, 재시작 팝업이 뜨면 재시작 해준다. 4. 이상 스프링에 사용할 이클립스 플러그인 설치 완료!

Spring 2022.03.14