KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mvnforum > phpbb2mvnforum > db > jdbc > PhpbbGroupDAOImpl


1 package org.mvnforum.phpbb2mvnforum.db.jdbc;
2
3 import java.sql.Connection JavaDoc;
4 import java.sql.PreparedStatement JavaDoc;
5 import java.sql.ResultSet JavaDoc;
6 import java.sql.SQLException JavaDoc;
7 import java.util.ArrayList JavaDoc;
8 import java.util.Collection JavaDoc;
9
10 import net.myvietnam.mvncore.exception.DatabaseException;
11 import net.myvietnam.mvncore.exception.ObjectNotFoundException;
12
13 import org.mvnforum.phpbb2mvnforum.db.PhpbbGroup;
14 import org.mvnforum.phpbb2mvnforum.db.PhpbbGroupDAO;
15 import org.mvnforum.util.DBUtils;
16
17 public class PhpbbGroupDAOImpl implements PhpbbGroupDAO {
18
19     public Collection JavaDoc getBeans()
20         throws DatabaseException {
21         Connection JavaDoc connection = null;
22         PreparedStatement JavaDoc statement = null;
23         ResultSet JavaDoc resultSet = null;
24         Collection JavaDoc retValue = new ArrayList JavaDoc();
25         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
26         sql.append("SELECT group_id, group_type, group_name, group_description, group_moderator, group_single_user");
27         sql.append(" FROM " + TABLE_NAME);
28         //sql.append(" WHERE "); // @todo: uncomment as needed
29
//sql.append(" ORDER BY ColumnName ASC|DESC "); // @todo: uncomment as needed
30
try {
31             connection = DBUtils.getPhpbbConnection();
32             statement = connection.prepareStatement(sql.toString());
33             resultSet = statement.executeQuery();
34             while (resultSet.next()) {
35                 PhpbbGroup bean = new PhpbbGroup();
36                 bean.setgroup_id(resultSet.getInt("group_id"));
37                 bean.setgroup_type(resultSet.getInt("group_type"));
38                 bean.setgroup_name(resultSet.getString("group_name"));
39                 bean.setgroup_description(resultSet.getString("group_description"));
40                 bean.setgroup_moderator(resultSet.getInt("group_moderator"));
41                 bean.setgroup_single_user(resultSet.getInt("group_single_user"));
42                 retValue.add(bean);
43             }
44             return retValue;
45         } catch (SQLException JavaDoc sqle) {
46             throw new DatabaseException("Error executing SQL in phpbb_groupsDAOImplJDBC.getBeans.");
47         } finally {
48             DBUtils.closeResultSet(resultSet);
49             DBUtils.closeStatement(statement);
50             DBUtils.closeConnection(connection);
51         }
52     }
53
54     public PhpbbGroup getBean(int groupID) throws ObjectNotFoundException, DatabaseException {
55             Connection JavaDoc connection = null;
56             PreparedStatement JavaDoc statement = null;
57             ResultSet JavaDoc resultSet = null;
58             StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
59             sql.append("SELECT group_id, group_type, group_name, group_description, group_moderator, group_single_user");
60             sql.append(" FROM " + TABLE_NAME);
61             sql.append(" WHERE group_id = ?");
62             try {
63                 connection = DBUtils.getPhpbbConnection();
64                 statement = connection.prepareStatement(sql.toString());
65                 statement.setInt(1, groupID);
66                 resultSet = statement.executeQuery();
67                 if(!resultSet.next()) {
68                     throw new ObjectNotFoundException("Cannot find the row in table phpbb_groups where primary key = (" + groupID + ").");
69                 }
70
71                 PhpbbGroup bean = new PhpbbGroup();
72                 bean.setgroup_id(resultSet.getInt("group_id"));
73                 bean.setgroup_type(resultSet.getInt("group_type"));
74                 bean.setgroup_name(resultSet.getString("group_name"));
75                 bean.setgroup_description(resultSet.getString("group_description"));
76                 bean.setgroup_moderator(resultSet.getInt("group_moderator"));
77                 bean.setgroup_single_user(resultSet.getInt("group_single_user"));
78                 return bean;
79             } catch(SQLException JavaDoc sqle) {
80                 throw new DatabaseException("Error executing SQL in phpbb_groupsDAOImplJDBC.getBean(pk).");
81             } finally {
82                 DBUtils.closeResultSet(resultSet);
83                 DBUtils.closeStatement(statement);
84                 DBUtils.closeConnection(connection);
85             }
86         }
87
88     public PhpbbGroup getTruthGroup(int groupID)
89         throws ObjectNotFoundException, DatabaseException {
90         Connection JavaDoc connection = null;
91         PreparedStatement JavaDoc statement = null;
92         ResultSet JavaDoc resultSet = null;
93         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
94         sql.append("SELECT group_id, group_type, group_name, group_description, group_moderator, group_single_user");
95         sql.append(" FROM " + TABLE_NAME);
96         sql.append(" WHERE group_id=? and group_single_user=?");
97         try {
98             connection = DBUtils.getPhpbbConnection();
99             statement = connection.prepareStatement(sql.toString());
100             statement.setInt(1, groupID);
101             statement.setInt(2, 0);
102             resultSet = statement.executeQuery();
103             if(!resultSet.next()) {
104                 //throw new ObjectNotFoundException("Cannot find the row in table phpbb_groups where primary key = (" + groupID + ").");
105
return null;
106             }
107
108             PhpbbGroup bean = new PhpbbGroup();
109             bean.setgroup_id(resultSet.getInt("group_id"));
110             bean.setgroup_type(resultSet.getInt("group_type"));
111             bean.setgroup_name(resultSet.getString("group_name"));
112             bean.setgroup_description(resultSet.getString("group_description"));
113             bean.setgroup_moderator(resultSet.getInt("group_moderator"));
114             bean.setgroup_single_user(resultSet.getInt("group_single_user"));
115             return bean;
116         } catch(SQLException JavaDoc sqle) {
117             throw new DatabaseException("Error executing SQL in phpbb_groupsDAOImplJDBC.getBean(pk).");
118         } finally {
119             DBUtils.closeResultSet(resultSet);
120             DBUtils.closeStatement(statement);
121             DBUtils.closeConnection(connection);
122         }
123
124     }
125 }
126
Popular Tags