💻 <!-- dev -->

    [Spring] Lombok (롬복) - 코드를 자동으로 생성해 주는 라이브러리

    ⌛️ 현재 상황 age 필드를 int 형으로 정의했더니 NumberFormatException 뜨면서 400 오류가 뜸 따라서 age 필드를 int형 👉🏻 String형으로 바꾸고자 하는데 하나하나 바꾸기 너무 귀찮다! 👉🏻 int형을 String 타입으로 바꾸어 주니 setter, getter 모두 바꾸어 줘야 함 👉🏻 하지만 이렇게 하기 귀찮고 빼먹는 거 있을 수도 있으니 코드를 줄여 주는 다른 방법을 쓰자! ✔️ 코드를 자동으로 생성해 주는 라이브러리, Lombok (롬복) Lombok(롬복) - 자동 코드 생성 라이브러리, 코드 다이어트 라이브러리 - 필드마다 반복되는 getter, setter, toString 등의 메소드 작성 코드를 생략할 수 있게끔 도와줌 (단, 필드는 정확하게 다 정의해야..

    [Spring] Spring 웹 사이트 만들기 4 - 회원가입 기능

    🔥 회원가입 기능 🔥 💻 memberEnrollForm.jsp 생성 👉🏻 header, footer include 후 form 태그 action 속성에 insert.me url 제시 👉🏻 Controller에 커맨드 객체 방식으로 전달할 것이기 때문에 name 속성값도 맞춰 줌! 회원가입 * ID : * Password : * Password Check : * Name : Email : Age : Phone : Address : Gender : 남자 여자 회원가입 초기화 🙋🏻‍♀️ phone의 tel 속성은 뭔가요? 💻 header.jsp에서 화면을 띄워 줄 요청 url 제시 👉🏻 회원가입 a 태그에 url 제시 👉🏻 아이디, 비밀번호 required 속성 추가 // 회원가입 url 요청 회원가입 로그인..

    [Spring] Spring 웹 사이트 만들기 3 - 메인 페이지 만들기, 로그인 기능

    🔥 메인 페이지 만들기 🔥 💻 main.jsp 생성 👉🏻 WAS가 관리하는 영역이므로 보안상 직접 접근 불가함 💻 index.jsp에 main.jsp 포워드 💻 header.jsp, footer.jsp 생성 회원가입 로그인 HOME 공지사항 자유게시판 사진게시판 Login × ID : Password : 로그인 취소 이용약관 | 개인정보취급방침 | 인재채용 | 고객센터 강남지원 1관 : 서울특별시 강남구 테헤란로14길 6 남도빌딩 2F, 3F, 4F, 5F, 6F 강남지원 2관 : 서울특별시 강남구 테헤란로10길 9 그랑프리 빌딩 4F, 5F, 7F 강남지원 3관 : 서울특별시 강남구 테헤란로 130 호산빌딩 5F, 6F 종로지원 : 서울특별시 중구 남대문로 120 대일빌딩 2F, 3F 당산지원 : 서울..

    [Spring] 파라미터(요청 시 전달값)를 받는 방법 / 요청 처리 후 응답 페이지를 담고 포워딩 또는 url 재요청 하는 방법

    파라미터 (요청 시 전달값)를 받는 방법 👉🏻 앞으로 3번과 4번 위주로 진행할 것 1️⃣ HttpServletRequest 객체를 이용해서 전달받기 (기존의 jsp / servlet 방식) 👉🏻 해당 메소드의 매개변수로 HttpServletRequest 객체를 전달받아야 함 👉🏻 해당 메소드 호출 시 자동으로 Spring에 의해 객체가 생성돼서 매개변수로 주입해 줌 ⌨️ 잘 실행되는지 확인 ver. @RequestMapping(value="login.me") public void loginMember(HttpServletRequest request) { // HttpServletRequest request가 어디서 왔는지 궁금해하지 마라!! // 스프링이 자동으로 생성해서 나에게 줌 String use..

    [Spring] Spring에서 Controller는 어떻게 달라졌을까?

    ✔️ Spring에서는 내부적으로 중앙 요청 처리 서블릿(DispatcherServlet)이 존재함 👉🏻 모든 요청은 DispatcherServlet에 의해 분배되는 구조 👉🏻 기존의 방식처럼 매 요청마다 직접적으로 Servlet을 만들 필요가 없음 (일반 클래스로 Controller 만들어서 하나의 요청당 하나의 메소드로 처리) ✔️ DispatcherServlet에 의해 MemberController 클래스의 어느 메소드가 호출 👉🏻 MemberController 객체가 필요함 👉🏻 Spring이 MemberController 객체를 만들 수 있게끔 bean 등록을 해 줘야 함! ⌨️ 잘 실행되는지 확인 ver. @Controller // Controller 타입의 어노테이션을 붙여 주면 빈 스캐닝을..

    [Spring] Spring 웹 사이트 만들기 2 - 구조 구체화 및 MyBatis, DB 연결

    더보기 Spring을 이용하여 목적인 없는 기본 웹 사이트를 만들어 보자 클래스와 인터페이스 생성 💻 BoardDao 클래스, BoardService 인터페이스, BoardServiceImpl 클래스, Board 클래스, Reply 클래스 생성 ✔️ BoardServiceImpl 생성 후 BoardService에 대한 클래스임을 명시해 주기 package com.kh.spring.board.model.service; public class BoardServiceImpl implements BoardService { } 💻 MemberDao 클래스, MemberService 인터페이스, MemberServiceImpl 클래스, Member 클래스 생성 ✔️ MemberServiceImpl 생성 후 Memb..

    [Spring] Spring 웹 사이트 만들기 1 - DB 세팅, 폴더 및 패키지 구조 세팅

    더보기 Spring으로 웹 사이트를 만들기 전 세팅을 해 보자 DB 계정 만들기(SQLDevoloper) CREATE USER SPRING IDENTIFIED BY SPRING; GRANT CONNECT, RESOURCE TO SPRING; DB 구축 추가적으로 필요한 라이브러리를 세팅 🔧 반드시 하나 추가하고 Update Project 후 기다렸다가 추가된 것 확인하고 다음 단계 넘어가기! Maven 설정 잘못 꼬이면 모두 엉킬 수 있음 1️⃣ DB 관련(오라클, 마이바티스) 라이브러리들 👉🏻 접속 url: https://mvnrepository.com/ 1) ojdbc6 라이브러리 com.oracle.database.jdbc ojdbc6 11.2.0.4 👉🏻 ojdbc6 검색 👉🏻 뭐 다운로드 받을지..

    [Spring] Spring의 특징

    Spring framework의 특징 👉🏻 1~2번 필수 암기, 3번까지는 외워 두는 게 좋음, 나머지는 이곳에서 파생되는 개념이므로 함께 확인하기! 🔥 1. IOC(Inversion Of Control) 제어의 역전 👉🏻 객체들을 관리할 수 있는 권한이 개발자가 아닌 Spring에게 있음 내가 직접적으로 new 구문을 이용해서 객체를 생성할 일이 거의 없음 🔥 2. DI (Dependency Injection) 의존성 주입 👉🏻 객체간의 의존관계를 알아서 설정해 줌 예) MVC 패턴에서 Controller -> Service 객체 생성 후 메소드 호출 -> Dao 객체 생성 후 메소드 호출 JDBC에서 DriverManager -> Connection 객체 생성 - > PreparedStatement ..

    *수업동영상 다시 보기* [Spring] Spring 구조 뜯어보기 4 - root-context.xml, servlet-context.xml

    🚂 Spring 파일들의 실행 순서 web.xml 👉🏻root-context.xml👉🏻servlet-context.xml root-context.xml 서버 구동과 동시에 읽혀지는 web.xml 파일에 의해 거쳐져서 바로 로딩되는 문서 (즉, 2번째로 읽혀지는 파일) 서버 구동 직후에 바로 세팅해야 하는 내용들을 기술하는 공간 예) DB 연동 설정, 트랜잭션 처리 설정, 내외부 모듈 설정, ... root-context.xml 파일의 설정 방법 ✔️ beans : 접두어의 개념 beans 태그로 감싸져 있음 bean 태그들을 하나하나씩 등록시켜 주면 됨 bean: "도구" (자바 객체) 그동안은 우리가 자바 객체가 필요할 경우 일일이 new 구문을 이용해서 객체를 생성해 줬지만 이제는 스프링이 알아서 객..

    *수업동영상 다시 보기* [Spring] Spring 구조 뜯어보기 3 - web.xml

    🚂 Spring 파일들의 실행 순서 web.xml 👉🏻 root-context.xml 👉🏻 servlet-context.xml web.xml 배포 서술자라고 부르는 파일, 서버가 구동될 때 가장 먼저 읽혀지는 파일 즉, 복잡한 스프링 환경설정 파일들 중에 가장 먼저 읽혀지는 파일 👉🏻 서버가 알아야 할 가장 기본적인 설정은 이 파일에 다 기술되어 있어야만 함 web.xml 구조 1) 파일 정의 영역 👉🏻 xsi: 유효성 검사를 해 주면서 해당 파일이 xml 파일이 맞음을 인증해 줌 2) The definition of the Root Spring Container shared by all Servlets and Filters 👉🏻 스프링의 최상위 설정 파일(root-context.xml) 의 경로를 지정..