본문 바로가기
카테고리 없음

[Project] 게시판 DTO, 게시판목록보기

by 321 2021. 2. 7.

2021/02/05 - [코딩 공부/게시판 만들기] - 게시판만들기3-2 기능구현(DTO, DAO)

 

게시판만들기3-2 기능구현(DTO, DAO)

DTO만들기 1. 우리가 sqldeveloper나 sts를 이용할때 exe파일이 아닌 바로가기를 만들어서 사용하는 것 처럼 데이터를 사용할때도 안전하고 분별해서 사용할 수 있도록 DTO라는 클래스를 이용한다. DB

readmeplz.tistory.com

위 글과 같은 방식으로 BoardDTO와 BoardDAO를 구현한다.

 

1.BoardDTO 만들기

private 변수선언 후 `generate getter and setter`

 

결과

`

 

 

 

 

2.DAO에서 게시판 목록보기 구현하기.

소스코드

public ArrayList<BoardDTO> list() {
		ArrayList<BoardDTO> dtos = new ArrayList<BoardDTO>();
		String sql = "select * from webboard";
		try {
			conn = getConnection();
			ps = conn.prepareStatement(sql);
			rs=ps.executeQuery();
			while(rs.next()) {
				BoardDTO dto = new BoardDTO();
				dto.setBid(rs.getInt("bid"));
				dto.setBname(rs.getString("bname"));
				dto.setBtitle(rs.getString("btitle"));
				dto.setBcontent(rs.getString("bcontent"));
				dto.setBdate(rs.getString("bdate"));
				dto.setBhit(rs.getInt("bhit"));
				dto.setBgroup(rs.getInt("bgroup"));
				dto.setBstep(rs.getInt("bstep"));
				dto.setBindent(rs.getInt("bindent"));
				dtos.add(dto);
			}	
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if(rs!=null) rs.close();
				if(ps!=null) ps.close();
				if(conn!=null) conn.close();
			}catch(Exception e) {
				e.printStackTrace();
			}
		}
		return dtos;
	}
	

나머지는 login과 비슷. ArrayList에 담는 내용을 주로 확인하면 된다.

 

3. 서블릿 내용만들기

4. board.jsp에 태그라이브러리추가하기

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

 

 

 

큰 그림을 보면 자료명과 코드 내용은 이렇게 흘러간다.

 

 

 

4번 과정에 답글띄어쓰기 기능을 추가한다. 

띄어쓰기 추가
ㄴ모양추가

 

  • 서블릿주소를 servlet이라는 뜻의 board.se로 했지만 나중에 *. do로 바꾼다.
  • board.jsp에서 폼액션이 boardView.jsp로 가면서 제목을 클릭하면 글 내용을 볼 수 있게 한다. 
  • 게시판을 다 만들고 글을 쓰는 것이라서 캡쳐본이 왔다 갔다 한다.
  • dto.setBid(rs.getInt("bid")) 내용에서 만약 DTO를 사용하지 않았다면 String id=rs.getInt(“bid”)일 것이다.