繁体   English   中英

JSP与Java应用程序之间的通信

[英]Communication between jsp and java application

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

一些链接具有相同的信息但并非确切的两个单独的Java桌面应用程序之间的通信

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

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

通过网站访问数据库是任何基于Web的开发的基本组成部分之一。 JDBC,一种允许Java与数据库对话的机制。

Java数据库连接(JDBC)是一种标准的应用程序编程接口(API),用于访问数据库,而与应用程序驱动程序和数据库产品无关。 换句话说,JDBC为数据库提供了统一的接口,但是,如果您更改数据库管理系统和应用程序,则只需要更改其驱动程序即可。 JDBC提供了跨DBMS到大量SQL数据库以及其他表格数据源(例如电子表格或平面文件)的连接。

这是示例示例:

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM