从 dba_change_notification_reg中拿ip对比本机ip
来源:互联网 发布:靠谱的淘宝日代推荐 编辑:程序博客网 时间:2024/04/29 04:24
conn = db.getConnection();
//撤销注册
String sql = "select * from dba_change_notification_regs";
Statement statement = conn.createStatement();
rs = statement.executeQuery(sql);
List<String> listCallBack = new ArrayList<String>();
List list = new ArrayList();//用来存放最后无重复项的数据
HashSet h ;//用来去除重复项
InetAddress addr=InetAddress.getLocalHost();//获取本机ip
String localIp=addr.getHostAddress();//获取本机ip
while(rs.next()){
String s = rs.getString("CALLBACK");
String s2 = s.substring(s.indexOf("HOST=")+5, s.indexOf(")(PORT="));
listCallBack.add(s2);
h = new HashSet(listCallBack);
list.clear();//清除
list.addAll(h);//去除重复项
}
if(!list.contains(localIp)){//如果未注册过再注册
//dcr = ((OracleConnection) conn).registerDatabaseChangeNotification(prop);
System.out.println("------------------------没注册过");
}
System.out.println("------------------------注册过");
//删除以前注册过的监听
logger.info("---------localIp-----开始----------");
InetAddress addr=InetAddress.getLocalHost();//获取本机ip
String localIp=addr.getHostAddress();//获取本机ip
logger.info("---------localIp---------------"+localIp);
//撤销本机的注册记录
String sql = "select distinct regid from dba_change_notification_regs where CALLBACK like '%"+localIp+"%'";
statement = conn.createStatement();
rs = statement.executeQuery(sql);
List<Integer> regIds = new ArrayList();
while(rs.next()){
regIds.add((Integer)rs.getInt("regid"));
}
if(regIds!=null){//如果本机注册过就删除掉,注意只删除本地机注册的
for(Integer i:regIds){
((OracleConnection) conn).unregisterDatabaseChangeNotification(i);
}
}
- 从 dba_change_notification_reg中拿ip对比本机ip
- WinForm中获取本机IP
- C#中获得本机IP
- VS2005中如何获取本机IP
- shell中获取本机ip地址
- jsp中获取本机ip
- shell中获取本机ip地址
- Qt 中获取本机IP地址
- Jsp 中获取本机IP
- 获得本机IP
- 查询本机IP
- 取本机IP
- 得到本机IP
- 获取本机IP
- 得到本机ip
- 本机IP读写
- 查看本机IP
- 获得本机IP
- 结构型模式
- Android之Notification通知
- AcEdCommand 直接发送CAD自身命令
- ffmpeg开发 av_init_packet()和av_new_packet()
- SWT的SHELL样式
- 从 dba_change_notification_reg中拿ip对比本机ip
- mac下创建bash_profile步骤
- strcpy与memcpy区别
- Xcode8 新特性1
- oracle11g客户端首次进入设置问题
- sql获取汉字首字母
- 深入理解Android中的SharedPreferences
- Mac普通用户修改了/etc/sudoers文件的解决办法
- 非常简单的下拉刷新和下拉加载更多效果,仿IOS水滴,效果非常好,集成也很简单。