我想要实现的程序,其中有访问数据库连接对象:从另一个类
- 甲的MySqlConnection类处理该数据库连接
- 要被存储为取得输入的GUI屏A类在DB
- 主类
我想打电话给在从Screen类的主要方法创建的MySqlConnection对象。
我到目前为止尝试过的 - 错误的 - 如下。非常感谢解决这个问题的指针。
提前致谢!
主类:
public class Main {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
//Start main screen
Screen start = new Screen();
start.setVisible(true);
//create db connection
**MySQLConnection sqlConn = new MySQLConnection();
Connection con=sqlConn.connectToDatabase();**
} catch (Exception e) {
e.printStackTrace();
}
}
});
MySQL连接类:
public class MySQLConnection {
public Connection connectToDatabase() {//connect to db }
public void addToDatabase(String tableName, ArrayList<String> columns, ArrayList<String> values) {//add a row to table in db}
public void closeConnection() {//close db connection}
}
AddScreen类:
public class Screen extends JFrame{
ArrayList<String> mainValues= new ArrayList<String>();
//Create GUI
public Screen(){
...
ArrayList<String> mainValues= new ArrayList<String>();
String mainId = mainI.getText();
String mainName = mainN.getText();
mainValues.add(mainId);
mainValues.add(mainName);
}
public void saveToDatabase() {
String[] mainColumns= {"mid", "mname"};
**con.addToDatabase("main_category", mainColumns, mainValues);**
}
}
谢谢!这工作,解释清楚。我得到一个新的错误“方法addToDatabase(...)是未定义的类型连接”,可以解析与铸造到MySQlConnection。有没有办法管理这个没有演员?谢谢! – dshgna 2014-11-03 11:31:28
不确定您的要求。但是你可能想通过在'MySQLConnection'中包装'Connection'来改变设计。查看更新后的答案。 – Khalid 2014-11-03 12:07:35
是的,这种方法的作品!谢谢! – dshgna 2014-11-04 08:18:30