KickJava   Java API By Example, From Geeks To Geeks.

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


1 package org.mvnforum.phpbb2mvnforum.db.jdbc;
2
3 import java.sql.Connection JavaDoc;
4 import java.sql.Date JavaDoc;
5 import java.sql.PreparedStatement JavaDoc;
6 import java.sql.ResultSet JavaDoc;
7 import java.sql.SQLException JavaDoc;
8 import java.sql.Timestamp 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.phpbb2mvnforum.db.MemberDAO;
16 import org.mvnforum.util.DBUtils;
17
18 import com.mvnforum.db.MemberBean;
19
20 public class MemberDAOImpl implements MemberDAO{
21
22     public void findByPrimaryKey(int memberID)
23         throws ObjectNotFoundException, DatabaseException {
24
25         Connection JavaDoc connection = null;
26         PreparedStatement JavaDoc statement = null;
27         ResultSet JavaDoc resultSet = null;
28
29         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
30         sql.append("SELECT MemberID");
31         sql.append(" FROM " + TABLE_NAME);
32         sql.append(" WHERE MemberID = ?");
33
34         try {
35             connection = DBUtils.getMvnConnection();
36             statement = connection.prepareStatement(sql.toString());
37             statement.setInt(1, memberID);
38             resultSet = statement.executeQuery();
39             if (!resultSet.next()) {
40                 throw new ObjectNotFoundException("Cannot find the primary key (" + memberID + ") in table 'Member'.");
41             }
42         } catch (SQLException JavaDoc sqle) {
43             throw new DatabaseException("Error executing SQL in MemberDAOImplJDBC.findByPrimaryKey.");
44         } finally {
45             DBUtils.closeResultSet(resultSet);
46             DBUtils.closeStatement(statement);
47             DBUtils.closeConnection(connection);
48         }
49     }
50
51     public void findByPrimaryKey2(int memberID, String JavaDoc memberName)
52         throws ObjectNotFoundException, DatabaseException {
53         // TODO Auto-generated method stub
54
}
55
56     public void findByAlternateKey_MemberEmail(String JavaDoc memberEmail)
57         throws ObjectNotFoundException, DatabaseException {
58
59         Connection JavaDoc connection = null;
60         PreparedStatement JavaDoc statement = null;
61         ResultSet JavaDoc resultSet = null;
62
63         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
64         sql.append("SELECT MemberEmail");
65         sql.append(" FROM " + TABLE_NAME);
66         sql.append(" WHERE MemberEmail = ?");
67
68         try {
69             connection = DBUtils.getMvnConnection();
70             statement = connection.prepareStatement(sql.toString());
71             statement.setString(1, memberEmail);
72             resultSet = statement.executeQuery();
73
74             if (!resultSet.next()) {
75                 throw new ObjectNotFoundException("Cannot find the alternate key [MemberEmail] (" + memberEmail
76                         + ") in table 'Member'.");
77             }
78         } catch (SQLException JavaDoc sqle) {
79             throw new DatabaseException("Error executing SQL in MemberDAOImplJDBC.findByAlternateKey_MemberEmail.");
80         } finally {
81             DBUtils.closeResultSet(resultSet);
82             DBUtils.closeStatement(statement);
83             DBUtils.closeConnection(connection);
84         }
85     }
86
87     public void findByAlternateKey_MemberName(String JavaDoc memberName)
88         throws ObjectNotFoundException, DatabaseException {
89
90         Connection JavaDoc connection = null;
91         PreparedStatement JavaDoc statement = null;
92         ResultSet JavaDoc resultSet = null;
93
94         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
95         sql.append("SELECT MemberName");
96         sql.append(" FROM " + TABLE_NAME);
97         sql.append(" WHERE MemberName = ?");
98
99         try {
100             connection = DBUtils.getMvnConnection();
101             statement = connection.prepareStatement(sql.toString());
102             statement.setString(1, memberName);
103             resultSet = statement.executeQuery();
104             if (!resultSet.next()) {
105                 throw new ObjectNotFoundException("Cannot find the alternate key [MemberName] (" + memberName
106                         + ") in table 'Member'.");
107             }
108         } catch (SQLException JavaDoc sqle) {
109             throw new DatabaseException("Error executing SQL in MemberDAOImplJDBC.findByAlternateKey_MemberName.");
110         } finally {
111             DBUtils.closeResultSet(resultSet);
112             DBUtils.closeStatement(statement);
113             DBUtils.closeConnection(connection);
114         }
115     }
116
117     public void deleteByPrimaryKey(int memberID)
118         throws DatabaseException {
119         // TODO Auto-generated method stub
120

121     }
122
123     /*
124      * Included columns: MemberID, MemberName, MemberPassword, MemberFirstEmail, MemberEmail,
125      * MemberEmailVisible, MemberNameVisible, MemberFirstIP, MemberLastIP, MemberViewCount,
126      * MemberPostCount, MemberCreationDate, MemberModifiedDate, MemberExpireDate, MemberLastLogon,
127      * MemberOption, MemberStatus, MemberActivateCode, MemberTempPassword, MemberMessageCount,
128      * MemberMessageOption, MemberPostsPerPage, MemberWarnCount, MemberVoteCount, MemberVoteTotalStars,
129      * MemberRewardPoints, MemberTitle, MemberTimeZone, MemberSignature, MemberAvatar,
130      * MemberSkin, MemberLanguage, MemberFirstname, MemberLastname, MemberGender,
131      * MemberBirthday, MemberAddress, MemberCity, MemberState, MemberCountry,
132      * MemberPhone, MemberMobile, MemberFax, MemberCareer, MemberHomepage,
133      * MemberYahoo, MemberAol, MemberIcq, MemberMsn, MemberCoolLink1,
134      * MemberCoolLink2
135      * Excluded columns:
136      */

137     public void create(int memberID, String JavaDoc memberName, String JavaDoc memberPassword,
138                         String JavaDoc memberFirstEmail, String JavaDoc memberEmail, int memberEmailVisible,
139                         int memberNameVisible, String JavaDoc memberFirstIP, String JavaDoc memberLastIP,
140                         int memberViewCount, int memberPostCount, Timestamp JavaDoc memberCreationDate,
141                         Timestamp JavaDoc memberModifiedDate, Timestamp JavaDoc memberExpireDate, Timestamp JavaDoc memberLastLogon,
142                         int memberOption, int memberStatus, String JavaDoc memberActivateCode,
143                         String JavaDoc memberTempPassword, int memberMessageCount, int memberMessageOption,
144                         int memberPostsPerPage, int memberWarnCount, int memberVoteCount,
145                         int memberVoteTotalStars, int memberRewardPoints, String JavaDoc memberTitle,
146                         double memberTimeZone, String JavaDoc memberSignature, String JavaDoc memberAvatar,
147                         String JavaDoc memberSkin, String JavaDoc memberLanguage, String JavaDoc memberFirstname,
148                         String JavaDoc memberLastname, int memberGender, Date JavaDoc memberBirthday,
149                         String JavaDoc memberAddress, String JavaDoc memberCity, String JavaDoc memberState,
150                         String JavaDoc memberCountry, String JavaDoc memberPhone, String JavaDoc memberMobile,
151                         String JavaDoc memberFax, String JavaDoc memberCareer, String JavaDoc memberHomepage,
152                         String JavaDoc memberYahoo, String JavaDoc memberAol, String JavaDoc memberIcq,
153                         String JavaDoc memberMsn, String JavaDoc memberCoolLink1, String JavaDoc memberCoolLink2)
154         throws CreateException, DatabaseException, DuplicateKeyException {
155
156         // @todo: comment this try-catch block if the needed columns dont have attribute 'include'
157
// If this is the case, then it is highly recommended that you regenerate this method with the attribute 'include' turned on
158
// However, if primary key is a auto_increament column, then you can safely delete this block
159
try {
160             //Check if primary key already exists
161
findByPrimaryKey(memberID);
162             //If so, then we have to throw an exception
163
throw new DuplicateKeyException("Primary key already exists. Cannot create new member with the same [MemberID] (" + memberID + ").");
164         } catch(ObjectNotFoundException e) {
165             //Otherwise we can go ahead
166
}
167
168         // @todo: Comment this try-catch block if the needed columns dont have attribute 'include'
169
// If this is the case, then it is highly recommended that you regenerate this method with the attribute 'include' turned on
170
try {
171             //Check if alternate key already exists
172
findByAlternateKey_MemberEmail(memberEmail);
173             //If so, then we have to throw an exception
174
throw new DuplicateKeyException("Alternate key already exists. Cannot create new member with the same [MemberEmail] (" + memberEmail + ").");
175         } catch(ObjectNotFoundException e) {
176             //Otherwise we can go ahead
177
}
178
179         // @todo: Comment this try-catch block if the needed columns dont have attribute 'include'
180
// If this is the case, then it is highly recommended that you regenerate this method with the attribute 'include' turned on
181
try {
182             //Check if alternate key already exists
183
findByAlternateKey_MemberName(memberName);
184             //If so, then we have to throw an exception
185
throw new DuplicateKeyException("Alternate key already exists. Cannot create new member with the same [MemberName] (" + memberName + ").");
186         } catch(ObjectNotFoundException e) {
187             //Otherwise we can go ahead
188
}
189
190         Connection JavaDoc connection = null;
191         PreparedStatement JavaDoc statement = null;
192         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
193         sql.append("INSERT INTO " + TABLE_NAME + " (MemberID, MemberName, MemberPassword, MemberFirstEmail, MemberEmail, MemberEmailVisible, MemberNameVisible, MemberFirstIP, MemberLastIP, MemberViewCount, MemberPostCount, MemberCreationDate, MemberModifiedDate, MemberExpireDate, MemberLastLogon, MemberOption, MemberStatus, MemberActivateCode, MemberTempPassword, MemberMessageCount, MemberMessageOption, MemberPostsPerPage, MemberWarnCount, MemberVoteCount, MemberVoteTotalStars, MemberRewardPoints, MemberTitle, MemberTimeZone, MemberSignature, MemberAvatar, MemberSkin, MemberLanguage, MemberFirstname, MemberLastname, MemberGender, MemberBirthday, MemberAddress, MemberCity, MemberState, MemberCountry, MemberPhone, MemberMobile, MemberFax, MemberCareer, MemberHomepage, MemberYahoo, MemberAol, MemberIcq, MemberMsn, MemberCoolLink1, MemberCoolLink2)");
194         sql.append(" VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
195         try {
196             connection = DBUtils.getMvnConnection();
197             statement = connection.prepareStatement(sql.toString());
198
199             statement.setInt(1, memberID);
200             statement.setString(2, memberName);
201             statement.setString(3, memberPassword);
202             statement.setString(4, memberFirstEmail);
203             statement.setString(5, memberEmail);
204             statement.setInt(6, memberEmailVisible);
205             statement.setInt(7, memberNameVisible);
206             statement.setString(8, memberFirstIP);
207             statement.setString(9, memberLastIP);
208             statement.setInt(10, memberViewCount);
209             statement.setInt(11, memberPostCount);
210             statement.setTimestamp(12, memberCreationDate);
211             statement.setTimestamp(13, memberModifiedDate);
212             statement.setTimestamp(14, memberExpireDate);
213             statement.setTimestamp(15, memberLastLogon);
214             statement.setInt(16, memberOption);
215             statement.setInt(17, memberStatus);
216             statement.setString(18, memberActivateCode);
217             statement.setString(19, memberTempPassword);
218             statement.setInt(20, memberMessageCount);
219             statement.setInt(21, memberMessageOption);
220             statement.setInt(22, memberPostsPerPage);
221             statement.setInt(23, memberWarnCount);
222             statement.setInt(24, memberVoteCount);
223             statement.setInt(25, memberVoteTotalStars);
224             statement.setInt(26, memberRewardPoints);
225             statement.setString(27, memberTitle);
226             statement.setDouble(28, memberTimeZone);
227             statement.setString(29, memberSignature);
228             statement.setString(30, memberAvatar);
229             statement.setString(31, memberSkin);
230             statement.setString(32, memberLanguage);
231             statement.setString(33, memberFirstname);
232             statement.setString(34, memberLastname);
233             statement.setInt(35, memberGender);
234             statement.setDate(36, memberBirthday);
235             statement.setString(37, memberAddress);
236             statement.setString(38, memberCity);
237             statement.setString(39, memberState);
238             statement.setString(40, memberCountry);
239             statement.setString(41, memberPhone);
240             statement.setString(42, memberMobile);
241             statement.setString(43, memberFax);
242             statement.setString(44, memberCareer);
243             statement.setString(45, memberHomepage);
244             statement.setString(46, memberYahoo);
245             statement.setString(47, memberAol);
246             statement.setString(48, memberIcq);
247             statement.setString(49, memberMsn);
248             statement.setString(50, memberCoolLink1);
249             statement.setString(51, memberCoolLink2);
250
251             if (statement.executeUpdate() != 1) {
252                 throw new CreateException("Error adding a row into table 'member'.");
253             }
254         } catch(SQLException JavaDoc sqle) {
255             throw new DatabaseException("Error executing SQL in memberDAOImplJDBC.create.");
256         } finally {
257             DBUtils.closeStatement(statement);
258             DBUtils.closeConnection(connection);
259         }
260     }
261
262
263
264     /*
265      * Included columns: MemberID, MemberName, MemberPassword, MemberFirstEmail, MemberEmail,
266      * MemberEmailVisible, MemberNameVisible, MemberFirstIP, MemberLastIP, MemberViewCount,
267      * MemberPostCount, MemberCreationDate, MemberModifiedDate, MemberExpireDate, MemberLastLogon,
268      * MemberOption, MemberStatus, MemberActivateCode, MemberTempPassword, MemberMessageCount,
269      * MemberMessageOption, MemberPostsPerPage, MemberWarnCount, MemberVoteCount, MemberVoteTotalStars,
270      * MemberRewardPoints, MemberTitle, MemberTimeZone, MemberSignature, MemberAvatar,
271      * MemberSkin, MemberLanguage, MemberFirstname, MemberLastname, MemberGender,
272      * MemberBirthday, MemberAddress, MemberCity, MemberState, MemberCountry,
273      * MemberPhone, MemberMobile, MemberFax, MemberCareer, MemberHomepage,
274      * MemberYahoo, MemberAol, MemberIcq, MemberMsn, MemberCoolLink1,
275      * MemberCoolLink2
276      * Excluded columns:
277      */

278     public MemberBean getBean(int memberID)
279         throws ObjectNotFoundException, DatabaseException {
280
281         Connection JavaDoc connection = null;
282         PreparedStatement JavaDoc statement = null;
283         ResultSet JavaDoc resultSet = null;
284         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
285         sql
286                 .append("SELECT MemberID, MemberName, MemberPassword, MemberFirstEmail, MemberEmail, MemberEmailVisible, MemberNameVisible, MemberFirstIP, MemberLastIP, MemberViewCount, MemberPostCount, MemberCreationDate, MemberModifiedDate, MemberExpireDate, MemberLastLogon, MemberOption, MemberStatus, MemberActivateCode, MemberTempPassword, MemberMessageCount, MemberMessageOption, MemberPostsPerPage, MemberWarnCount, MemberVoteCount, MemberVoteTotalStars, MemberRewardPoints, MemberTitle, MemberTimeZone, MemberSignature, MemberAvatar, MemberSkin, MemberLanguage, MemberFirstname, MemberLastname, MemberGender, MemberBirthday, MemberAddress, MemberCity, MemberState, MemberCountry, MemberPhone, MemberMobile, MemberFax, MemberCareer, MemberHomepage, MemberYahoo, MemberAol, MemberIcq, MemberMsn, MemberCoolLink1, MemberCoolLink2");
287         sql.append(" FROM " + TABLE_NAME);
288         sql.append(" WHERE MemberID = ?");
289         try {
290             connection = DBUtils.getMvnConnection();
291             statement = connection.prepareStatement(sql.toString());
292             statement.setInt(1, memberID);
293             resultSet = statement.executeQuery();
294             if (!resultSet.next()) {
295                 throw new ObjectNotFoundException("Cannot find the row in table Member where primary key = ("
296                         + memberID + ").");
297             }
298
299             MemberBean bean = new MemberBean();
300             // @todo: uncomment the following line(s) as needed
301
//bean.setMemberID(memberID);
302
bean.setMemberID(resultSet.getInt("MemberID"));
303             bean.setMemberName(resultSet.getString("MemberName"));
304             //bean.setMemberPassword(resultSet.getString("MemberPassword"));
305
bean.setMemberFirstEmail(resultSet.getString("MemberFirstEmail"));
306             bean.setMemberEmail(resultSet.getString("MemberEmail"));
307             bean.setMemberEmailVisible(resultSet.getInt("MemberEmailVisible"));
308             bean.setMemberNameVisible(resultSet.getInt("MemberNameVisible"));
309             bean.setMemberFirstIP(resultSet.getString("MemberFirstIP"));
310             bean.setMemberLastIP(resultSet.getString("MemberLastIP"));
311             bean.setMemberViewCount(resultSet.getInt("MemberViewCount"));
312             bean.setMemberPostCount(resultSet.getInt("MemberPostCount"));
313             bean.setMemberCreationDate(resultSet.getTimestamp("MemberCreationDate"));
314             bean.setMemberModifiedDate(resultSet.getTimestamp("MemberModifiedDate"));
315             bean.setMemberExpireDate(resultSet.getTimestamp("MemberExpireDate"));
316             bean.setMemberLastLogon(resultSet.getTimestamp("MemberLastLogon"));
317             bean.setMemberOption(resultSet.getInt("MemberOption"));
318             bean.setMemberStatus(resultSet.getInt("MemberStatus"));
319             bean.setMemberActivateCode(resultSet.getString("MemberActivateCode"));
320             //bean.setMemberTempPassword(resultSet.getString("MemberTempPassword"));
321
bean.setMemberMessageCount(resultSet.getInt("MemberMessageCount"));
322             bean.setMemberMessageOption(resultSet.getInt("MemberMessageOption"));
323             bean.setMemberPostsPerPage(resultSet.getInt("MemberPostsPerPage"));
324             bean.setMemberWarnCount(resultSet.getInt("MemberWarnCount"));
325             bean.setMemberVoteCount(resultSet.getInt("MemberVoteCount"));
326             bean.setMemberVoteTotalStars(resultSet.getInt("MemberVoteTotalStars"));
327             bean.setMemberRewardPoints(resultSet.getInt("MemberRewardPoints"));
328             bean.setMemberTitle(resultSet.getString("MemberTitle"));
329             bean.setMemberTimeZone(resultSet.getDouble("MemberTimeZone"));
330             bean.setMemberSignature(resultSet.getString("MemberSignature"));
331             bean.setMemberAvatar(resultSet.getString("MemberAvatar"));
332             bean.setMemberSkin(resultSet.getString("MemberSkin"));
333             bean.setMemberLanguage(resultSet.getString("MemberLanguage"));
334             bean.setMemberFirstname(resultSet.getString("MemberFirstname"));
335             bean.setMemberLastname(resultSet.getString("MemberLastname"));
336             bean.setMemberGender(resultSet.getInt("MemberGender"));
337             bean.setMemberBirthday(resultSet.getDate("MemberBirthday"));
338             bean.setMemberAddress(resultSet.getString("MemberAddress"));
339             bean.setMemberCity(resultSet.getString("MemberCity"));
340             bean.setMemberState(resultSet.getString("MemberState"));
341             bean.setMemberCountry(resultSet.getString("MemberCountry"));
342             bean.setMemberPhone(resultSet.getString("MemberPhone"));
343             bean.setMemberMobile(resultSet.getString("MemberMobile"));
344             bean.setMemberFax(resultSet.getString("MemberFax"));
345             bean.setMemberCareer(resultSet.getString("MemberCareer"));
346             bean.setMemberHomepage(resultSet.getString("MemberHomepage"));
347             bean.setMemberYahoo(resultSet.getString("MemberYahoo"));
348             bean.setMemberAol(resultSet.getString("MemberAol"));
349             bean.setMemberIcq(resultSet.getString("MemberIcq"));
350             bean.setMemberMsn(resultSet.getString("MemberMsn"));
351             bean.setMemberCoolLink1(resultSet.getString("MemberCoolLink1"));
352             bean.setMemberCoolLink2(resultSet.getString("MemberCoolLink2"));
353             return bean;
354         } catch (SQLException JavaDoc sqle) {
355             throw new DatabaseException("Error executing SQL in MemberDAOImplJDBC.getBean(pk).");
356         } finally {
357             DBUtils.closeResultSet(resultSet);
358             DBUtils.closeStatement(statement);
359             DBUtils.closeConnection(connection);
360         }
361     }
362     
363     /*
364      * Included columns: MemberID, MemberName, MemberPassword, MemberFirstEmail, MemberEmail,
365      * MemberEmailVisible, MemberNameVisible, MemberFirstIP, MemberLastIP, MemberViewCount,
366      * MemberPostCount, MemberCreationDate, MemberModifiedDate, MemberExpireDate, MemberLastLogon,
367      * MemberOption, MemberStatus, MemberActivateCode, MemberTempPassword, MemberMessageCount,
368      * MemberMessageOption, MemberPostsPerPage, MemberWarnCount, MemberVoteCount, MemberVoteTotalStars,
369      * MemberRewardPoints, MemberTitle, MemberTimeZone, MemberSignature, MemberAvatar,
370      * MemberSkin, MemberLanguage, MemberFirstname, MemberLastname, MemberGender,
371      * MemberBirthday, MemberAddress, MemberCity, MemberState, MemberCountry,
372      * MemberPhone, MemberMobile, MemberFax, MemberCareer, MemberHomepage,
373      * MemberYahoo, MemberAol, MemberIcq, MemberMsn, MemberCoolLink1,
374      * MemberCoolLink2
375      * Excluded columns:
376      */

377     public void update(int memberID, // primary key
378
String JavaDoc memberName, String JavaDoc memberPassword, String JavaDoc memberFirstEmail,
379                         String JavaDoc memberEmail, int memberEmailVisible, int memberNameVisible,
380                         String JavaDoc memberFirstIP, String JavaDoc memberLastIP, int memberViewCount,
381                         int memberPostCount, Timestamp JavaDoc memberCreationDate, Timestamp JavaDoc memberModifiedDate,
382                         Timestamp JavaDoc memberExpireDate, Timestamp JavaDoc memberLastLogon, int memberOption,
383                         int memberStatus, String JavaDoc memberActivateCode, String JavaDoc memberTempPassword,
384                         int memberMessageCount, int memberMessageOption, int memberPostsPerPage,
385                         int memberWarnCount, int memberVoteCount, int memberVoteTotalStars,
386                         int memberRewardPoints, String JavaDoc memberTitle, double memberTimeZone,
387                         String JavaDoc memberSignature, String JavaDoc memberAvatar, String JavaDoc memberSkin,
388                         String JavaDoc memberLanguage, String JavaDoc memberFirstname, String JavaDoc memberLastname,
389                         int memberGender, Date JavaDoc memberBirthday, String JavaDoc memberAddress,
390                         String JavaDoc memberCity, String JavaDoc memberState, String JavaDoc memberCountry,
391                         String JavaDoc memberPhone, String JavaDoc memberMobile, String JavaDoc memberFax,
392                         String JavaDoc memberCareer, String JavaDoc memberHomepage, String JavaDoc memberYahoo,
393                         String JavaDoc memberAol, String JavaDoc memberIcq, String JavaDoc memberMsn,
394                         String JavaDoc memberCoolLink1, String JavaDoc memberCoolLink2)
395         throws ObjectNotFoundException, DatabaseException/*, DuplicateKeyException*/, DuplicateKeyException {
396
397         MemberBean bean = getBean(memberID); // @todo: comment or delete this line if no alternate key are included
398

399         if ( !memberEmail.equals(bean.getMemberEmail()) ) {
400             // member tries to change its alternate key [MemberEmail], so we must check if it already exist
401
try {
402                 findByAlternateKey_MemberEmail(memberEmail);
403                 throw new DuplicateKeyException("Alternate key [MemberEmail] (" + memberEmail + ")already exists. Cannot update member.");
404             } catch(ObjectNotFoundException e) {
405                 //Otherwise we can go ahead
406
}
407         }
408
409         Connection JavaDoc connection = null;
410         PreparedStatement JavaDoc statement = null;
411         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
412         sql.append("UPDATE " + TABLE_NAME + " SET MemberName = ?, MemberPassword = ?, MemberFirstEmail = ?, MemberEmail = ?, MemberEmailVisible = ?, MemberNameVisible = ?, MemberFirstIP = ?, MemberLastIP = ?, MemberViewCount = ?, MemberPostCount = ?, MemberCreationDate = ?, MemberModifiedDate = ?, MemberExpireDate = ?, MemberLastLogon = ?, MemberOption = ?, MemberStatus = ?, MemberActivateCode = ?, MemberTempPassword = ?, MemberMessageCount = ?, MemberMessageOption = ?, MemberPostsPerPage = ?, MemberWarnCount = ?, MemberVoteCount = ?, MemberVoteTotalStars = ?, MemberRewardPoints = ?, MemberTitle = ?, MemberTimeZone = ?, MemberSignature = ?, MemberAvatar = ?, MemberSkin = ?, MemberLanguage = ?, MemberFirstname = ?, MemberLastname = ?, MemberGender = ?, MemberBirthday = ?, MemberAddress = ?, MemberCity = ?, MemberState = ?, MemberCountry = ?, MemberPhone = ?, MemberMobile = ?, MemberFax = ?, MemberCareer = ?, MemberHomepage = ?, MemberYahoo = ?, MemberAol = ?, MemberIcq = ?, MemberMsn = ?, MemberCoolLink1 = ?, MemberCoolLink2 = ?");
413         sql.append(" WHERE MemberID = ?");
414         try {
415             connection = DBUtils.getMvnConnection();
416             statement = connection.prepareStatement(sql.toString());
417
418             // // column(s) to update
419
statement.setString(1, memberName);
420             statement.setString(2, memberPassword);
421             statement.setString(3, memberFirstEmail);
422             statement.setString(4, memberEmail);
423             statement.setInt(5, memberEmailVisible);
424             statement.setInt(6, memberNameVisible);
425             statement.setString(7, memberFirstIP);
426             statement.setString(8, memberLastIP);
427             statement.setInt(9, memberViewCount);
428             statement.setInt(10, memberPostCount);
429             statement.setTimestamp(11, memberCreationDate);
430             statement.setTimestamp(12, memberModifiedDate);
431             statement.setTimestamp(13, memberExpireDate);
432             statement.setTimestamp(14, memberLastLogon);
433             statement.setInt(15, memberOption);
434             statement.setInt(16, memberStatus);
435             statement.setString(17, memberActivateCode);
436             statement.setString(18, memberTempPassword);
437             statement.setInt(19, memberMessageCount);
438             statement.setInt(20, memberMessageOption);
439             statement.setInt(21, memberPostsPerPage);
440             statement.setInt(22, memberWarnCount);
441             statement.setInt(23, memberVoteCount);
442             statement.setInt(24, memberVoteTotalStars);
443             statement.setInt(25, memberRewardPoints);
444             statement.setString(26, memberTitle);
445             statement.setDouble(27, memberTimeZone);
446             statement.setString(28, memberSignature);
447             statement.setString(29, memberAvatar);
448             statement.setString(30, memberSkin);
449             statement.setString(31, memberLanguage);
450             statement.setString(32, memberFirstname);
451             statement.setString(33, memberLastname);
452             statement.setInt(34, memberGender);
453             statement.setDate(35, memberBirthday);
454             statement.setString(36, memberAddress);
455             statement.setString(37, memberCity);
456             statement.setString(38, memberState);
457             statement.setString(39, memberCountry);
458             statement.setString(40, memberPhone);
459             statement.setString(41, memberMobile);
460             statement.setString(42, memberFax);
461             statement.setString(43, memberCareer);
462             statement.setString(44, memberHomepage);
463             statement.setString(45, memberYahoo);
464             statement.setString(46, memberAol);
465             statement.setString(47, memberIcq);
466             statement.setString(48, memberMsn);
467             statement.setString(49, memberCoolLink1);
468             statement.setString(50, memberCoolLink2);
469
470             // primary key column(s)
471
statement.setInt(51, memberID);
472
473             if (statement.executeUpdate() != 1) {
474                 throw new ObjectNotFoundException("Cannot update table member where primary key = (" + memberID + ").");
475             }
476         } catch(SQLException JavaDoc sqle) {
477             throw new DatabaseException("Error executing SQL in memberDAOImplJDBC.update.");
478         } finally {
479             DBUtils.closeStatement(statement);
480             DBUtils.closeConnection(connection);
481         }
482     }
483
484     public String JavaDoc getMemberNameFromMemberID(int memberID)
485         throws ObjectNotFoundException, DatabaseException {
486         // TODO Auto-generated method stub
487
Connection JavaDoc connection = null;
488         PreparedStatement JavaDoc statement = null;
489         ResultSet JavaDoc resultSet = null;
490         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
491         sql.append("SELECT MemberName");
492         sql.append(" FROM " + TABLE_NAME);
493         sql.append(" WHERE MemberID = ?");
494         try {
495             connection = DBUtils.getMvnConnection();
496             statement = connection.prepareStatement(sql.toString());
497             statement.setInt(1, memberID);
498             resultSet = statement.executeQuery();
499             if(!resultSet.next()) {
500                 throw new ObjectNotFoundException("Cannot find the row in table member where primary key = (" + memberID + ").");
501             }
502             return resultSet.getString("MemberName");
503         } catch(SQLException JavaDoc sqle) {
504             throw new DatabaseException("Error executing SQL in memberDAOImplJDBC.getBean(pk).");
505         } finally {
506             DBUtils.closeResultSet(resultSet);
507             DBUtils.closeStatement(statement);
508             DBUtils.closeConnection(connection);
509         }
510     }
511
512     public void create(String JavaDoc memberName, String JavaDoc memberPassword, String JavaDoc memberFirstEmail, String JavaDoc memberEmail, int memberEmailVisible, int memberNameVisible, String JavaDoc memberFirstIP, String JavaDoc memberLastIP, int memberViewCount, int memberPostCount, Timestamp JavaDoc memberCreationDate, Timestamp JavaDoc memberModifiedDate, Timestamp JavaDoc memberExpireDate, Timestamp JavaDoc memberLastLogon, int memberOption, int memberStatus, String JavaDoc memberActivateCode, String JavaDoc memberTempPassword, int memberMessageCount, int memberMessageOption, int memberPostsPerPage, int memberWarnCount, int memberVoteCount, int memberVoteTotalStars, int memberRewardPoints, String JavaDoc memberTitle, double tzone, String JavaDoc memberSignature, String JavaDoc memberAvatar, String JavaDoc memberSkin, String JavaDoc memberLanguage, String JavaDoc memberFirstname, String JavaDoc memberLastname, int memberGender, Date JavaDoc memberBirthday, String JavaDoc memberAddress, String JavaDoc memberCity, String JavaDoc memberState, String JavaDoc memberCountry, String JavaDoc memberPhone, String JavaDoc memberMobile, String JavaDoc memberFax, String JavaDoc memberCareer, String JavaDoc memberHomepage, String JavaDoc memberYahoo, String JavaDoc memberAol, String JavaDoc memberIcq, String JavaDoc memberMsn, String JavaDoc memberCoolLink1, String JavaDoc memberCoolLink2)
513         throws CreateException, DatabaseException, DuplicateKeyException {
514         // TODO Auto-generated method stub
515

516     }
517
518     public org.mvnforum.phpbb2mvnforum.db.MemberBean getMemberFromMemberName(String JavaDoc memberName)
519         throws ObjectNotFoundException, DatabaseException {
520         // TODO Auto-generated method stub
521
return null;
522     }
523
524
525 }
526
Popular Tags