fedoracle 2009-05-18 14:47
浏览 235
已采纳

不使用hibernate只使用struts2结构怎么对数据库进行操作

我现在在做毕设,使用了struts2,现在不想用hibernate,感觉用上更麻烦,不知道大家不用hibernate都是怎么连接数据库的,用jdbc编程,我现在写代码倒是能对数据库进行操作,不过要是每次都进行连接和断开连接实在太麻烦,要是写一个类传入sql语句的话不知道怎么写好,哪位大侠给指条明路?时间不多了,我也觉得学hibernate来不及了
[b]问题补充:[/b]
能不能具体说一下呢?我现在想出来的方法是这样
[code]
package lee;

import oracle.jdbc.*;
import oracle.jdbc.pool.OracleDataSource;

import java.sql.*;

public class BookQuerySql{

private String bqs;

public BookQuerySql(String booksql) {
    this.bqs = booksql;
}

OracleDataSource ods = null;
Connection conn = null;
Statement stmt = null;
ResultSet rset = null;

public void bookConnect() throws SQLException {
    ods = new OracleDataSource();
    ods.setURL("jdbc:oracle:thin:@localhost:1521:orcl");
    ods.setUser("scott");
    ods.setPassword("tiger");
    conn = ods.getConnection();
}

public ResultSet bookresult() throws SQLException {
    stmt = conn.createStatement();
    rset = stmt.executeQuery(bqs);
    return rset;
}

public void bookClosed() throws SQLException {
    if (rset != null)
        rset.close();
    if (stmt != null)
        stmt.close();
    if (conn != null)
        conn.close();
}

}
[/code]
用的时候是这样
[code]
package lee;

import java.sql.ResultSet;
import java.sql.SQLException;
import lee.BookQuerySql;

public class BookService {

BookQuerySql mysql=new BookQuerySql("select * from emp");
private String[] books=new String[20];
private int i=0;
public void getValue() throws SQLException{
mysql.bookConnect();
ResultSet myresult=mysql.bookresult();
while (myresult.next ()){
    System.out.println(myresult.getString (1));
    books[i]=myresult.getString(1);
    i++;
    }
mysql.bookClosed();
}
public String[] getLeeBooks()
{
    return books;
}

}
[/code]
[b]问题补充:[/b]
我用的是oracle 11g,wubo可以说一下你的方法比这个好在哪里么?

  • 写回答

2条回答 默认 最新

  • wubo19842008 2009-05-18 16:42
    关注

    省去了你自己构建数据源的步骤,如果数据源部署到应用服务器上,还可以帮你管理这些数据源,同时还可以监控他们。你的方法是和数据库耦合太强了,如果切换成其他数据库,在构建数据源的时候你的方案不就行不通了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?