SPRING
-
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. 16:59
게시판 글 등록부터 시작했습니다~! 글 작성 html에 등록 form 양식을 적어주고, 밑에 jsp로 스크립트를 열었습니다. 게시판 글 등록 const $registBtn = document.getElementById('registBtn'); $registBtn.onclick =function(){ if(document.registForm.writer.value === ''){ alert('작성자는 필수 항목입니다.'); document.registForm.writer.focus(); return; //강제 종료 } else if(document.registForm.title.value === ''){ alert('제목은 필수 항목입니다.'); document.registForm.title.focus()..
-
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..
-
mywebprojectSPRING 2022. 2. 11. 17:11
쌤과의 마지막 프로젝트라고 하네요! 이번 프로젝트에서는 일단 댓글 구현부터! 댓글을 구현할 게시판은 전과 동일하게 코드를 작성해 주고, 여러 세팅들을 만져준 다음, replyVO, IReplyService, IReplyMapper를 설정해 줍니다. package com.spring.myweb.reply.mapper; import java.util.List; import java.util.Map; import com.spring.myweb.command.ReplyVO; public interface IReplyMapper { void replyRegist(ReplyVO vo); //댓글 등록 List getList(Map data); //목록 요청 int getTotal(int bno);//댓글 개수 in..
-
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; //회원 가입 시 사용자의 입력값을 검증하..