🤯TIL/Spring

    [Spring_JAVA] UUID 란?

    [Spring_JAVA] UUID 란?

    UUID ? 😎 Universally Unique IDentifier, 범용 고유 식별자 소프트웨어 구축에 쓰이는 식별자 표준 util 안에있는 GUID 클래스의 randomUUID 메소드를 호출하면 생성가능 완벽한 고유값이라는 보장은 없지만 실제 사용시에 중복될 가능성이 거의 없어서 테이블의 key값이나 파일 업로드시 임시 파일명 등으로 사용될 수 있음 참고 https://ko.wikipedia.org/wiki/%EB%B2%94%EC%9A%A9_%EA%B3%A0%EC%9C%A0_%EC%8B%9D%EB%B3%84%EC%9E%90 범용 고유 식별자 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 범용 고유 식별자(汎用固有識別子, 영어: universally unique identifi..

    [Spring_JAVA] @AllArgsConstructor 란? / 사용 이유

    [Spring_JAVA] @AllArgsConstructor 란? / 사용 이유

    @AllArgsConstructor 는 모든 필드 값을 파라미터로 받는 생성자를 만든다. @AllArgsConstructor 사용 시 EmailDTO dto = new EmailDTO(senderName, senderMail, receiverMail, subject, message); 생성가능 실제 사용 EmailDTO dto = new EmailDTO("SwimLover", "SwimLover", mem_email, "SwimLover 임시비번", ""); ex) DTO에 @AllArgsConstructor 를 임포트하니 ➡ 컨트롤러의 오류가 사라졌다!

    [Spring] @log4j 란? / @log4j 와 System.out.println

    [Spring] @log4j 란? / @log4j 와 System.out.println

    @log4j? Log for java (JAVA의 LOG Library) : 자바기반의 로깅 유틸리티로 Apache에서 만든 오픈소스 라이브러리 로그? : Log란 시스템 동작 시 시스템 상태, 작동 정보를 시간의 경과에 따라 기록한 것 더 자세하게 알고 싶어요! : 여러 자바 로깅 프레임워크들 가운데 하나 : 최종 사용자가 제품의 문제나 정보를 식별하기 위해, 그리고 소프트웨어 개발자가 프로그램을 개발하는 도중에 : 디버깅 등을 위해 타임스탬프 등 정해진 양식에 맞추어 화면 상이나 파일로 로그를 남길 목적으로 사용 사용이유? (log.info) : 코드 오류 확인을 위해 로그창을 확인할 때 sysout을 사용하여 로그를 찍는 대신 log4j를 사용 : 운영의 속도에 영향을 준다. sysout ➡ log..

    [어노테이션] @ResponseBody / @ResponseEntity<T> / @RequestParam("") 정리

    [어노테이션] @ResponseBody / @ResponseEntity<T> / @RequestParam("") 정리

    @ResponseBody @ResponseEntity @RequestParam("") 정리 ex) 코드예시 ✨ 여기서 잠깐! 알아두고 넘어가자! (HTTP 프로토콜) - Http 프로토콜 : 인터넷 상 데이터를 주고받기 위한 서버/클라 모델 - http Request 요청 : 클라이언트(브라우저) ➡ 서버 - http Response 응답 : 서버 ➡ 클라이언트(브라우저) - http 헤더 : Request, Response 처리 위한 중요한 정보를 담고 있음 / 요구사항(요청/응답) - http 바디 : 내용 *불특정 다수 대상 서비스에 적합 @ResponseBody 스프링에서 *비동기 처리시 사용 *비동기 처리? : 웹에서 화면전환(새로고침)없이 이루어지는 동작 Response Body? : 서버 ➡..

    [게시판 만들기] 코드 총정리 (*ONLY CRUD)

    테이블 설계 CREATE SEQUENCE seq_board; CREATE TABLE TBL_BOARD ( BNO NUMBER(10,0), --일련번호 TITLE VARCHAR2(200) NOT NULL, -- 제목 CONTENT VARCHAR2(2000) NOT NULL, -- 내용 WRITER VARCHAR2(50) NOT NULL, -- 작성자 REGDATE DATE DEFAULT SYSDATE, -- 등록일자 UPDATEDATE DATE DEFAULT SYSDATE -- 수정일자 ); COMMIT; ALTER TABLE TBL_BOARD ADD CONSTRAINT PK_BOARD PRIMARY KEY(BNO); -- primary key 제약조건이름으로 인덱스가 자동생성됨. 인덱스명 PK_BOARD..

    [게시판 만들기 - 4 ] 게시판 수정하기 / 삭제하기

    [게시판 만들기 - 4 ] 게시판 수정하기 / 삭제하기

    목 차 7. 게시판 수정 / 삭제 - 작업1> Controller : 매핑주소 및 메서드 작업 - 작업2> Mapper interface와 Mapper XML작업 - Mapper Interface : 메서드 작업 - Mapper XML : SQL 구문작업 - 작업3> Service 작업 -Service인터페이스 : 추상 메서드 작업 -Servicelmpl(구현) 클래스 : 메서드 구현 -작업4> Controller : Service의 메서드 호출 [-작업5> VIEW 처리 : modify.jsp 파일 생성] ➡ remove에선 생략 작업1> Controller : 수정 매핑주소 및 메서드 작업 작업2> Mapper interface와 Mapper XML작업 - Mapper Inte..

    [게시판 만들기 - 3 ] 게시판 읽기

    [게시판 만들기 - 3 ] 게시판 읽기

    목 차 6. 게시판 읽기 - 작업1> Controller : 읽기 매핑주소 및 메서드 작업 - 작업2> Mapper interface와 Mapper XML작업 - Mapper Interface : 메서드 작업 - Mapper XML : SQL 구문작업 - 작업3> Service 작업 -Service인터페이스 : 추상 메서드 작업 -Servicelmpl(구현) 클래스 : 메서드 구현 -작업4> Controller : Service의 메서드 호출 -작업5> VIEW 처리 : get.jsp 파일 생성 작업1> Controller : 리스트 매핑주소 및 메서드 작업 작업2> Mapper interface와 Mapper XML작업 - Mapper Interface : 메서드 작업 - Mapper XML : SQL..

    [게시판 만들기 - 2 ] 게시판 목록

    [게시판 만들기 - 2 ] 게시판 목록

    목 차 5. 게시판 목록 - 작업1> Controller : 리스트 매핑주소 및 메서드 작업 - 작업2> Mapper interface와 Mapper XML작업 - Mapper Interface : 메서드 작업 - Mapper XML : SQL 구문작업 - 작업3> Service 작업 -Service인터페이스 : 추상 메서드 작업 -Servicelmpl(구현) 클래스 : 메서드 구현 -작업4> Controller : Service의 메서드 호출 -작업5> VIEW 처리 : list.jsp 파일 생성 작업1> Controller : 리스트 매핑주소 및 메서드 작업 작업2> Mapper interface와 Mapper XML작업 - Mapper Interface : 메서드 작업 - Mapper XML : S..

    [게시판 만들기 - 1 ] 글쓰기 폼 만들기 / 글쓰기 저장

    [게시판 만들기 - 1 ] 글쓰기 폼 만들기 / 글쓰기 저장

    라이브러리 및 환경설정(bean) - 참고 : https://dorothy-yang.tistory.com/158 [Spring 프로젝트] 스프링 프로젝트 생성 및 준비(라이브러리 추가) 스프링 프로젝트 생성 및 준비하기🤔 Spring Legacy Project의 생성 pom.xml에서 스프링 버전 변경 (아래는 한번에 추가된다.) spring-test, spring-jdbc, spring-tx 추가 junit버전 변경 Servlet 버전 변경 HikariCP, MyBat dorothy-yang.tistory.com 목 차 1. 테이블 설계(SQL) 2. 패키지 구조 3. com.demo.domain - BoardVO 클래스 설계 4. 게시판 글쓰기 - 글쓰기 폼 : DB연동..

    [코배스] Part 3-1. 기본적인 웹 게시물 관리 / 게시판 만들기

    [코배스] Part 3-1. 기본적인 웹 게시물 관리 / 게시판 만들기

    목차 스프링 MVC 프로젝트의 기본 구성 영속/비지니스 계층의 CRUD 구현 비지니스 계층 프레젠테이션(웹) 계층의 CRUD 구현 화면 처리 1. 스프링 MVC 프로젝트의 기본 구성 프로젝트 진행 시 사용되는 네이밍 규칙 xxxController 스프링 MVC에서 동작하는 Controller 클래스 설계 xxxService / xxxServiceImpl 비지니스 영역 담당하는 인터페이스 / 인터페이스 구현한 클래스 xxxDAO / xxxRespository DAO(Data-Access-Object)나 Respository(저장소) *DAO 구성 대신 MyBatis의 Mapper 인터페이스 활용 VO / DTO 공통점 : 데이터를 담고 있는 객체 VO : Read Only 목적이 강해 데이터 자체도 불변하..

    [코배스] Part 2. 스프링 MVC 설정

    [코배스] Part 2. 스프링 MVC 설정

    목차 스프링 MVC의 기본 구조 스프링 MVC의 Controller 1. 스프링 MVC의 기본 구조 Model-View-Controller - 대부분의 서블릿 기반 프레임워크들이 사용하는 방식 - 데이터와 처리, 화면을 분리하는 방식 스프링 MVC의 기본 사상 - 서블릿 기반이긴 하지만 한 단계 더 추상화된 수준의 개발 지향 - 서블릿 API없이도 개발이 가능한 수준 2. 스프링 MVC의 Controller Controller - HttpServletRequest, HttpServletResponse를 거의 사용할 필요 없이 필요한 기능 구현 - 다양한 타입의 파라미터 처리, 다양한 타입의 리턴 타입 사용 가능 - GET 방식, POST 방식 등 전송 방식에 대한 처리를 어노테이션으로 처리 가능 - 상속..

    [코배스] Part 1. 스프링 개발 환경 구축

    [코배스] Part 1. 스프링 개발 환경 구축

    목차 개발을 위한 준비 스프링의 특징과 의존성 주입 스프링과 Oracle Database 연동 Mybatis 스프링 연동 1. 개발을 위한 준비 JDK 1.8버전 설치 STS(Eclipse) 설치 및 프로젝트 생성 Tomcat 설치 및 연동 오라클 데이터베이스 / SQL Developer 설치 및 설정 롬복 설치 스프링 프로젝트 생성 및 라이브러리 추가 MyBatis / mybatis-spring 설정 스프링 MVC 개발 설정 프로젝트 생성 - Spring Legacy Project 메뉴를 이용해서 생성한다. 1 src/main/java 작성되는 코드의 경로 2 src/main/resources 실행할 때 참고하는 기본 경로(주로 설정 파일들을 넣는다.) 3 src/test/java 테스트 코드를 넣는 ..