public List<BoardModel> selectList(BoardModel boardModel) {
		int pageNum = Integer.parseInt(boardModel.getPageNum());
		int listCount = boardModel.getListCount();
		String searchType = boardModel.getSearchType();
		String searchText = boardModel.getSearchText();
		String whereSQL = "";
		List<BoardModel> boardList = null;
		try {
			// 검색어 쿼리문 생성
			if (!"".equals(searchText)) {
				if ("ALL".equals(searchType)) {
					whereSQL = " WHERE SUBJECT LIKE CONCAT('%',?,'%') OR WRITER LIKE CONCAT('%',?,'%') OR CONTENTS LIKE CONCAT('%',?,'%') ";
				} else if ("SUBJECT".equals(searchType)) {
					whereSQL = " WHERE SUBJECT LIKE CONCAT('%',?,'%') ";
				} else if ("WRITER".equals(searchType)) {
					whereSQL = " WHERE WRITER LIKE CONCAT('%',?,'%') ";
				} else if ("CONTENTS".equals(searchType)) {
					whereSQL = " WHERE CONTENTS LIKE CONCAT('%',?,'%') ";
				}
			}
			// 데이터베이스 객체 생성
			Class.forName(this.JDBC_DRIVER);
			this.conn = DriverManager.getConnection(this.DB_URL, this.DB_ID, this.DB_PWD);
			// 게시물 목록 조회
			this.pstmt = this.conn.prepareStatement("SELECT NUM, SUBJECT, WRITER, REG_DATE, HIT FROM BOARD "+whereSQL+" ORDER BY NUM DESC LIMIT ?, ?");
			if (!"".equals(whereSQL)) {
				// 전체검색일시
				if ("ALL".equals(searchType)) {
					this.pstmt.setString(1, searchText);
					this.pstmt.setString(2, searchText);
					this.pstmt.setString(3, searchText);
					this.pstmt.setInt(4, listCount * (pageNum-1));
					this.pstmt.setInt(5, listCount);			
				} else {
					this.pstmt.setString(1, searchText);
					this.pstmt.setInt(2, listCount * (pageNum-1));
					this.pstmt.setInt(3, listCount);			
				}
			} else {	
				this.pstmt.setInt(1, listCount * (pageNum-1));
				this.pstmt.setInt(2, listCount);
			}
			// 조회
			this.rs = this.pstmt.executeQuery();
			boardList = new ArrayList<BoardModel>();
			// LIST 객체에 담음
			while(this.rs.next()) {
				boardModel = new BoardModel();
				boardModel.setNum(this.rs.getInt("NUM"));
				boardModel.setSubject(this.rs.getString("SUBJECT"));
				boardModel.setWriter(this.rs.getString("WRITER"));
				boardModel.setHit(this.rs.getInt("HIT"));
				boardModel.setRegDate(this.rs.getString("REG_DATE"));
				boardList.add(boardModel);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			// 사용한 객체 종료
			close(this.rs, this.pstmt, this.conn);
		}
		return boardList;
	}