본문 바로가기

프로젝트39

8. 사용자의 입력 데이터 서버에 저장하기 이번 글에서는 이전 글에서 입력받은 사용자의 데이터를 서버에 저장하는 기능을 추가로 구현한다. 가장 먼저, 데이터 전송에 사용할 DTO 객체를 만들어 두자. 앞으로 프로젝트가 발전해 나가면서 우리는 일반 파라미터들 대신 DTO 객체를 받아 올 것이다. @Data @NoArgsConstructor public class PostingDTO { int idx; String title; int user_idx; String content; public PostingDTO (String title, int user_idx, String content) { this.title = title; this.user_idx = user_idx; this.content = content; } public Posting g.. 2023. 8. 31.
7. MVC 구현 뷰 생성 가장 먼저, 기본 기능인 게시글 작성, 조회에 사용할 view를 먼저 작성해 보자. 제목 : 내용 : 태그에서 사용자에게 데이터를 입력 받는다. 제목 : 내용 : 각각의 게시글 뷰에서는 서버에서 전달해 준 `response`의 필드 값들을 사용해 뷰를 구성한다. 컨트롤러 생성 다음으로는, jsp의 데이터 전송 요청을 처리해 주고, 적절한 뷰를 반환해 주는 컨트롤러를 생성하자. @RequestMapping("/post") @Controller public class PostingController { @GetMapping public String createView(){ return "view/posting/writePosting"; } @PostMapping public ModelAndView .. 2023. 8. 20.
6. 유저 CRUD 구현 및 테스트 데이터 삭제 유저 관련 기능은 앞서 만들어 뒀던 DAOContext의 기능을 그대로 가져다 쓸 것이기 때문에 코드만 올려 둔다. @Repository public class UserDAO { //daoContext 선언 및 주입 Function userMapper = rs ->{ User user = null; try { user = new User(); user.setId(rs.getString("id")); user.setPassword(rs.getString("password")); user.setIdx(rs.getInt("idx")); } catch (SQLException e) { e.printStackTrace(); } return user; }; public void save(User user) thro.. 2023. 8. 13.
5. 블로그 글 수정, 삭제 기능 수정 기능 이번엔 글 수정 기능을 구현해 보자. 글을 수정할 때는 원래의 포스팅의 idx값을 그대로 써야 한다는 점을 잊지 말자. 물론, 글을 수정할 떄는 사용자 정보 또한 바뀌면 안되기에 해당 부분을 확인해 주면 더 좋다. 일단 지금은 최소한의 글을 수정하기 위한 기능들만 작성해 보자. 먼저, PostingDAO에서 직접 Connection을 가지고 와 구현을 해 본다. public void update(Posting posting){ try (Connection conn = DriverManager.getConnection(url, userName, password)) { PreparedStatement ps = conn.prepareStatement( "update posting set title .. 2023. 8. 13.