package util;
import java.sql.*;
public class JdbcUtil {
static {
String driver = "oracle.jdbc.driver.OracleDriver"; //加载驱动,只需加载一次
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//静态方法获得连接
public static Connection getConnection() { 在编程中,我们经常需要与数据库进行交互。在这个过程中,获取数据库连接是非常关键的一步。在Java中,我们可以使用JDBC来实现数据库连接。getConnection()方法是JDBC中的一个静态方法,用于获取数据库连接对象。 这个方法通常需要传入一些参数,比如数据库的URL、用户名和密码等。具体的参数会根据你所使用的数据库而有所不同。 在编写代码时,你可以按照以下步骤来使用getConnection()方法来获取
String url = "jdbc:oracle:thin:@127.0.0.1:1521:database";
String user = "username";
String pwd = "password";
Connection con = null;
try {
con = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
}
核心代码:
public void actionPerformed(ActionEvent e) { 此方法是用来处理触发的事件的。在这个方法中,可以编写相应的代码来对事件做出响应。可以根据事件的类型进行不同的操作,比如点击按钮时执行某些操作,或者选择菜单项时执行其他操作。在这个方法中,可以使用事件对象e来获取相关的信息,比如获取触发事件的组件、获取事件类型等。根据具体的需求,可以在这个方法中编写相应的逻辑代码,来实现我们想要
if(e.getSource() == add){
this.setVisible(false);
new AddPanel();
}
if(e.getSource() == modify){
this.setVisible(false);
new ModifyPanel();
}
if(e.getSource() == search){
this.setVisible(false);
new SearchPanel();
}
if(e.getSource() == exit){
System.exit(0);
}
}
...........
有完整的源代码###
8.Oracle8/8i/9i数据库(thin模式)
//import java.sql.*;
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 在这行代码中,我们使用了Java的反射机制来动态加载并实例化了Oracle数据库的驱动程序。通过调用Class类的forName方法,并传入驱动程序的全限定名"oracle.jdbc.driver.OracleDriver"作为参数,我们可以将该驱动程序加载到内存中。接着,使用newInstance方法创建该驱动程序的一个实例对象。这样,我们就可以在后续的代码中使用该驱动程序来连接和操作Oracle数据库了。
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID,表示连接到本地主机的Oracle数据库实例名为orcl
Connection conn = DriverManager.getConnection(url, "username", "password");
Statement stmtNew = conn.createStatement();是创建了一个与数据库连接关联的Statement对象。这个Statement对象可以用来执行SQL语句并返回结果。
20.数据库存入二进制字段数据
InputStream pic = new FileInputStream(dto.get(i).getLibPic());是关于输入流的一行代码。它的作用是根据dto的第i个元素所指定的libPic路径,创建一个输入流pic。libPic是一个文件路径,通过FileInputStream将这个文件转换为输入流,以便后续的操作。
sql = "INSERT INTO piclib (name,pic,sign,remark) VALUES (?,?,?,?)";
pstmt = con.prepareStatement(sql);
pstmt.setString(1, dto.get(i).getName()); 这行代码是将列表中第i个对象的名称设置为PreparedStatement的第一个参数。
pstmt.setBinaryStream(2, pic, (int)dto.get(i).getLibPic().length()); 语句中的pic是一个二进制流,用于存储图片数据。在这里,我们将pic作为第二个参数传递给pstmt对象的setBinaryStream方法。而dto.get(i).getLibPic().length()则是获取到的图片数据的长度,将其强制转换为int类型后作为第三个参数传递给setBinaryStream方法。这样就可以将图片数据存储到数据库中了。
21.数据库取出二进制字段数据
//import java.sql.*;
public class DemoDisplayBinaryDataFromDatabase {
public static Connection getConnection() throws Exception {
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521:databaseName";
String username = "name";
String password = "password";
Class.forName(driver);
Connection conn = DriverManager.getConnection(url, username, password);是用于在Java中建立数据库连接的代码。它使用了JDBC(Java数据库连接)的API,通过指定数据库的URL、用户名和密码来获取与数据库的连接。这行代码是连接数据库的关键步骤,它会返回一个Connection对象,我们可以通过这个对象进行后续的数据库操作,如执行SQL语句、查询数据库等。
return conn;
}
public static void main(String args[]) throws Exception { // 在这里写下你的代码逻辑 }
Connection conn = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
String query = "SELECT raw_column, long_raw_column FROM binary_table WHERE id = ?";
try {
conn = getConnection();
Object[] results = new Object[2];
pstmt = conn.prepareStatement(query);是一行常见的Java代码,用于创建一个预编译的SQL语句对象。这个对象可以用于执行数据库查询或更新操作。通过将具体的SQL查询或更新语句传递给这个方法,我们可以准备好一个可以重复使用的查询或更新操作。这样可以提高数据库操作的效率,并且可以防止SQL注入攻击。这个方法需要一个有效的数据库连接对象conn和一个SQL语句query作为参数。通过调用这个方法,我们可以获取
pstmt.setString(1, "0001");
rs = pstmt.executeQuery();
rs.next();
将二进制数据在客户端上实现
results[0] = rs.getBytes("RAW_COLUMN");
results[1] = rs.getBytes("LONG_RAW_COLUMN");
} finally {
rs.close();
pstmt.close();
conn.close();
}
}
}
以上是Java驱动程序实现本地协议的Oracle示例的详细内容。更多信息请关注PHP中文网其他相关文章!