KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > spoon > examples > dbaccess > template > DBCodeTemplate


1 package spoon.examples.dbaccess.template;
2
3 import java.sql.Connection JavaDoc;
4 import java.sql.DriverManager JavaDoc;
5 import java.sql.ResultSet JavaDoc;
6 import java.sql.SQLException JavaDoc;
7 import java.sql.Statement JavaDoc;
8
9 import spoon.reflect.Factory;
10 import spoon.template.Local;
11 import spoon.template.Parameter;
12 import spoon.template.Template;
13
14 public class DBCodeTemplate implements Template {
15     @Parameter
16     public String JavaDoc _database_;
17
18     @Parameter
19     public String JavaDoc _username_;
20
21     @Parameter
22     public String JavaDoc _password_;
23
24     @Parameter
25     public String JavaDoc _tableName_;
26
27     @Parameter
28     public String JavaDoc _columnName_;
29
30     Connection JavaDoc connection;
31
32     @Local
33     String JavaDoc key;
34
35     public DBCodeTemplate(Factory f, String JavaDoc database, String JavaDoc username,
36             String JavaDoc password, String JavaDoc tableName) {
37         this._database_ = database;
38         this._username_ = username;
39         this._password_ = password;
40         this._tableName_ = tableName;
41     }
42
43     public void initializerCode() {
44         try {
45             Class.forName("org.postgresql.Driver");
46         } catch (ClassNotFoundException JavaDoc e) {
47             e.printStackTrace();
48             return;
49         }
50         try {
51             connection = DriverManager.getConnection("jdbc:postgresql:"
52                     + _database_, _username_, _password_);
53         } catch (SQLException JavaDoc e) {
54             new Exception JavaDoc("failed to connect to the database with "
55                     + "jdbc:postgresql:" + _database_ + "," + _username_ + ","
56                     + _password_).printStackTrace();
57         }
58     }
59
60     public String JavaDoc accessCode() {
61         String JavaDoc query = "select " + _columnName_ + " from " + _tableName_
62                 + " where key=" + key;
63         Statement JavaDoc s = null;
64         try {
65             s = connection.createStatement();
66             ResultSet JavaDoc rs = s.executeQuery(query);
67             rs.first();
68             return rs.getString(1);
69         } catch (java.sql.SQLException JavaDoc ex12) {
70             ex12.printStackTrace();
71         } finally {
72             try {
73                 s.close();
74             } catch (Exception JavaDoc ex13) {
75                 ex13.printStackTrace();
76             }
77         }
78         return null;
79     }
80
81 }
Popular Tags