목록분류 전체보기 (208)
YJ의 새벽
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cq166e/btserfol1cE/oYWsFKdaGDNdnpkgwmdLOK/img.png)
-- 게시글 작성과, 수정이 쿼리파라미터 ( mode-insert / mode-update ) 로 구분된다. -- 일단 먼저, 글쓰기 버튼을 눌렀을때, 받는 주소를 연결해주자. ( 글목록 글쓰기 버튼 ) -- 수정 버튼 눌렀을때, 받는 주소 수정. ( 글목록 타이틀 클릭후 나오는 수정 버튼 ) ---- 수정버튼 누르면, 다시 글쓰기로 ! 이동하는걸 확인하자. ---- BoardController 에서, GetMapping. --- 글쓰기 버튼으로 들어온 글쓰기폼과, 수정하기버튼으로 들어온 글수정폼을 하나의 컨트롤러로 맵핑해주었다. --- '수정하기' 버튼으로 들어왔다면 ( mode='update' ) 미리 게시글정보를 받아온 service 를 호출하여 데이터를 깔아주자. ( title, image , c..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cFDLEK/btsdECThEDz/6WkaQCuIygVWrHZNQCOdX1/img.png)
--- 페이지 이동을 해보자 . -- boardList.jsp 수정 . --- 넘어가는것을 확인 . ---- 상세 게시글 조회를 해보자 . --- boardList.jsp 에서 경로 설정 . --- BoardController , 컨트롤러 클래스 ---- BoardService . 서비스 클래스 --- BoardDAO . DB접근 클래스 --- board-mapper.xml 쿼리문 작성 . SELECT * FROM BOARD_IMG WHERE BOARD_NO = #{boardNo} ORDER BY IMG_LEVEL SELECT BOARD_NO, BOARD_TITLE, BOARD_CONTENT, TO_CHAR(CREATE_DT, 'YYYY"년" MM"월" DD"일" HH24:MI:SS') CREATE_DT..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Jj74H/btsddTIStYp/Zn6y8aWOpXlCEmVy3iAw90/img.png)
-- interceptors : 인터셉터를 모아둔 태그 , ( servlet-context.xml ) 에작성 -- interceptor : 요청이 Dispatcher Servlet 에서 Controller 에 도달하지 전, 또는 후에 요청 / 응답 객체 (req,resp ) 를 가로채서 사용할 수 있는 객체 . --mapping : 가로챌 요청의 패턴을 지정 --beans:bean : 인터셉터 역할을 수행할 클래스를 찾아서 bean 으로 등록 . -- servlet-context.xml 에 인터셉터 빈 추가 . -- 인터셉터가 요청을 가로채는 시기 1. preHandle ( 전처리 ) : 컨트롤러 수행 전 2. postHandle ( 후처리 ) : 컨트롤러 수행 후 ( 컨트롤러 수행 결과 참조 가능 ) ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/IcBNe/btsdhx53Wa6/DSXbUJfTedW5I6HnbM0mM0/img.png)
---- sql 로그를 띄워보자 . Log4jdbc 라이브러리를 pom.xml 에 추가 . org.lazyluke log4jdbc-remix 0.2.7 --- root-context.xml 에 dataSource 이름을 --> realDataSource 로 바꿔주기. --- root-context.xml 에 dataSource 빈 추가 . --- log4j.xml 파일에 ref 추가 --- log4j.xml 파일에 위에 추가 ----- 서버 실행하면 , 미리 만들어둔 ajax로 인해 콘솔창에 설정한대로 나온다 .
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/TlX0Y/btsdelKeCAc/9Em5kIQgAy9CK4KKk3SfBk/img.png)
---pom.xml 에 파일업로드를 위한 메이븐 추가 commons-fileupload commons-fileupload 1.4 --- root-context.xml 에 파일업로드를 위한 빈 등록, 추가 --- form 을 참고하자. -- 파일명 변경해주는 Util 클래스 추가 . package edu.kh.comm.common; import java.text.SimpleDateFormat; public class Util { // 파일명 변경 메소드 public static String fileRename(String originFileName) { SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); String date = sdf.forma..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lUwgm/btsdcsX9wJ2/X9Ty2hQj5PQWZHjAPgyEQ0/img.png)
---회원 탈퇴시, 세션, 쿠키도 같이 없애보자 . -- MyPageController 컨트롤러 클래스 . ---MyPageService 클래스 . -- 비밀번호 비교위해 --selectEncPw 비밀번호 조회 메서드 -- secession 탈퇴 메서드 --- MyPageDAO 클래스 . DB접근 클래스 . --- myPage-mapper.xml sql 문
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/r6qWZ/btsdcKRRxqJ/bpELjdkheBYNEXJZvKMmi1/img.png)
--- jsp 를 참고하여 , 암호화된 비밀번호를 바꿔보자 . ----- MyPageController 컨트롤러 클래스 . ---MyPageService , 서비스 클래스 --selectEncPw 메서드와, ( 현재 DB저장된 암호화된 비밀번호를 조회 ) changePw 메서드 ( DB저장된 비밀번호와 비교 후 비밀번호 바꾸기 ) ---MyPageDAO . DB 접근 클래스 --- myPage-mapper.xml sql 문 작성.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cMjsO4/btsdbPxDDiU/3aZDl9x6T1pku16ZYKNkz0/img.png)
--- myPage 들어가기 전 맵핑하는 xml 하나 만들어주자. --- mybatis-config.xml 에서 맵핑. -- 정보수정에 필요한 값 -닉네임 -전화번호 -주소 -회원번호 ( Session --> 로그인한 회원정보 통해서 얻어오기 ) --> @SessionAttributes , @ModelAttribute 필요 @SessionAttributes - -Model에 세팅된 데이터의 Key와 @SessionAttributes 에 작성된 Key가 같으면 Model 세팅된 데이터를 request --> session scope 로 이동. -- 기존에 session scope 에 이동시킨 값을 얻어오는 역할 :: ex ) @ModelAttribute("loginMember") Member loginMe..