RMI高手请进:怎么把一个JAVA标准类包装成RMI的Remote类,只允许部分方法可远程调用
我想把一台电脑上的odbc用rmi共享出来作为数据源, 允许用户执行查询并返回结果.
因为java.sql.*都不能序列化, 故无法作为参数或者返回.
所以如果把java.sql.*都包装成remote型, 客户端只要得到引用, 对其设定参数即可.
例如:
rmi.sql.Server server = (rmi.sql.Server)java.rmi.Naming.lookup("//host/OdbcServer");
rmi.sql.Connection con = server.getConnection();
rmi.sql.PreparedStatement stmt = con.prepareStatement("select....");
stmt.setString(1,"test");
rmi.sql.ResultSet rs = stmt.ExecuteQuery();
while(rs.next())
.........
其中rmi.sql.*都是Remote类型.
因为rmi.sql.*的大部分方法都只是简单调用java.sql.*对应的功能, 如PreparedStatement的SetString,SetInt...
ResultSet的GetString,GetInt.....
不知道有没有简单方法来实现?