使用Java代码实现对宽带的连接
对于多个类似的用户名相同的密码,运行java代码实现对宽带的自动连接
这是源代码:
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; /** * 联网神器 * Process 进程类 * 本机窗口进程,守护进程,Microsoft Windows 上的 Win16/DOS 进程, * 或者 shell 脚本。 * * Runtime 每个 Java 应用程序都有一个 Runtime 类实例, * 使应用程序能够与其运行的环境相连接。 * 可以通过 getRuntime 方法获取当前运行时。 * @author Dante Fung * */ public class NetConnector { public void connect(int no) { // 查看ip // String[] cmd = {"cmd.exe","/C","ipconfig"}; // String cmd = "cmd.exe /C ipconfig"; // 拨号联网 // String[] cmd = {"cmd.exe","/C","rasdial 宽带连接 "}; String cmd = "cmd.exe /c rasdial 宽带连接 lixueyuan0" + no + " 123456"; int exitValue = createProcess(cmd); if( exitValue == 0) { System.out.println("拨号成功!!"); } else { System.err.println("exit value=" + exitValue); } } public int createProcess(String cmd) { Process process = null; try { // 创建一个本机进程 process = Runtime.getRuntime().exec(cmd); } catch (IOException e) { e.printStackTrace(); throw new RuntimeException(e); } // 获取子进程的输入流 :实现注意事项:对输入流进行缓冲是一个好主意。 InputStream in = process.getInputStream(); // 字节字符转换流 InputStreamReader isr = new InputStreamReader(in); // 增加字符缓冲能力 BufferedReader br = new BufferedReader(isr); String line; try { while((line = br.readLine()) != null) { System.out.println(line); } // 0 表示正常终止 int exitValue = process.waitFor(); System.out.println(exitValue); return exitValue; } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } finally { // 关闭资源 try { br.close(); process.getOutputStream().close(); in.close(); isr.close(); } catch (IOException e) { e.printStackTrace(); throw new RuntimeException(e); } } } public boolean ping() { Process process = null; // ping String ping = "cmd.exe /c ping www.baidu.com -n 1"; // 断开网络连接 String disconn = "cmd.exe /c rasdial /DISCONNECT"; int exitValue = createProcess(ping); if(exitValue == 0) { System.out.println("联网成功!!"); return true; } else { System.err.println("联网失败!正在断开连接..."); int exitCode = createProcess(disconn); if(exitCode == 0) { System.out.println("断开连接成功!!"); } return false; } } public static void main(String[] args) { NetConnector connector = new NetConnector(); for(int i = 10; i < 61; i ++) { connector.connect(i); if(connector.ping()) { break; } System.out.println("正在重新尝试连接..."); System.out.println("==========第" + i + "次 拨号连接==========="); } } }
使用Java代码实现对宽带的连接的更多相关文章
- mongodb3.0分片及java代码连接操作测试(开启用户验证)
最近抽时间搭建了一下mongodb简单的分片,整个过程还算是蛮顺利,只不过在用户验证这一块遇到了一些问题,好在最后终于搞定. 一.服务器搭建过程: 1.安装四个mongodb:一个作为config.一 ...
- 用JAVA代码获取Weblogic配置的JNDI 数据源连接
第一步:生成与JDK版本对应的weblogicjar,利用cmd 进入到weblogic_home 路径下进入到server/lib目录,然后运行 JDK 1.6 命令 "java -j ...
- zookeeper - 通过java代码连接zookeeper(2)
首先创建一个Maven项目 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...
- 第3节 sqoop:7、通过java代码远程连接linux执行shell命令
数据库的数据同步软件sqoop 数据同步 关系型数据库到大数据平台 任务:sqoop 是批量导入数据太慢,如何做到实时的数据同步 实时的数据同步工具: canal 阿里开源的一个数据库数据实时同步的软 ...
- JNDI实现服务器(tomcat)与数据库(mysql)连接的数据源配置以及获取连接的java代码
->首先将mysql的jar包导入到tomcat/lib文件夹下 ->然后在tomcat/conf/context.xml文件中配置以下内容 <Resource name=" ...
- mysql数据库的连接以及增删改查Java代码实现(转载)
每天叫醒自己的不是闹钟,而是梦想 数据库: create table t1(id int primary key not null auto_increment,name varchar(32),pa ...
- 远程debug调试java代码
远程debug调试java代码 日常环境和预发环境遇到问题时,可以用远程调试的方法本地打断点,在本地调试.生产环境由于网络隔离和系统稳定性考虑,不能进行远程代码调试. 整体过程是通过修改远程服务JAV ...
- 几种简单的负载均衡算法及其Java代码实现
什么是负载均衡 负载均衡,英文名称为Load Balance,指由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助.通过某种负载分担技 ...
- kettle 使用JAVA代码进行执行
kettle 设计完成之后,可以在设计工具中进行调用,也可以使用java代码进行调用. 1.通过文件方式执行转换. public static void runTransfer(String[ ...
随机推荐
- Thinkphp 3.2中字符串截取
将此方法放到Thinkphp/Common/function.php里/* * 字符串截取函数 * 大白驴 * 2016-11-29 qq 675835721 * */function msubstr ...
- <c:forEach>循环list,一个表格两列数据
参考: http://zhidao.baidu.com/link?url=apG5dUmW7RjB5eOYKSWOWdKd7nxFpkDO4n3i8R6MWYKl7E2JC1OCtPILF4G4EUO ...
- 解决ViewPager多次刷新后重叠问题
@Override public void destroyItem(ViewGroup container, int position, Object object) { ((ViewPager) c ...
- dp 动态规划 hdu 1003 1087
动态规划就是寻找最优解的过程 最重要的是找到关系式 hdu 1003 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 题目大意:求最大字序列和, ...
- Android ADB 用法
adb 全称是 Android Debug Bridge, 就是起到调试桥的作用. 用来操作android设备的 阅读目录 adb 有什么用 借助adb工具, 我们可以管理设备或手机模拟器的状态, ...
- session放入缓存(redis)、DB
为什么要把SESSION保存在缓存 就php来说,语言本身支持的session是以文件的方式保存到磁盘文件中,保存在指定的文件夹中,保存的路径可以在配置文件中设置或者在程序中使用函数session_s ...
- spark2.0.1 安装配置
1. 官网下载 wget http://d3kbcqa49mib13.cloudfront.net/spark-2.0.1-bin-hadoop2.7.tgz 2. 解压 tar -zxvf spar ...
- Codeforces Round #370 (Div. 2) E. Memory and Casinos (数学&&概率&&线段树)
题目链接: http://codeforces.com/contest/712/problem/E 题目大意: 一条直线上有n格,在第i格有pi的可能性向右走一格,1-pi的可能性向左走一格,有2中操 ...
- Hibernate实体关系映射(OneToMany单边)——完整实例
单边一对多关系:电子邮件管理 单边一对多关系:指一方有集合属性,包含多个多方,而多的一方没有一方的引用. 比如:用户(一)与电子邮件(多).一个用户可以有多个电子邮件记录. 目的:通过OneToMan ...
- Coding源码学习第二部分(FunctionIntroManager.m)
接上篇.上篇有一个细节忘了写,在Coding_iOS-Info.plist 里面添加了一个key 是 Status bar is initially hidden Value 是 YES,在appl ...