- 浏览: 395738 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
tyjdzr:
程序已经运行成功,第一次接触webservice,楼主领我入门 ...
java实现webservice实例 -
guosongchao:
楼主介绍的确实简单,但是对于我这种对web service一点 ...
java实现webservice实例 -
gnail_oug:
...
java实现webservice实例 -
safedriver:
楼主真心不错
java实现webservice实例 -
Partys:
Partys 写道addArticleCategories(C ...
RESTful Web Services in Spring 3(上)
package com.chinacahe.LogContrast.ssh; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import org.apache.commons.io.FileUtils; import org.apache.log4j.Logger; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import ch.ethz.ssh2.Connection; import ch.ethz.ssh2.SCPClient; import com.chinacahe.LogContrast.base.LognameIntoDB; import com.chinacahe.LogContrast.base.RemoteFileGetter; import com.chinacahe.LogContrast.Constants; public class SPZRemoteFileGetter implements RemoteFileGetter{ Logger logger = Logger.getLogger(getClass()); private String ip; private int port; private String path; private String dev_id; private String dev_name; private String date; ApplicationContext context = new ClassPathXmlApplicationContext( new String[] { "classpath*:applicationContext*.xml" }); public void getRemoteFile() { LognameIntoDB lognameIntoDB=(LognameIntoDB)context.getBean("lognameIntoDB"); Connection connection = null; List<String> lognames=new ArrayList<String>(); try { connection = new Connection(ip, port);//远程服务器IP,端口 connection.connect();//建立连接 boolean isAuthenticated = connection.authenticateWithPassword( Constants.LOGIN_USER, Constants.LOGIN_PASSWORD);//服务器用户名,密码 if (!isAuthenticated) { throw new IOException("Authentication Failed."); } logger.info("Connecting to "+ ip + ":" + port + "successful"); SCPClient client = new SCPClient(connection); try{ String servlogname=new File(path).getName();//path是服务器的文件名路径 client.get(path, Constants.TEMP_DIR+ File.separator);//Constants.TEMP_DIR+ File.separator:要存入的本地目录 if(new File(Constants.TARGET_DIR+File.separator + servlogname).exists()){ new File(Constants.TARGET_DIR+File.separator + servlogname).delete(); } FileUtils.moveFileToDirectory( new File(Constants.TEMP_DIR+ File.separator + servlogname), new File(Constants.TARGET_DIR), false); } catch(Exception e){ logger.info("catching file "+ ip + ":" + port + ":" + path + " failed " + e.getMessage()); } logger.info("Finished "+ ip + ":" + port); } catch(Exception e){ logger.info("Failed connecting to "+ ip + ":" + port); } finally{ if(connection != null){ connection.close(); } } } public void run() { getRemoteFile(); } public List<String> parseFiletoList(String filename){ File file = new File(Constants.TARGET_DIR+ File.separator + filename); List<String> lognames=new ArrayList<String>(); try { InputStream is = new FileInputStream(file); BufferedReader reader = new BufferedReader(new InputStreamReader(is)); String line; int index = 0; while ((line = reader.readLine()) != null) { index++; lognames.add(line); } } catch (Exception e) { e.printStackTrace(); } return lognames; } public String getIp() { return ip; } public void setIp(String ip) { this.ip = ip; } public int getPort() { return port; } public void setPort(int port) { this.port = port; } public String getPath() { return path; } public void setPath(String path) { this.path = path; } public String getDev_id() { return dev_id; } public void setDev_id(String devId) { dev_id = devId; } public String getDev_name() { return dev_name; } public void setDev_name(String devName) { dev_name = devName; } public String getDate() { return date; } public void setDate(String date) { this.date = date; } }
执行远程服务器的系统命令并获取内容:
boolean isAuthenticated = connection.authenticateWithPassword(user, password);
logger.info("Connecting to " + ip + ":" + port + "successful");
Session sess = connection.openSession();
sess.execCommand("/usr/local/squid/bin/rotateBilling.sh -v");
InputStream stdout = new StreamGobbler(sess.getStdout());
BufferedReader br = new BufferedReader(new InputStreamReader(stdout));
StringBuffer sb = new StringBuffer();
while (true) {
String line = br.readLine();
if (line == null)
break;
sb.append(line);
}
if (sb.toString().indexOf("0.0.4") < 0) {
sess.close();
connection.close();
logger.error(selectdev + ":" + dev_name + ":" + ip + ":" + errortime
+ ": shell file version isn't 0.0.4");
return;
}
sess.close();
评论
发表评论
-
spring框架下配置lucene
2012-02-21 15:34 8586最近这的是投入不少精力在lucene身上,学到一点心得,留此文 ... -
Task Scheduling Simplifications in Spring 3.0
2011-05-19 14:47 2568简单说下基本配置: applicationContex ... -
安装ActiveMQ
2011-04-18 10:28 1186安装activeMQ前先升级jdk到6U24 cd /App ... -
ECLIPSE远程DEBUG
2011-04-18 10:07 1414在服务器上添加监听端 ... -
apache的commons-net实现FTP上传,下载文件
2011-04-15 11:25 2681不多说,上代码: package com.book.s ... -
tdd:测试驱动WEB组件
2011-04-05 21:37 1689相信大家有好多人会使用JUNIT进行单元测试了,但是在WEB开 ... -
利用GeneratedKeyHolder获得新建数据主键值
2010-12-24 14:37 7084有时候我们向DB新插入一条数据,都需要获取对应的主键值。在采用 ... -
dbunit解决XML数据中必须表首行有相应字段问题
2010-11-30 09:51 1690DbUnit设计理念: 熟悉单 ... -
jMock Cookbook 中文版
2010-04-29 10:06 2026他娘的,中文版啊!爽,坚决分享! 这里不多介绍JMOC ... -
linux下配置JDK,tomcat
2010-02-26 15:34 999转自:http://blog.csdn.net/strivem ... -
hsqldb
2010-02-25 00:02 1208import java.sql.Connection; im ... -
RESTful Web Services in Spring 3(下)
2010-02-23 13:44 5580上一篇我主要发了RESTful Web Services in ... -
RESTful Web Services in Spring 3(上)
2010-02-23 10:19 11240通过本文,我将介绍REST的特点,基本设计原则及其简单讲解,最 ... -
spring3实现MVC的rest
2010-02-07 15:21 8486首先配置WEB.XML: <?xml versi ... -
使用 Spring 2.5 基于注解驱动的 Spring MVC
2010-02-07 13:09 848来自地址:https://www.ibm. ... -
log4j配置
2010-01-28 14:07 1118<!-- logging begin--> ... -
java中org.apache.commons.digester类用法
2010-01-28 10:52 1469xml文件内容: <?xml version=& ... -
lucene的索引建立及查找
2010-01-27 11:03 999package lucene; import org.a ... -
java实现webservice实例
2010-01-25 18:48 131645今天下午突然想研究下WEBSERVICE,从网上找了好多实例, ... -
Hibernate批量插入的方法
2010-01-22 14:46 1455Session session = sessionFact ...
相关推荐
Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。 设定字符串为“张三,你好,我是李四” 产生张三的密钥对(keyPairZhang) 张三生成公钥(publicKeyZhang...
Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。 设定字符串为“张三,你好,我是李四” 产生张三的密钥对(keyPairZhang) 张三生成公钥(publicKeyZhang...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
3在Spring中使用org.springframework.jdbc.support.lob.OracleLobHandler处理Oracle数据库的Blob类型字段。 通过这样的设置和配置,我们就可以象持久化表的一般字段类型一样处理Blob字段了。 以上是Spring+...
156、在jsp:useBean语法中使用beanName有何好处? 37 157、当我使用时,在浏览器的地址栏没有改变? 37 158、如何转换JSP 0.9版本的文件到JSP1.1? 37 160、JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么...
存储在使用 Windows DPAPI 加密加密的本地文件中。 概述 有时,出于安全原因,客户端不希望在 Service Now 的实例中存储本地联网机器的凭据。 当 MID 服务器启动某些需要访问客户端机器并必须通过 SSH、SNMP 或 ...
5.6.2 添加密钥到授权密钥文件中 5.7 unison的使用 5.7.1 本地使用unison 5.7.2 远程使用unison 5.7.3 unison参数说明 5.7.4 通过配置文件来使用unison 5.8 本章小结 第6章 ext3文件系统反删除利器...