Spring/Spring 프로젝트(dsBBS) 6

Ajax를 이용한 ID 중복 확인

Register 기능에 Validation을 구현하다가 많은 여러 사이트의 회원가입에 있는 기능인 ID 중복 체크를 만들어보기로 생각했다. ID 중복 체크를 하기 위해서는 입력한 ID가 기존 데이터에 있는지 확인하는 Controller와 입력한 ID를 데이터로 담아 서버에 요청을 보낼때 비동기 처리 방식을 사용할 수있어야 한다. 앞서 말한 조건들에 맞는 기술이 Ajax이다. [ 참고 ] Ajax 정리 : https://snorlax1106.tistory.com/55 [ Controller 생성 ] @ResponseBody @GetMapping("/idCheck") public int idCheck(String id) throws Exception { if(userService.select(id) != n..

RememberMe 구현

RememberMe를 구현하기 위해서는 쿠키와 세션을 이용해야 한다. 쿠키와 세션은 모두 사용자의 정보(데이터)를 저장하기 위해 사용된다. 쿠키와 세션은 각 특징에 따라 조금 다르게 이용이 된다. [ 쿠키와 세션의 특징 ] • 쿠키 브라우저에 저장(사용자 PC)되어 서버에 부담이 없고, 서버 다중화에 유리하지만, 보안에 불리하다. 세션과 달리 여러 서버로 전송 가능하다. 사용자의 로컬에 저장되어있다가 브라우저가 요청시 같이 움직인다.(보안에 취약한 이유) 세션이 브라우저 단위로 생성되어 브라우저 종료시 사라지는데 반해, 쿠키는 유효시간을 설정이 가능하다. (유효시간 미지정시 브라우저를 종료할때 같이 사라짐) • 세션 서버에 저장되어 서버에 부담이 있고, 서버 다주화에 불리하지만, 보안에 유리하다. 세션의..

Login 기능 구현

[Mapper XML 작성, DTO 작성, DAO 작성] - Register 기능 구현에 작성 2022.08.02 - [Spring 프로젝트(dsBBS)] - Register 기능 구현 Register 기능 구현 먼저 mysql에서 작성한 DB 데이터를 dataSource bean에 가져오기 위해 다음 코드를 root-context.xml에 추가하였다. 또한 dataSource를 사용하기 사용하기 위해 sqlSessionFactory bean 객체를 mybatis-config.xml.. snorlax1106.tistory.com [Service 작성 & 테스트] - 추가 @Transactional(rollbackFor = Exception.class) publ..

Register 기능 구현

먼저 mysql에서 작성한 DB 데이터를 dataSource bean에 가져오기 위해 다음 코드를 root-context.xml에 추가하였다. 또한 dataSource를 사용하기 사용하기 위해 sqlSessionFactory bean 객체를 mybatis-config.xml와 mapper.xml을 참조하여 생성 후 sqlSession 객체를 생성한다. "sqlSessionFactory" : SqlSession을 생성한다. "sqlSession" : 핵심적인 역할을 하는 클래스로서 SQL 실행이다 트랙잭션 관리를 실행한다. SqlSession 오브젝트는 Thread-Safe 하지 않으므로 thread마다 필요에 따라 생성한다. [Mapper XML 작성] Mapper.xml에서 사용할 alias(별명)을 ..

데이터베이스 구축

먼저 데이터베이스 스키마를 구축했다. User에 정보를 저장할 User테이블, 게시판의 정보를 저장할 board테이블, 댓글의 정보를 저장할 comment테이블이다. board의 writer와 comment의 commenter key는 데이터에 없는 id가 들어가면 안되므로 Forein Key로 만들어 User 테이블의 id에 종속하도록 하였다. comment 테이블에 bno 또한 같은 이유로 board 테이블에 bno에 종속하도록 Forein Key로 만들어 주었다. User Board Comment id User ID bno Board 번호 cno 댓글 번호 pwd User Password title 제목 bno Board 번호 name User Name content 게시물 내용 pcno 부모 댓글..

Spring 프로젝트 (dsBBS) 시작

https://github.com/Jeongyounghyeon/dsBBS GitHub - Jeongyounghyeon/dsBBS Contribute to Jeongyounghyeon/dsBBS development by creating an account on GitHub. github.com Spring 강의에서 배웠던 내용을 바탕으로 Spring 기능들이 포함된 학과 게시판을 만들어보려 한다. 기본적인 파일 셋팅은 STS와 IntelliJ, 강의를 바탕으로 MVC 기법을 활용하여 구현하려 한다. 기능 구현을 중점으로 프로젝트를 진행하기에 앞서 순서는 다음의 순서로 진행할 예정이다. 1. DB테이블 생성 2. Mapper XML 작성 3. DAO 작성 & 테스트 4. Service 작성 & 테스트 5...