KickJava   Java API By Example, From Geeks To Geeks.

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


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.CreateException;
11 import net.myvietnam.mvncore.exception.DatabaseException;
12 import net.myvietnam.mvncore.exception.DuplicateKeyException;
13 import net.myvietnam.mvncore.exception.ObjectNotFoundException;
14
15 import org.mvnforum.util.DBUtils;
16
17 import com.mvnforum.db.RankBean;
18 import com.mvnforum.db.RankDAO;
19
20 public class RankDAOImplJDBC implements RankDAO{
21
22     public void findByAlternateKey_RankTitle(String JavaDoc rankTitle)
23         throws ObjectNotFoundException, DatabaseException {
24         // TODO Auto-generated method stub
25
Connection JavaDoc connection = null;
26         PreparedStatement JavaDoc statement = null;
27         ResultSet JavaDoc resultSet = null;
28         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
29         sql.append("SELECT RankMinPosts");
30         sql.append(" FROM " + TABLE_NAME);
31         sql.append(" WHERE RankTitle = ?");
32         try {
33             connection = DBUtils.getMvnConnection();
34             statement = connection.prepareStatement(sql.toString());
35             statement.setString(1, rankTitle);
36             resultSet = statement.executeQuery();
37             if (!resultSet.next()) {
38                 throw new ObjectNotFoundException("Cannot find the alternate key [RankTitle] (" + rankTitle + ") in table 'Rank'.");
39             }
40         } catch(SQLException JavaDoc sqle) {
41             sqle.printStackTrace();
42             throw new DatabaseException("Error executing SQL in RankDAOImplJDBC.findByAlternateKey_RankTitle.");
43         } finally {
44             DBUtils.closeResultSet(resultSet);
45             DBUtils.closeStatement(statement);
46             DBUtils.closeConnection(connection);
47         }
48         
49     }
50
51     public void findByAlternateKey_RankMinPosts(int rankMinPosts)
52         throws ObjectNotFoundException, DatabaseException {
53
54         Connection JavaDoc connection = null;
55         PreparedStatement JavaDoc statement = null;
56         ResultSet JavaDoc resultSet = null;
57         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
58         sql.append("SELECT RankTitle");
59         sql.append(" FROM " + TABLE_NAME);
60         sql.append(" WHERE RankMinPosts = ?");
61         try {
62             connection = DBUtils.getMvnConnection();
63             statement = connection.prepareStatement(sql.toString());
64             statement.setInt(1, rankMinPosts);
65             resultSet = statement.executeQuery();
66             if (!resultSet.next()) {
67                 throw new ObjectNotFoundException("Cannot find the alternate key [RankMinPosts] (" + rankMinPosts + ") in table 'Rank'.");
68             }
69         } catch(SQLException JavaDoc sqle) {
70             throw new DatabaseException("Error executing SQL in RankDAOImplJDBC.findByAlternateKey_RankMinPosts.");
71         } finally {
72             DBUtils.closeResultSet(resultSet);
73             DBUtils.closeStatement(statement);
74             DBUtils.closeConnection(connection);
75         }
76     }
77
78     public void create(int rankMinPosts, int rankLevel, String JavaDoc rankTitle, String JavaDoc rankImage, int rankType, int rankOption)
79         throws CreateException, DatabaseException, DuplicateKeyException {
80
81         // @todo: Comment this try-catch block if the needed columns dont have attribute 'include'
82
// If this is the case, then it is highly recommended that you regenerate this method with the attribute 'include' turned on
83
try {
84             //Check if alternate key already exists
85
findByAlternateKey_RankTitle(rankTitle);
86             //If so, then we have to throw an exception
87
throw new DuplicateKeyException("Alternate key already exists. Cannot create new Rank with the same [RankTitle] (" + rankTitle + ").");
88         } catch(ObjectNotFoundException e) {
89             //Otherwise we can go ahead
90
}
91
92         // @todo: Comment this try-catch block if the needed columns dont have attribute 'include'
93
// If this is the case, then it is highly recommended that you regenerate this method with the attribute 'include' turned on
94
try {
95             //Check if alternate key already exists
96
findByAlternateKey_RankMinPosts(rankMinPosts);
97             //If so, then we have to throw an exception
98
throw new DuplicateKeyException("Alternate key already exists. Cannot create new Rank with the same [RankMinPosts] (" + rankMinPosts + ").");
99         } catch(ObjectNotFoundException e) {
100             //Otherwise we can go ahead
101
}
102
103         Connection JavaDoc connection = null;
104         PreparedStatement JavaDoc statement = null;
105         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
106         sql.append("INSERT INTO " + TABLE_NAME + " (RankMinPosts, RankLevel, RankTitle, RankImage, RankType, RankOption)");
107         sql.append(" VALUES (?, ?, ?, ?, ?, ?)");
108         try {
109             connection = DBUtils.getMvnConnection();
110             statement = connection.prepareStatement(sql.toString());
111
112             statement.setInt(1, rankMinPosts);
113             statement.setInt(2, rankLevel);
114             statement.setString(3, rankTitle);
115             statement.setString(4, rankImage);
116             statement.setInt(5, rankType);
117             statement.setInt(6, rankOption);
118
119             if (statement.executeUpdate() != 1) {
120                 throw new CreateException("Error adding a row into table 'Rank'.");
121             }
122         } catch(SQLException JavaDoc sqle) {
123             throw new DatabaseException("Error executing SQL in RankDAOImplJDBC.create.");
124         } finally {
125             DBUtils.closeStatement(statement);
126             DBUtils.closeConnection(connection);
127         }
128     }
129
130     public void update(int rankID, int rankMinPosts, int rankLevel, String JavaDoc rankTitle, String JavaDoc rankImage, int rankType, int rankOption)
131         throws ObjectNotFoundException, DatabaseException, DuplicateKeyException {
132         // TODO Auto-generated method stub
133

134     }
135
136     public void delete(int rankID)
137         throws DatabaseException, ObjectNotFoundException {
138         // TODO Auto-generated method stub
139

140     }
141
142     public RankBean getRank(int rankID)
143         throws ObjectNotFoundException, DatabaseException {
144         return null;
145     }
146
147     public Collection JavaDoc getRanks()
148         throws DatabaseException {
149         Connection JavaDoc connection = null;
150         PreparedStatement JavaDoc statement = null;
151         ResultSet JavaDoc resultSet = null;
152         Collection JavaDoc retValue = new ArrayList JavaDoc();
153         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
154         sql.append("SELECT RankID, RankMinPosts, RankLevel, RankTitle, RankImage, RankType, RankOption");
155         sql.append(" FROM " + TABLE_NAME);
156         sql.append(" ORDER BY RankMinPosts ASC ");
157         try {
158             connection = DBUtils.getMvnConnection();
159             statement = connection.prepareStatement(sql.toString());
160             resultSet = statement.executeQuery();
161             while (resultSet.next()) {
162                 RankBean bean = new RankBean();
163                 bean.setRankID(resultSet.getInt("RankID"));
164                 bean.setRankMinPosts(resultSet.getInt("RankMinPosts"));
165                 bean.setRankLevel(resultSet.getInt("RankLevel"));
166                 bean.setRankTitle(resultSet.getString("RankTitle"));
167                 bean.setRankImage(resultSet.getString("RankImage"));
168                 bean.setRankType(resultSet.getInt("RankType"));
169                 bean.setRankOption(resultSet.getInt("RankOption"));
170                 retValue.add(bean);
171             }
172             return retValue;
173         } catch(SQLException JavaDoc sqle) {
174             throw new DatabaseException("Error executing SQL in RankDAOImplJDBC.getRanks.");
175         } finally {
176             DBUtils.closeResultSet(resultSet);
177             DBUtils.closeStatement(statement);
178             DBUtils.closeConnection(connection);
179         }
180
181     }
182
183     public int getRankIDFromRankTitle(String JavaDoc rankTitle)
184         throws ObjectNotFoundException, DatabaseException {
185         // TODO Auto-generated method stub
186
return 0;
187     }
188
189 }
190
Popular Tags