목록코드 정리 (19)
느림보 개발

구현할 기능 : 게시글 수정 및 삭제 전체 흐름 : 게시글 상세 페이지에서 수정, 삭제 기능을 사용할 수 있도록 버튼 생성 후 수정, 삭제에 맞는 로직 작성 수정 같은 경우 → 수정 페이지를 따로 생성하여 원래의 글을 출력하고 그 공간에서 수정할 수 있도록 함 jsp ▶ 글 상세페이지 - 글수정, 글 삭제 버튼 - 파라미터로 dno를 넘겨준다. → 컨트롤러는 dno값을 통해 수정할 글을 불러오게 한다. 수정 삭제 ▶ 글수정 페이지 - 매핑한 주소로 POST 요청 - POST요청이므로 CSRF 토큰을 hidden으로 같이 전송 - 게시글 상세 조회시 dno를 따로 출력하지 않았기 때문에 hidden 으로 심는다. .. 생략 .. .. 생략 .. ▶글 삭제 - 게시글 상세페이지에서 바로 처리되도록 하였다. ..

구현할 기능 : 게시글 목록 조회 및 상세페이지 전체 흐름 : 게시글 목록 구현 후 → 게시글 상세 페이지 구현 Controller ▶ 게시글 목록 조회 - 게시글 목록페이지를 매핑한다. - 스프링 시큐리티가 제공하는 Principal 객체를 사용해서 접속한 사용자의 아이디를 String에 저장한다. - 저장한 아이디를 가지고 boardList를 보여줄 서비스 로직을 시행한다. - 데이터베이스에서 가져온 결과를 Model 객체에 담아 JSP 페이지로 보낸다. ▶ 게시글 상세 - 게시글 상세페이지를 매핑한다. - url 을 통해 게시글 번호(dno)를 파라미터로 넘겨 받는다. - 넘겨 받은 dno를 통해 게시글 상세페이지를 보여줄 서비스 로직을 실행한다. - 데이터베이스에서 가져온 결과를 Model 객체에..

구현할 기능 : 게시글 작성 jsp - 글을 작성할 수 있는 form 을 만든다. - 스프링시큐리티가 적용되어 POST 요청시에는 csrf 토큰을 함께 전송해준다. .. 생략 .. .. 생략 .. Controller - 컨트롤러에서 url 매핑을 한다. - get방식의 url 요청이 들어왔다면 mydiarywrite.jsp 뷰 페이지를 보여준다. - post 방식의 url 요청이 들어왔다면 service 비지니스 로직을 실행한다. - post 요청 수행 후 게시글 목록 페이지로 이동 @RequestMapping("/board/*") @Controller public class BoardController { @Autowired private BoardService service; // 글 작성 GET @..

구현할 기능 : 버튼을 눌렀을 경우, 자신의 현재 위치를 데이터 베이스에 저장한다. 사용한 API : geolocation, 카카오 지도 API 전체적인 흐름 : gelocation을 통해 사용자가 위치하고 있는 위,경도 좌표를 얻은 후 → 카카오 지도 API를 통해 한글주소로 변환 후 → Ajax통신을 통해 데이터베이스에 반영하도록 한다. ▼ geolocation 시 참고사항 크롬 50버전 이후에서는 보안적 이슈로 인해 geolocation은 https 환경 또는 로컬환경에서만 작동됩니다. 웹 브라우저 크롬, 사파리 등이 사용자의 위치 정보를 수집하는 것도 개인정보를 수집하는 것으로 분류하기 때문에 https 환경에서만 작동 가능하게 하였습니다. JSP - 나의 정보 저장하기 버튼을 눌렸을 때 실행되는..

Controller - 찜목록에 대한 요청을 처리하기 위한 컨트롤러를 매핑한다. - session에 있는 사용자 아이디를 String user_id로 저장하여, 사용자의 찜목록의 개수를 세는 로직을 실행하여 likeListCnt에 저장한다. - PageMakerVO 객체 생성하여 setVo에 PageVO에 기본 값을 세팅하고, setTotalCnt에 DB에서 얻어온 값을 세팅한다. - 참조변수 pm을 model객체에 담아 view로 보낸다. - pm와 user_id를 가지고 likeList 찜목록들을 얻어오는 로직을 실행하여 model 객체에 담아 view로 보낸다. @RequestMapping(value="/likeListAll", method=RequestMethod.GET) public void l..

security-context CommonController @GetMapping("/logout") public void loggoutGet() { log.info("loggoutGet() - 로그아웃 실행"); } jsp - post형식으로 요청하므로 hidden으로 csrf 를 사용해준다. 로그아웃

CustomLoginSuccessHandler - 로그인 후 권한에 따라서 이동할 페이지 설정해주기 package com.ddd.security; import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.security.authenticati..

1. 가상주소 매핑 BoardController System.out.println("\n 2. 가상주소 매핑 -시작 "); //2. 가상주소 매핑 ----------------------------------------------- Actionforward forward = null; // 초기화 if(commands.equals("/BoardWrite.bo")){ // 글쓰기 페이지 보여주기 (DB정보 필요 X) // view 페이지로 바로 이동 forward = new ActionForward(); forward.setPath("./board/writeForm.jsp"); // 어디로 갈거고 forward.setRedirect(false); // 어떤 방식으로 갈건지 } //2. 가상주소 매핑 ---..

😎 블로그 이사겸 JSP 기반 MVC2 모델을 복습겸 포스팅을 작성하려고한다. 시작-! BoardController - HttpServlet을 상속 받아 URL을 이용해서 호출할 수 있도록 한다. - 상속받은 클래스의 메서드를 오버라이드하고, get방식, post방식을 모두 호출할 수 있는 doProcess 메서드를 생성한다. - 가상주소 계산 public class BoardFrontController extends HttpServlet { protected void doProcess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("Get,Po..