www.pudn.com > 200402121144312230.rar > MysqlBoardFactory.java


package net.ijsp.news.news.mysql;

/**
 * 

Title: 栏目相关操作

*

Description:

*

Copyright: Copyright (c) 2003

*

Company: ijsp.net

* @author ccjsmile * @version 1.0 */ import java.util.Iterator; import java.util.ArrayList; import java.sql.ResultSet; import java.sql.SQLException; import net.ijsp.news.news.Factory; import net.ijsp.news.news.BoardFactory; import net.ijsp.news.news.Board; import net.ijsp.news.news.BoardNotFoundException; import net.ijsp.news.database.DBConnect; public class MysqlBoardFactory extends BoardFactory { private ResultSet rs; private final String getMaxIdSQL = "SELECT @@IDENTITY"; /** * 增加栏目 * @param Board 栏目的相关信息 */ public void add(Board board) { DBConnect dbc = null; try{ dbc = new DBConnect(); dbc.prepareStatement(" INSERT INTO class1 (classname,parentid,orders) VALUES (?,?,?) "); dbc.setString(1,board.getBoardname()); dbc.setInt(2,board.getParentID()); dbc.setInt(3,board.getOrders()); dbc.executeUpdate(); if(board.getParentID()==0) { dbc.prepareStatement(getMaxIdSQL); rs = dbc.executeQuery(); int id = 0; if(rs.next()) id = rs.getInt(1); dbc.prepareStatement("UPDATE class1 SET parentid=? WHERE id=?"); dbc.setInt(1,id); dbc.setInt(2,id); dbc.executeUpdate(); } }catch(SQLException se){ System.err.println(se); }finally{ try{ if(dbc!=null) dbc.close(); }catch(Exception e){ System.err.println(e); } } } /** * 删除栏目名 */ public void del(int id) { DBConnect dbc = null; try{ dbc = new DBConnect(); dbc.prepareStatement(" DELETE FROM class1 WHERE id = ? "); dbc.setInt(1,id); dbc.executeUpdate(); }catch(SQLException se){ System.err.println(se); }finally{ try{ if(dbc!=null) dbc.close(); }catch(Exception e){ System.err.println(e); } } } /** * 编辑栏目 */ public void edit(Board board) { DBConnect dbc = null; try{ dbc = new DBConnect(); dbc.prepareStatement("UPDATE class1 SET classname=?,parentid=? WHERE id = ? "); dbc.setString(1,board.getBoardname()); dbc.setInt(2,board.getParentID()); // dbc.setInt(3,board.getOrders()); dbc.setInt(3,board.getID()); dbc.executeUpdate(); }catch(SQLException se){ System.err.println(se); }finally{ try{ if(dbc!=null) dbc.close(); }catch(Exception e){ System.err.println(e); } } } /** * 显示所栏目 */ public Iterator list() { ArrayList arrayList = new ArrayList(); DBConnect dbc = null; try{ dbc = new DBConnect(); dbc.prepareStatement("SELECT id,classname,parentid,orders FROM class1 ORDER BY parentid,orders,id "); rs = dbc.executeQuery(); while(rs.next()) { Board board = Factory.getInstance().getBoard(); board.setID(rs.getInt(1)); board.setBoardname(rs.getString(2)); board.setParentID(rs.getInt(3)); board.setOrders(rs.getInt(4)); arrayList.add(board); } }catch(SQLException se){ System.err.println(se); }finally{ try{ if(dbc!=null) dbc.close(); }catch(Exception e){ System.err.println(e); } } return arrayList.iterator(); } /** * 显示指定栏目信息 */ public Board board(int id) throws BoardNotFoundException { Board board = Factory.getInstance().getBoard(); DBConnect dbc = null; try{ dbc = new DBConnect(); dbc.prepareStatement("SELECT id,classname,parentid,orders FROM class1 WHERE id=? "); dbc.setInt(1,id); rs = dbc.executeQuery(); if(rs.next()) { board.setID(rs.getInt(1)); board.setBoardname(rs.getString(2)); board.setParentID(rs.getInt(3)); board.setOrders(rs.getInt(4)); }else throw new BoardNotFoundException(); }catch(SQLException se){ System.err.println(se); }finally{ try{ if(dbc!=null) dbc.close(); }catch(Exception e){ System.err.println(e); } } return board; } }