对象中间件--CORBA开发练习

该博客详细介绍了如何使用CORBA技术开发一个考试成绩查询系统,包括服务器端和客户端的实现。服务器端采用Java编写,利用JDBC访问数据库,客户端则使用Java和C++。实验涵盖了从接口定义、服务器与客户端代码编写到编译运行的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 实验目的

通过实例掌握CORBA的开发过程:主要包括:接口定义;接口的对象实现;服务器端代码编写;客户端代码编写;CORBA Server/Client的编译与运行;

二 实验要求

1)基于CORBA技术开发一个考试成绩查询系统,主要包括:服务器部分:实现查询和录入服务;客户端部分包括录入和查询部分
2)服务端使用Java编写,使用JDBC访问数据库;客户端使用Java和C++分别编写。

三 实验过程
实验准备

1.下载OmniORB
首先需要到这里 下载一个win32的OmniORB。文件名是”omniORB-4.1.0-x86_win32_vc6.zip”。然后解压缩到一个位置。

2.环境变量
将jdk\bin以及omniORB-4.1.0\bin\x86_win32配置到环境变量path中,加到原有的变量后,用分号隔开。
下面是我的Path中部分环境变量配置,第一二个位VC的环境变量,第三个为JDK的环境变量,第四个为OmniORB的环境变量

D:\VC++6.0\Microsoft Visual Studio\Common\MSDev98\Bin
;D:\VC++6.0\Microsoft Visual Studio\VC98\Bin;D:\Java\jdk\bin;D:\omniORB-4.1.0\bin\x86_win32
实验内容

(一).服务接口定义
创建自己的文件夹,新建DataService.idl 文件,定义查询与录入函数。
DataService.idl的代码如下:

interface DataService
{ void insert(in string stuName,in string StuNo,in float score);
float search(in string stuNo);
};

(二).Java实现Corba服务器端

1.用以下命令生成存根与框架:
idlj -fall DataService.idl
生成如下文件:
这里写图片描述

2.在自己创建的文件夹下,创建server文件夹,并将1)得到的存根和框架java文件拷贝至server,并使用eclipse创建一工程,将这些文件包含进去。
目录结构为:
这里写图片描述

3.编写服务端服务实现,并写main函数以启动corba服务
编写的DataServiceServer.java的代码如下:

package com.wangkai;

import org.omg.CosNaming.*;
import org.omg.CORBA.*;
import org.omg.CosNaming.*;
import org.omg.PortableServer.*;
import com.wangkai.DBmanager;

//编写相对应的服务,一定要从 _类名ImplBase继承,并实现相应的方法
class DataServiceImpl extends DataServicePOA // 具体的服务实现
{
    private ORB orb;

    public void setOrb(ORB orb_val) {
        this.orb = orb_val;
    }

    @Override
    public void insert(String stuName, String StuNo, float score) {
        // TODO Auto-generated method stub
        DBmanager.insert(stuName, StuNo, score);
    }

    @Override
    public float search(String stuNo) {
        // TODO Auto-generated method st
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值