💻 <!-- dev -->

    [Spring] Spring 구조 뜯어보기 2 - pom.xml

    pom.xml 👉🏻 Project Object Model의 약자 내가 사용하고자 하는 라이브러리를 직접 등록하여 자동으로 프로젝트에 추가되게 하는 역할 👉🏻 라이브러리 관리의 편의성을 주는 파일 (Maven과 관련된 파일) pom.xml의 구조 1) 파일 정의 영역 👉🏻 xsi: 유효성 검사를 해 주면서 해당 파일이 xml 파일이 맞음을 인증해 줌 2) modelVersion ~ version 엘리먼트 영역 👉🏻 이 스프링 프로젝트에 대한 정보를 기술한 부분 4.0.0 com.kh spring Spring_Project war 1.0.0-BUILD-SNAPSHOT 3) properties 엘리먼트 영역 👉🏻 이 문서에서 사용할 환경설정 내용들을 담은 변수들을 지정한 부분 👉🏻 태그명이 곧 변수명, 시작 ..

    [Spring] Spring 구조 뜯어보기 1 - 전체적인 구조 파악

    Spring 구조 뜯어보기 1) 이 프로젝트는 어떤 놈인가? 2) src의 main과 test는 뭐가 다르지? 👉🏻 main: 실제 서버를 돌릴 곳 👉🏻 test: 중간중간 모르는 코드만 테스트해 볼 곳, 단위 테스트 할 곳 3) main 내의 폴더를 MyBatis-workspace와 비교해 본다면? Spring MyBatis resource resource java src webapp webapp 4) resources: 외부 프로그램을 연동할 때 xml 파일을 둘 곳 5) java: 기존 자바 코드를 기술하던 src와 같음 👉🏻 우리가 만들어 줬던 3가지 패키지 폴더 구조를 그대로 따옴 6) resources 폴더와 webapp 내의 resources 파일은 뭐가 다른가? 👉🏻 resources: 외..

    [Spring] STS(Spring Tool Suite) 설치법 & 세팅

    STS(Spring Tool Suite) 👉🏻 Spring용 이클립스 STS(Spring Tool Suite) 설치하는 법 1) 하단 경로 접속 https://github.com/spring-attic/toolsuite-distribution/wiki/Spring-Tool-Suite-3 GitHub - spring-attic/toolsuite-distribution: the distribution build for the Spring Tool Suite and the Groovy/Grails Tool Suite the distribution build for the Spring Tool Suite and the Groovy/Grails Tool Suite - GitHub - spring-attic/too..

    [MyBatis] view단과 Controller단 사이의 Filter

    더보기 MyBatis의 Filter에 대해 알아보자 Filter ✔️ 정수기의 필터가 물의 불순물을 거르듯이 Servlet에 접속하기 전에 먼저 가로채서 해당 요청에 대한 선처리 구문을 작성하는 개념 ✔️주로 공통적으로 선처리되어야 하는 기능을 필터로 정의해 둠 👉🏻 예) 인코딩 처리 Filter 작성 시 주의사항 1) 선처리할 구문을 doFilter라는 메소드에 작성 👉🏻 이때, chain.doFilter 구문이 반드시 doFilter 메소드 마지막에 존재해야 함 2) 최상단의 @WebFilter(urlPatterns = "/*") 👉🏻 어떤 요청이 실행되기 전에 이 필터를 거쳐갈 건지에 대한 설정: 모든 서블릿이 실행되기 전에 이 필터를 거치겠다 💻 Filter 생성 package com.kh.myb..

    [MyBatis] MyBatis CRUD - 게시판 기능 2(게시판 상세 조회 & 댓글리스트 조회, 게시글 검색 기능)

    더보기 MyBatis의 게시판 기능에 대해 알아보자 🔥 게시판 상세 조회 & 댓글 리스트 조회 🔥 💻 boardListView.jsp 각각의 게시글마다 링크 걸기 ${ b.boardNo } ${ b.boardTitle } ${ b.boardWriter } ${ b.count } ${ b.createDate } 💻 boardDetailView.jsp 생성 - 하드코딩 ver. 게시판 상세조회 글번호 10 제목 여기는 제목이 들어갈 자리 :) 작성자 user01 조회수 200 작성일 2022-11-14 내용 여기가 내용이 들어갈 자리*^_________^* 댓글 작성 등록 댓글 (2) admin 우와 재미있어요 2022-11-14 user02 집에 언제 가요? 2022-11-14 💻 Reply 클래스 생성 ..

    [MyBatis] MyBatis CRUD - 게시판 기능 1(공통 코드, 페이징 바, 게시판 전체 조회)

    더보기 MyBatis의 게시판 기능을 구현해 보자 🔥 공통 코드 🔥 💻 Board 클래스 생성 package com.kh.mybatis.board.model.vo; import java.sql.Date; public class Board { // 필드부 private int boardNo; // BOARD_NO NUMBER PRIMARY KEY, private String boardTitle; // BOARD_TITLE VARCHAR2(100) NOT NULL, private String boardContent; // BOARD_CONTENT VARCHAR2(4000) NOT NULL, private String boardWriter; // BOARD_WRITER NUMBER, private int co..

    [MyBatis] MyBatis CRUD - 로그인/로그아웃/정보 변경/ 탈퇴 기능

    더보기 MyBatis의 로그인/로그아웃/정보 변경/탈퇴 기능을 구현해 보자 🔥 로그인 기능 🔥 💻 menubar.jsp 👉🏻 c:when의 test 내용을 empty loginUser로 변경, 로그인 폼에 action값 지정, 로그인 시 환영합니다 문구 아이디 로그인 비밀번호 회원가입 | 비밀번호 찾기 ${ loginUser.userName }님 환영합니다 ^^ 마이페이지 로그아웃 💻 LoginController 생성 url mapping: /login.me protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterE..

    [MyBatis] MyBatis CRUD - "회원가입 기능"으로 JDBC와 차이점 비교

    더보기 MyBatis의 기본적인 CRUD에 대해 알아보자 MyBatis CRUD를 위한 환경설정 ✔️ WEB-INF/views 일반 폴더 생성 ✔️ WEB-INF/views/main.jsp 생성 💻 main.jsp 여기는 main.jsp야 더보기 현재 기본 index.jsp는 나옴! http://localhost:8888/mybatis/WEB-INF/views/main.jsp 로 직접 접근 시 👉🏻 WEB-INF 폴더는 WAS가 관리하므로 직접 접근이 불가함! * 앞으로 Spring 프로젝트 구조상 모든 화면 관련 파일들은 WEB-INF 폴더 내부의 views 폴더에 들어가 있을 것! 👉🏻 WEB-INF 폴더는 WAS가 전적으로 관리하기 때문에 일반적인 브라우저에서 url 주소로 접속이 불가하다는 특징이..

    [MyBatis] Framework와 MyBatis 설치/세팅/mybatis-config.xml, Template클래스

    더보기 Famework와 MyBatis의 개요에 대해 알아보자 Framework ⚡️ == 편하게 개발할 수 있는 가이드를 줄 테니 넌 이대로만 하면 돼! ⚡️ 코드 구현에 대한 개발 시간을 줄이고 코드의 재사용성 증진을 위한 일련의 클래스 묶음, 뼈대, 틀을 제공하는 라이브러리를 구현해 놓은 것 소프트웨어 개발의 입장으로써는 공통으로 사용하는 라이브러리 / 개발도구 / 인터페이스 등등을 의미 Framework의 필요성 현재 웹프로그래밍의 규모가 커지고 있음 👉🏻 거대하고 복잡도가 높은 프로젝트를 완성시키기 위해 많은 사람들이 필요함 👉🏻 그 개발자들이 "통일성" 있게 "빠르고" "안정적"으로 개발하기 위해서는 무수히 많은 규칙을 지켜야 함 👉🏻 그래서 강제성이 짙은 "프레임워크"가 좋은 성과를 내고 있..

    [JSP Action Tag - 커스텀 액션 태그] JSTL Functions Library

    더보기 JSTL Functions Library의 개요와 사용법에 대해 알아보자 JSTL 분류 3️⃣ JSTL Functions Library EL 구문 안에서 사용할 수 있는 메소드를 제공 더보기 💻 jstl.jsp functions library 03_functions.jsp 생성 formatting도 필요하다면추가하면 됨! 이번 테스트에서는 사용하지 않을 것이기 때문에 추가하지 않았을 뿐 💻 02_formmatting.jsp - 테스트 공통 내용 1. 변수, ArrayList의 길이 반환: ${ fn.length(변수명) } 💻 03_functions.jsp str: ${ str } 문자열의 길이: ${ fn:length(str) } 글자 문자열의 길이: ${ str.length() } 글자 lis..