반응형

Back-End 34

[Spring] 스프링 Security 사용이유와 설정 방법을 알아보자

spring security 란 ? Spring 기반의 애플리케이션의 은증과 권한, 인가 등의 보안을 담당하는 스프링 하위 프레임 워크이다. 처리 방법으로는 Filter 흐름에 따라 처리하고 있으며 특히 Spring Security는 보안과 관련해 많은 옵션을 제공해주기 때문에 개발자입장에서는 보안관련 로직을 작성하지 않아도 되는 장점을 가지고 있다. spring security 프로젝트 생성 ※ 참고로 저의 버전은 java => 1.8 springframework => 5.2.15 servlet => 3.1버전으로 사용하였습니다. Spring Security 프로젝트 설정 https://mvnrepository.com/ 메이븐사이트에서 라이브러리를 받아오고 pom.xml에 저장한다. 1. spring-..

Back-End/Java 2021.06.23

[Spring] Legacy Project 첨부파일 구현하기

ATTACH 테이블 생성 AttachVO.java 생성 앞서 생성한 테이블의 구조를 객체화 시키기 위함 package com.example.domain; import lombok.Data; @Data public class AttachVO { private String uuid; private String uploadpath; private String filename; private String filetype; private int bno; } AttachMapper.java SQL문 insert 처리를 위한 메소드 package com.example.mapper; import org.apache.ibatis.annotations.Insert; import com.example.domain.Attac..

Back-End/Java 2021.06.15

세션(Session), 쿠키(Cookie) 특징과 차이를 알아보자

세션(Session) 이란? 클라이언트와 웹 서버 간의 상태를 지속적으로 유지하는 방법이다. 예를 들자면 웹 쇼핑몰에서 장바구니 및 주문처리와 같은 회원전용 페이지의 경우 로그인 인증을 통해 사용권한을 부여한다. 그래서 다른 웹 페이지에 갔다가 다시 되돌아와도 로그인 상태가 유지되므로 회원 전용 페이지를 계속 사용할 수 있다. 이렇게 사용자 인증을 통해 특정 페이지를 사용할 수 있도록 권한 상태를 유지하는것이 세션(Session)이다. 메소드 반환 유형 설명 getAttribute(String name) java.lang.Object 세션 속성 이름이 name인 속성 값을 Object형으로 반환한다. 해당되는 속성 이름이 없다면 null를 반환 getAttributeNames() java.util.Enu..

Back-End/JSP 2021.06.15

[Spring] Legacy Project 게시판 글쓰기 구현하기

로그인 안하면 글쓰기를 할 수 없게 만듬 boardList.jsp 홈 게시판 글목록 게시판 글목록 create새글쓰기 번호 글제목 글쓴이 작성일 조회수 ${ board.num } ${ board.title } ${ board.mbrid } ${ board.readcount } 게시판 글이 없습니다. chevron_left ${ i } chevron_right find_in_page 검색 boardContent.jsp 홈 게시판 글목록 게시판 글내용 게시판 글내용 ${ boardVO.title } 조회수: ${ boardVO.readcount } 글쓴이: ${ boardVO.mbrid} 작성일자: ${ boardVO.content } 첨부파일1 첨부파일2 첨부파일3 edit 글수정 delete 글삭제 re..

Back-End/Java 2021.06.15

MVC 패턴이 무엇인지 왜 사용하는지 알아보자

MVC 패턴 이란? Model, View, Controller의 약자로 웹 애플리케이션을 비지니스 로직, 프레젠테이션 로직, 데이터로 분리하는 디자인 패턴이다. 특히나 웹 애플리케이션에서는 애플리케이션을 비즈니스 로직, 프레젠테이션, 요청 처리 데이터로 분류하고 비즈니스 로직은 애플리케이션의 데이터, 즉 고객, 제품, 주문정보의 조작에 사용되는 용어이고 프레젠테이션은 애플리케이션이 어떻게 표시되는지, 즉 위치, 폰트, 크기를 나타낸다. 그리고 요청 처리 뎅터는 비즈니스 로직과 프레젠테이션 파트를 함께 묶는것을 말한다. 모델(Model) 애플리케이션의 데이터와 비즈니스 로직을 담는 객체이다. 뷰(View) 사용자에게 모델의 정보를 보여주는 역할을 한다. 비즈니스 로직을 포함하지 않으며 하나의 모델을 다양한..

Back-End/JSP 2021.06.14

[Spring] Legacy Project 페이징 구현하기

페이징(Paging)이란? 사용자가 어떠한 데이터를 필요할때 데이터 중의 일부를 보여주는 방식이다. 예를 들자면 게시판에 등록된 글이 1000개라면 하나의 페이지에서 1000개의 데이터를 출력하게 된다면..? 로딩속도도 느려지고 사용자가 필요한 데이터를 찾는 불편하기 때문에 페이징과 검색 기능을 통해 해결할 수 있다. BoardController.java package com.example.controller; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui...

Back-End/Java 2021.06.13

[Spring] Legacy Project 게시판 구현하기

BoardVO.java package com.example.domain; import java.util.Date; import lombok.Data; @Data public class BoardVO { private int num; private String mbrid; private String title; private String content; private Date regDate; private int readcount; private String ip; private int reRef; // 글 그룹 번호 private int reLev; // 글 들여쓰기 레벨 private int reSeq; // 글 그룹 내에서의 순번 } BoardMapper.java : Controller에서 기능을 수..

Back-End/Java 2021.06.10

[Spring] Legacy Project 아이디 중복 확인하기

jQuery What is jQuery? jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers. jquery.com Copy URL 클릭 후 join.jsp에 소스를 붙여준다. Spring 제이슨 변환기 com.fasterxml.jackson.core jackson-databind 2.12.3 XML 변환 com.fasterxml.ja..

Back-End/Java 2021.06.10

[Spring] Legacy Project Handler intercepor 사용법

[Spring] Legacy Project 회원탈퇴 및 회원정보수정 구현하기 MemberController.java package com.example.controller; import java.util.Date; import java.util.UUID; import javax.servlet.http.HttpSession; import org.mindrot.jbcrypt.BCrypt; import org.springframewo.. soulno.tistory.com 저번에 회원탈퇴 및 회원정보수정을 했는데요. 여기서 치명적인 단점이 있습니다. 바로 회원정보 수정화면으로 직접적으로 접속할 수 있기 때문에 개인정보 유출이 될 수 있습니다. 그래서 이러한 단점을 방지할 수 있는 Handler intercepo..

Back-End/Java 2021.06.10
반응형