2013-01-07 43 views
0

我的项目需求是开发一个与mysql数据库和一个持续运行在服务器上的java应用程序交互的网站。用户在某个远程计算机上通过在服务器上执行jsp代码向java应用程序发送请求,jsp代码将等待应用程序发回信息。一旦jsp收到信息。它向数据库发送一个请求。这是一种特殊类型的数据库,仅仅是因为数据库和我的项目需求的限制而构建的。请告诉我该请求是如何发送的,即java的哪一部分可以帮助我做到这一点。jsp和java应用程序之间的通信

一些具有相同信息但不完全相同的链接Communication between two separate Java desktop applications

编辑:我的问题是....我应该如何使用一个jsp页面,以便我能够获取信息。来自以特殊形式的数据结构存储数据的应用程序。现在我不想和数据库交谈。我只想与正在运行的应用程序进行交互。

例如有一个程序在服务器上返回两个数字的总和,等待某人给它输入。现在我的jsp向应用程序发送两个数字,并添加这两个数字,并将总和返回给jsp页面。现在jsp页面代码可以做任何现在不是我关心的事情。

回答

4

通过网站访问数据库是任何基于Web的开发的重要组件之一。 JDBC,一种允许Java与数据库交谈的机制。

Java数据库连接(JDBC)是一种标准的应用程序编程接口(API),用于访问数据库,而不考虑应用程序驱动程序和数据库产品。换句话说,JDBC为数据库提供了一个统一的接口,但是,如果更改数据库管理系统和应用程序,则只需更改其驱动程序。 JDBC为各种SQL数据库和其他表格数据源(如电子表格或平面文件)提供跨DBMS连接。

下面是示例例如:

import java.sql.*; 
class DBQuery1{ 
    public static void main(String args[]) throws SQLException 
    { 
      try{ 
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
       }catch(ClassNotFoundException e){}; 
     Connection cnn; 
     Statement mystmt; 
     ResultSet myrs; 
      String op = "jdbc:odbc:JavaTest"; 
     cnn = DriverManager.getConnection(op, 
       "Admin", ""); 
     mystmt = cnn.createStatement(); 
      String sql; 
      sql = "SELECT * FROM SupplierMaster " + 
       "WHERE SupplierCode IN (" + 
        "SELECT SCode " + 
        "FROM Relation " + 
        "WHERE PCode IN (" + 
          "SELECT ProductCode " + 
          "FROM ProductMaster " + 
          "WHERE ProdCatg IN (" + 
           "SELECT CatgID " + 
           "FROM CategoryMaster " + 
              "WHERE CategoryName = 'Eatables')))"; 
     myrs = mystmt.executeQuery(sql); 
      System.out.println(" "+"Sup Code" + "  " +"Sup Name" + " " + "Sup Address "); 
      System.out.println("--------------------------------------------------------------------"); 
     String name, add; 
      int code; 
      while (myrs.next()) 
     { 
      code = myrs.getInt("SupplierCode"); 
      name = myrs.getString("SupplierName"); 
      add = myrs.getString("SupplierAddress"); 
      System.out.println("  " + code +"  " + name+"  " + add); 
     } 
    } 

}

你可以找到这个链接的更多信息:

http://webserver.ignou.ac.in/virtualcampus/adit/course/cst302/block2/cst302-bl2-u3.htm

0

Java应用程序通常通过使用JDBC驱动程序与关系数据库进行通信。驱动程序告诉应用程序如何与特定数据库进行通信。每个数据库供应商通常为其特定数据库提供驱动程序。在你的情况下,你将需要MySql Connecter/J driver,你将在项目中包含一个jar文件。

由数据库供应商提供的JDBC驱动程序实现了一个接口,因此连接到不同的数据库几乎是相同的,除了参数之间的一些语法差异。有很多关于如何通过Java应用程序连接到数据库的信息。

相关问题