java
-
MyWebSPRING 2022. 2. 18. 16:22
snsboard에 글 등록하기부터 진행했다 snsList.jsp에서 $(function() { //등록하기 버튼 클릭 이벤트 $('#uploadBtn').click(function() { regist(); }); //등록을 담당하는 함수 function regist() { //세션에서 현재 로그인 중인 사용자 정보(아이디)를 얻어옵니다. const user_id = '${sessionScope.login.userId}'; //자바스크립트의 파일 확장자 체크 검색합니다. let file = $('#file').val(); console.log(user_id); console.log(file); //.을 제거한 확장자만 얻어낸 후에 그것을 소문자로 일괄 변경합니다. file = file.slice(file...
-
MyWebSPRING 2022. 2. 17. 18:55
snsboard에 파일 업로드, 글 등록까지! boardauthhandler (interceptor) 화면에서 변경, 수정, 삭제가 일어날 때, writer값을 넘겨주도록 처리합니다. 게시글 수정, 삭제에 대한 권한 처리 핸들러입니다. 세션값과 writer(작성자) 정보가 같다면 컨트롤러를 실행하고, 그렇지 않다면 '권한이 없습니다.' 경고창 출력 후 뒤로가기. 권한이 없습니다 경고창은 jsp에서 했었던 PrintWriter 객체를 이용합니다. PrintWriter 객체는 response 객체에게 받아 옵니다. @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) ..
-
MyWebSPRING 2022. 2. 17. 00:51
이메일에 인증번호를 전송 let code = ''; //이메일 전송 인증번호 저장을 위한 변수 //아이디 중복 체크 $('#idCheckBtn').click(function(){ if($('#userId').val() === ''){ alert('아이디는 필수값입니다.'); return; } }); 아이디값을 받아와서 비동기 통신을 통해 서버와 통신하고 중복되었다면 '중복된 아이디입니다.', 아니라면 '사용 가능한 아이디입니다' 라고 화면에 띄울 것입니다. attr()를 이용해서 readonly 속성을 true를 주어서 작성하지 못하도록 합니다. const userId = $('#userId').val(); $.ajax({ type: 'post', url: '' data: userId, contentTy..
-
MyWebSPRING 2022. 2. 15. 11:14
댓글 등록 구현.. 자꾸 댓글 할 때마다 복잡해져서 어디다 댓글 달지 말아야지.. 생각하게 된다.. public interface IReplyService { void replyRegist(ReplyVO vo); List getList(PageVO vo, int bno); int getTotal(int bno); int pwCheck(ReplyVO vo); void update(ReplyVO vo); void delete(int rno); 댓글은 상세 페이지를 클릭했을 때 달 수 있는 거기 때문에..~ Detail로 와서 script를 작성해 줍니다. $(document).ready(function() { $('#replyRegist').click(function() { const bno = '${art..
-
springwebmvcprojectSPRING 2022. 2. 10. 14:45
자동로그인! 체크 박스까지 만들어서 시작해 볼까요~ //자동 로그인 쿠키값 DB저장 처리 //SQL => UPDATE void keepLogin(Map datas); //세션 아이디를 통한 회원 정보 조회 기능 /* 자동 로그인 하고 싶다는 사람에게 쿠키 (세션 id)를 주었습니다. 그리고 그 유저가 나중에 사이트에 다시 방문했다면, 서버에 다시 요청을 보낼 것이고, 요청과 함께 쿠키가 전달될 것입니다. 쿠키 안에 들어 있는 세션 id로 회원 정보를 조회해서 마치 이 사람이 로그인 중인 것처럼 세션 데이터를 만들어 주면 됩니다. (login이라는 세션 데이터 -> 로그인 중이라는 징표) */ UserVO getUserWithSessionId(String sessionId); 회원가입이 되는지 테스트! @..
-
springwebmvcprojectSPRING 2022. 2. 9. 22:29
//start jQuery $(function() { //각 입력값들의 유효성 검증을 위한 정규표현식을 변수로 선언. const getIdCheck = RegExp(/^[a-zA-Z0-9]{4,14}$/); const getPwCheck = RegExp(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/); const getNameCheck = RegExp(/^[가-힣]+$/); //입력값 중 하나라도 만족하지 못한다면 회원가입 처리를 막기 위한 논리형 변수를 선언. let chk1 = false, chk2 = false, chk3 = false, chk4 = false; //회원 가입 시 사용자의 입력값을 검증하..
-
springwebmvcprojectSPRING 2022. 2. 8. 12:33
페이징 알고리즘을 게시판에 적용해 봅시다~ 일단 PageVO를 작성 먼저 하고 package com.spring.mvc.board.commons; import lombok.Getter; import lombok.Setter; import lombok.ToString; @Getter @Setter @ToString public class PageVO { private int page; //사용자가 선택한 페이지 번호 private int countPerPage; //사용자가 선택한 한 화면에 보여질 게시물 개수 public PageVO() { this.page = 1; this.countPerPage = 10; } } /* *** 페이징 알고리즘 만들기 *** # 1. 총 게시물의 수를 조회해야 합니다. ..
-
springdbaccess (2)SPRING 2022. 1. 28. 17:44
오늘은 db를 이용해서 게시판을 만드는 수업을 했습니다. JdbcTemplate을 사용하기 위해 maven spring에서 관련 링크를 가져와서 pom.xml에 넣어줍니다. BoardVO부터 만들어 주고.. package com.spring.db.model; public class BoardVO { private int boardNo; private String writer; private String title; private String content; public int getBoardNo() { return boardNo; } public void setBoardNo(int boardNo) { this.boardNo = boardNo; } public String getWriter() { retu..