是否可以使用JDBC在servlet中执行SQL文件?

问题描述:

现在我正在为学习目的创建一个简单的银行项目,我需要为一个简单的操作进行大量的搜索,更新和插入操作。例如,如果我想从示例用户标识创建交易,请在“创建交易”屏幕上输入详细信息并按下“提交”按钮后,我的应用程序将执行以下操作。是否可以使用JDBC在servlet中执行SQL文件?

1)在登录会话表中插入一行数值:IP地址,用户ID和时间。

2)检查特定用户标识是否有权从用户访问表创建事务选项。

3)检查被扣/记账的账户是否属于与创建用户的归属分支代码相同的分支代码。

3)要检查输入库存(如果有)即DD,检查是否有效从库存表中。

4)检查被扣/记账的账户是否冻结。

5)检查被扣账户是否有足够的可用余额。

6)检查帐户状态有效/无效或休眠。

7)检查,如果适用创建服务税即从S.Tax表另一个搜索,并插入到帐户的交易表

最后,

8)插入一行,该帐户的交易表,如果准则通过。

现在我不觉得在我的Servlet中编写如此多的准备状态代码只是为了创建事务。我的应用程序中也会有其他操作。所以我想知道是否有一种方法可以简单地编写这些SQL语句并将SQL文件传递给Servlet。或者,也许我们可以在PL/SQL中编写函数并将函数传递给servelt。这些方式可能吗?

请注意,我使用J2EE和Oracle数据库。

我有一个项目,这样做一次,我做了一些几年前,我居然达到了接近你在找什么我创建了一个属性文件格式为:

trans.getTransactons=select * from whateverTable where onesqlquery 
trans.getTranId=select tran_id from whatevertable where anothersqlquery 

所以,当你写你的类,你刚刚从文件加载属性和查询从属性填充:例如:这会将物业FLE

public class QueriesLoader { 

    Properties prop; 

    public QueriesLoader() { 
    } 

    public Properties getProp() { 
     prop = new Properties(); 
     ClassLoader classLoader = getClass().getClassLoader(); 
     try { 
      InputStream url = classLoader.getResourceAsStream("path/to/your/propertiesFile/databasequeries.properties"); 
      prop.load(url); 
     } catch (IOException asd) { 
      System.out.println(asd.getMessage()); 
     } 
     return prop; 
    } 
} 

然后在你的数据库访问对象

public ArrayList getAllTransactions() { 
     ArrayList arr = new ArrayList(); 
     try { 
      String sql = que.getProp().getProperty("trans.getTransactons"); 
      PreparedStatement ps = DBConnection.getDbConnection().prepareStatement(sql); 
      ResultSet rs = ps.executeQuery(); 
      while (rs.next()) { 
       arr.add(rs.getString(1)); 
      } 
      DBConnection.closeConn(DBConnection.getDbConnection()); 

     } catch (IOException asd) { 
      log.debug(Level.FATAL, asd); 
     } catch (SQLException asd) { 
      log.debug(Level.FATAL, asd); 
     } 
     return arr; 
    } 

而且我最终没有在我的类中编写单个查询。我希望这可以帮助你。