从Java中访问Oracle DB express
我有一个基本的Java应用程序(带有GUI),它使用链表添加/删除/修改客户对象,我想将它们存储在数据库中(确切地说是Oracle DB express)从Java中访问Oracle DB express,java,database,oracle,Java,Database,Oracle,我有一个基本的Java应用程序(带有GUI),它使用链表添加/删除/修改客户对象,我想将它们存储在数据库中(确切地说是Oracle DB express) 据我所知,我必须使用某种工具创建一个表,并使用该工具自动生成一个Java类,使我能够与DB通信。我离这还有多远?只是想澄清一下您的问题,您使用了什么工具来生成java代码 我建议您避免使用代码生成工具,以防您想在Java内外学习 Connection con; Statement smt; ResultSet rs; String user=
据我所知,我必须使用某种工具创建一个表,并使用该工具自动生成一个Java类,使我能够与DB通信。我离这还有多远?只是想澄清一下您的问题,您使用了什么工具来生成java代码 我建议您避免使用代码生成工具,以防您想在Java内外学习
Connection con;
Statement smt;
ResultSet rs;
String user="databaseuser";
String pass="password";
String path="jdbc:oracle:thin:@localhost:1521:Sampledb"; //put db url here
try{
con=DriverManager.getConnection(path, user, pass);
smt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
String SQL="SELECT *FROM Registered_users_tb "; //Your Query here
rs=smt.executeQuery(SQL);
rs.moveToInsertRow();
//First param is db column name,second param is variable name
rs.updateString("USERNAME", username);
rs.updateString("FNAME", fname);
rs.updateString("MNAME", mname);
rs.updateString("LNAME", lname);
rs.updateString("GENDER", gender);
rs.updateString("DEPARTMENT", dept);
rs.insertRow();
rs.close();
smt.close();
}
catch(SQLException err){
JOptionPane.showMessageDialog(Classname.this,err.getMessage());
}
为了创建一个全新的数据库,oracle提供了一个名为DBCA的gui工具。我找到了几个使用此工具的链接:和 这将教您如何访问Oracle数据库。要访问这样的数据库,您需要找到其他驱动程序。下面是一个如何访问此类数据库的简短示例:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
class DatabaseAccess
{
public static void main(String [] args)
{
Connection connection = null;
try
{
Class.forName("oracle.jdbc.OracleDriver");
String dbPath = "jdbc:oracle:thin:@localhost:1521:myDatabase";
String username = "user";
String password = "password";
connection = DriverManager.getConnection(dbPath, username, password);
if(connection != null)
{
System.out.println("Connected with database");
Statement statement = connection.createStatement();
ResultSet results = statementt.executeQuery("SELECT * FROM myTable");
while(result.next())
{
System.out.println(result.getString("myString"));
}
}
catch(ClassNotFoundException | SQLException exc)
{
exc.printStackTrace();
}
finally
{
try
{
connection.close();
}
catch(SqlException exc)
{
exc.printStackTrace();
}
}
}
}
有关更高级的示例,请访问给定的链接。我正在考虑下载JDeveloper,并遵循我在Oracle网站上找到的长长的教程。我想我应该先创建一个数据库,然后JDeveloper将创建一个Java类,我可以在我的项目中重用它。(或类似的事情)。谢谢你的回答。信息量很大。我会检查所有的信息,看看是否能让它发挥作用。祝你好运。