Java连接SAS,与SAS Server交互
运行环境说明
sas-server: 9.4
java: 1.8
springBoot: 2.15
依赖环境准备
进入SAS Server的安装目录下,拷贝以下三个jar包,并上传治maven私服,
jar包内涉及隐私信息,自行上服务器提取。
sas.core.jar
sas.svc.connection.jar
sas.security.sspi.jar
因为使用的SAS 9.4版本的服务,所以上传到maven的版本也定为了9.4
maven引用如下
<dependency>
<groupId>com.sas</groupId>
<artfactId>sas-core</artfactId>
<version>9.4</version>
</dependency>
<dependency>
<groupId>com.sas</groupId>
<artfactId>sas-svc-connection</artfactId>
<version>9.4</version>
</dependency>
<dependency>
<groupId>com.sas</groupId>
<artfactId>sas-security-sspi</artfactId>
<version>9.4</version>
</dependency>
另外还需要添加log4j的依赖,sas的日志输出使用的是log4j
<dependency>
<groupId>log4j</groupId>
<artfactId>log4j</artfactId>
<version>1.2.17</version>
</dependency>
连接SAS Server
连接sasServer需要四个参数,host、port、userName、password
以下为连接使用的代码,按照实际情况进行修改
WorkspaceFactory factory = new WorkspaceFactory();
Properties properties = new Properties();
properties.put("host", "192.168.1.1");
properties.put("port", "8591");
properties.put("userName", "sas");
properties.put("password", "sas*123456");
IWorkspace workspace = factory.createWorkspaceByServer(properties);
获取JDBC连接,并执行sql
JDBC使用的Connection需要使用workspace进行获取,直接看demo代码,
需要注意的是,要先配置libname;如果需要看详细日志,还需要先配置LanguageSerrvice。
libname = libname + 数据库名 + 工作空间路径;
工作空间选择在sas所在的主机先手动创建好,也可以选择使用FileService进行动态创建;
日志主要考虑需要打印的数量;
Connection conn = null;
Statement sta = null;
try{
//配置libname 这里以sas库和C盘test目录为工作空间
String libName = "libname sas 'C://test'";
ILanguageSerrvice libLang = workspace.LanguageSerrvice();
libLang.Submit(libName);
//配置日志 这里以500行为例子
ILanguageSerrvice logLang = workspace.LanguageSerrvice();
logLang.FlushLog(5000);
//获取sas的dataService
IDataService ds = workspace.DataService();
//jdbc逻辑
conn = new MVAConnection(ds, new Properties());
sta = conn.createStatement();
String sql = "create table sas.TEST(nam char(50) label='名称');"
statement.execute(sql);
sql = "insert into sas.TEST values('test01');"
statement.execute(sql);
}finally{
if(sta != null){
sta.close();
}
if(conn != null){
conn.close();
}
}
执行完成后,可以进入到工作空间下(如C://test),查看结果;
双击打开test.sas7bdat文件,可以看到刚刚执行的表结构和数据了。
版权声明:本文为running17原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。