본문 바로가기

서버/Spring
(13)
[스프링(Spring)] WebSocket // Socket - 네트워크상에서 호스트 간의 통신하는 규약(약속) - 인터페이스 - 여러 언어들이 Socket 구현 > 클래스 or 객체 제공 - 웹통신, Ajax 통신 > 단방향 통신(편지, 무전기) 소켓 통신 > 양방향 통신(전화) // WebSocket - HTML5 때 생성 - JavaScript에서 소켓 통신 지원 - Spring > WebSocket을 지원하는 API 제공 // 기본 설정 및 테스트 ~ pom.xml 4.0.0 com.test websocket WebSocketTest war 1.0.0-BUILD-SNAPSHOT 11 5.0.7.RELEASE 1.6.10 1.6.6 org.springframework spring-context ${org.springframework-vers..
[스프링(Spring)] RESTful // REST(Representational State Transfer) API, RESTful Service - 웹상의 자원(문서, 이미지, 동영상, 데이터 등)을 자원명으로 표시해서 자원의 상태를 주고받는 행위 - HTTP URI를 통해서 자원을 명시하고, HTTP Method를 통해서 자원에 대한 CRUD 처리하는 방식 // 게시판 구현 1. 여태 사용한 구현 방식 > URI 표현 - 목록보기 GET http://localhost/board/list.do - 추가하기 POST http://localhost/board/add.do - 수정하기 POST http://localhost/board/edit.do - 삭제하기 POST http://localhost/board/del.do - 검색하기 GET ..
[Spring Security] 권한 체크 // 권한 체크 - add.do, addok.do, edit.do, editok.do, del.do, delok.do > 인증 사용자만 접근 1. servlet-context,xml > namespaces 설정(security) & security:global-method-security 추가 2. com.test.controller > BoardController > 원하는 메소드에 @PreAuthorize 달기 package com.test.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import ..
[Spring Security] 회원가입, 자동 로그인 // 회원가입 1. "src/main/resources" > com > test > mapper > MemberMapper.xml 2. "com.test.domain" > MemberDTO.java > AuthDTO.java package com.test.domain; import java.util.List; import lombok.Data; @Data public class MemberDTO { private String userid; private String userpw; private String username; private String regdate; private String updatedate; private String enabled; private List authlist; } pa..
[Spring Security] 로그인, 로그아웃, 계정 정보 // 스프링 시큐리티, Spring Security - 기존 Servlet/JSP > 인증(증명, 인증 티켓) + 허가(권한) > 세션 기반 인증 - 동작 방식 > 서블릿 필터와 스프링 인터셉터를 사용하여 보안을 처리 - 일괄 설정(pom.xml, ojdbc6, web.xml, root-context.xml, https://log4jdbc.log4j2.properties, log4j(log level)) - 스프링 시큐리티 설정 ~ pom.xml : 의존성 4개 추가 org.springframework.security spring-security-web 5.0.7.RELEASE org.springframework.security spring-security-config 5.0.7.RELEASE org.s..
[스프링(Spring)] 파일 업로드 / 다운로드 // 파일 업로드 1. cos.jar > 개발 종료 2. commons-fileupload > 많이 사용 3. Servlet 3.0이상 > 파일 업로드 기능 내장 - 설정 ~ pom.xml - 의존성 추가 4.0.0 com.test file FileTest war 1.0.0-BUILD-SNAPSHOT 11 5.0.7.RELEASE 1.6.10 1.6.6 org.springframework spring-context ${org.springframework-version} commons-logging commons-logging org.springframework spring-webmvc ${org.springframework-version} org.aspectj aspectjrt ${org.aspectj-..
[스프링(Spring)] MyBatis // MyBatis(iBatis) - 영속성 계층(데이터베이스 조작 기술) - JDBC 역할과 동일 - 응용 프로그램 JDBC 데이터베이스 - 응용 프로그램 MyBatis 데이터베이스 - JDBC 기반 > 관리, 생산성 향상 // MyBatis를 스프링에 적용하는 방법 1. XML 매퍼를 사용하는 방법 2. 인터페이스 매퍼를 사용하는 방법 1. XML 매퍼를 사용하는 방법 pom.xml > dependency 추가 org.mybatis mybatis 3.5.2 org.mybatis mybatis-spring 1.3.2 org.springframework spring-tx ${org.springframework-version} org.springframework spring-jdbc ${org.spring..
[스프링(Spring)] MVC 에러 처리 - 컨트롤러 작업 중 에러가 발생할 때 처리하는 방법 @ControllerAdvice : 컨트롤러 작업 중 에러가 발생할 때 처리하는 클래스 @ExceptionHandler(Exception.class) : 예외를 처리할 메서드 @ResponseStatus(HttpStatus.NOT_FOUND) : 404에러를 처리하는 메서드 throwExceptionIfNoHandlerFound true package com.test.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping;..