본문 바로가기
JSP

JSP DB 회원가입 게시판 쿼리

by code2772 2022. 11. 26.

[ 목차 ]

    728x90
    반응형

    ✔ 게시판 리스트 출력 문

    try {
            String sql = "";
            conn = Dbconn.getConnection();
            // getConnection을 사용하요 sql에 연결하는 기능이다.
            if (conn != null) {
            // 총 게시글의 수를 구하는 쿼리 - idx를 기준으로 count함
            sql = "select count(b_idx) as tot from tb_board";
            pstmt = conn.prepareStatement(sql);
            rs = pstmt.executeQuery();
            // executeQuery는 데이터를 가져와 결과 집합을 반환, select문에서만 실행
            if (rs.next()) {
            tot = rs.getInt("tot");
            }
            // 게시판 목록을 내림차순으로 출력해주는 쿼리문
            sql = "select * from tb_board order by b_idx desc";
            pstmt = conn.prepareStatement(sql);
            rs = pstmt.executeQuery();
            }
            } catch (Exception e) {
            e.printStackTrace();
            }

     

    ✔ 리스트 내용 편집 부분

    try {
            conn = Dbconn.getConnection();
            if (conn != null) {
    
            String sql = "select b_title, b_content from tb_board where b_idx=?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, b_idx);
            rs = pstmt.executeQuery();
    
    
            if(rs.next()){
            b_title = rs.getString("b_title");
            b_content = rs.getString("b_content");
            }
            }
            } catch (Exception e) {
            e.printStackTrace();
            }

     

    ✔ 리스트 수정 업데이트 부분

    try {
            conn = Dbconn.getConnection();
            if (conn != null) {
            // 글 쓰기 내용을 수정하는 쿼리문이다.
            String  sql = "update tb_board set b_title=?, b_content=?, b_userid=?, b_name=? where b_idx =?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, b_title);
            pstmt.setString(2, b_content);
            pstmt.setString(3, userid);
            pstmt.setString(4, name);
            pstmt.setString(5, b_idx);
            pstmt.executeUpdate();
            // executeUpdate는 추가, 삭제, 수정하는 sql문을 실행한다. 
    
    
            }

     

    ✔ 리스트 삭제부분

    try {
            conn = Dbconn.getConnection();
            if (conn != null) {
            /*     http://localhost:9090/Day4/board/delete_ok.jsp?b_idx=8  URL로 삭제하는 방법*/
            String sql = "delete from tb_board where b_idx =? and b_userid=?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, b_idx);
            pstmt.setString(2, userid);
            pstmt.executeUpdate();
    
            }
            } catch (Exception e) {
            e.printStackTrace();
            }

     

    ✔ 게시판 좋아요 부분

    try {
            conn = Dbconn.getConnection();
            if (conn != null) {
            // 좋아요 부분 중복제거 등
            String  sql = "update tb_board set b_like = b_like +1 where b_idx =?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, b_idx);
            pstmt.executeUpdate();
    
            sql = "select b_like from  tb_board where b_idx=?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, b_idx);
            pstmt.execute();
            rs =pstmt.executeQuery();
    
    
            if(rs.next()){
            b_like = rs.getInt("b_like");
            }
    
    
            }
            } catch (Exception e) {
            e.printStackTrace();
            }

     

    ✔ 게시판 조회수 부분

    try {
            conn = Dbconn.getConnection();
            if (conn != null) {
    
            String sql = "update tb_board set b_hit = b_hit +1 where b_idx =?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, b_idx);
            pstmt.executeUpdate();
    
            sql = "select * from  tb_board where b_idx=?";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, b_idx);
            rs = pstmt.executeQuery();
    
    
    
            if (rs.next()) {
            b_userid = rs.getString("b_userid");
            b_name = rs.getString("b_name");
            b_title = rs.getString("b_title");
            b_content = rs.getString("b_content");
            b_regdate = rs.getString("b_regdate");
            b_hit = rs.getInt("b_hit");
            b_like = rs.getInt("b_like");
            }
    
            }
            } catch (Exception e) {
            e.printStackTrace();
            }
            %>

     

    ✔ 게시판 글쓰기 부분

    try {
            conn = Dbconn.getConnection();
            if (conn != null) {
            String sql = "insert into tb_board(b_userid,  b_name, b_title, b_content)values(?,?,?,?)";
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, userid);
            pstmt.setString(2, name);
            pstmt.setString(3, b_title);
            pstmt.setString(4, b_content);
            pstmt.executeUpdate();
            }
    
            } catch (Exception e) {
            e.printStackTrace();
            }
    반응형