按钮 - > conectaDB(连接数据库) - > inseredadosBD(将数据插入数据库)
如何将连接返回到inseredadosBD,从方法插入?
按钮事件:
public void inseredadosBD(String grupo, int protocolo, String dataentrada, String escrevente, String auxiliar, String datalimite) {
conectaBD();
-> here i will use the insert, i was planning to use something like conn.execute.. from here, but
}
我尝试了conectaBD(连接conectado); 试过conectaBD(conectado);
做一些类似conectado.exe的..,但是没有用:/
方法conectaBD
public class metodos {
public Connection conectado;
public Connection conn;
public Connection conectaBD() {
//metodo responsavel por fazer a conexão com o BD
try {
try {
Class.forName("org.sqlite.JDBC");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
conn = DriverManager.getConnection("jdbc:sqlite:c:\\grupo1.db");
// Statement stm = conn.createStatement();
if (conn != null) {
System.out.println("Conectou" );
// fechaconexaoBD(conn);
} else {
System.out.println("Conexão Fail");
}
} catch (SQLException e) {
System.out.println("Erro de conexão " );
e.printStackTrace();
}
return conn;
}
..here go the rest of the code...
忘了//,我只是在尝试/测试事物:s
答案 0 :(得分:1)
您可能还想包含您收到的错误。
我尝试了conectaBD(连接conectado);尝试了conectaBD(conectado);
这些不起作用,因为没有定义方法conectaBD
以Connection
作为参数。
修改根据您的评论,
是的,我有方法conectaBD ...它在第一个代码块!!不是一个方法因为“连接”??问题是这样,我如何将连接传递给inseredadosBD,这是我的问题:
是的,您确实使用方法conectaBD()
,但是您尝试调用尚未定义的方法conectaBD(Connection)
但我可以提出几个选择:
将inseredadosBD()
方法放在metodos
课程中,这样您就可以访问Connection
个变量。因此,在致电conectaBD
后,您会希望使用conn
作为您的连接
将连接作为参数传递给inseredadosBD()
方法,然后使用该连接。像inseredadosBD(String.... , Connection c)
一样
编辑如果你这样做,那么你不要在这个方法中调用conectaBD()
,在调用此方法之前调用它,然后调用此方法,就像这个inseredadosBD(/*data you want to insert*/, conn)
那样在这个方法中你的{ {1}}被称为Connection
,因此您可以使用连接对象c,如下所示
c
在您的public void inseredadosBD(String grupo, int protocolo, String dataentrada, String escrevente, String auxiliar, String datalimite, Connection c) {
c.//What ever connection method you want to use
//here i will use the insert, i was planning to use something like conn.execute.
}
课程中实例化...不是很漂亮