java怎么在linux环境下调用sqlldr的命令

java怎么在linux环境下调用sqlldr的命令,第1张

import javaioBufferedReader;

import javaioFileWriter;

import javaioIOException;

import javaioInputStream;

import javaioInputStreamReader;

public class TestLinux {

/

@param args

/

public static void main(String[] args) {

// TODO Auto-generated method stub

// /szrpp_files/clPath

//写控制文件ctl

String fileRoute = "/home/test/";//文件地址路径

String fileName = "test2015txt";//数据文件名

String tableName = "test_table";//表名

String fieldName = "(name,userpwd,sex)";//要写入表的字段

String ctlfileName = "ctltestctl";//控制文件名

stlFileWriter(fileRoute,fileName,tableName,fieldName,ctlfileName);

//要执行的DOS命令

String user = "scott";

String psw = "123";

String Database = "//127001:1521/ORCL";

String logfileName = "logtextlog";

Executive(user,psw,Database,fileRoute,ctlfileName,logfileName);

}

/

写控制文件ctl

@param fileRoute 数据文件地址路径

@param fileName 数据文件名

@param tableName 表名

@param fieldName 要写入表的字段

@param ctlfileName 控制文件名

/

public static void stlFileWriter(String fileRoute,String fileName,String tableName,String fieldName,String ctlfileName)

{

FileWriter fw = null;

String strctl = "OPTIONS (skip=0)" +

" LOAD DATA INFILE '"+fileRoute+""+fileName+"'" +

" APPEND INTO TABLE "+tableName+"" +

" FIELDS TERMINATED BY ','" +

" OPTIONALLY ENCLOSED BY \"'\"" +

" TRAILING NULLCOLS "+fieldName+"";

try {

fw = new FileWriter(fileRoute+""+ctlfileName);

fwwrite(strctl);

}

catch (IOException e)

{

eprintStackTrace();

}

finally {

try

{

fwflush();

fwclose();

}

catch (IOException e)

{

eprintStackTrace();

}

}

}

/

调用系统DOS命令

@param user

@param psw

@param Database

@param fileRoute 文件路径

@param ctlfileName 控制文件名

@param logfileName 日志文件名

/

public static void Executive(String user,String psw,String Database,String fileRoute,String ctlfileName,String logfileName)

{

InputStream ins = null;

//要执行的DOS命令

String dos="sqlldr "+user+"/"+psw+"@"+Database+" control="+fileRoute+""+ctlfileName+" log="+fileRoute+""+logfileName;

//Linux环境下注释掉不需要CMD 直接执行DOS就可以

//String[] cmd = new String[]

//{ "cmdexe", "/C", dos }; // Windows环境 命令

try

{

Process process = RuntimegetRuntime()exec(dos);

ins = processgetInputStream(); // 获取执行cmd命令后的信息

BufferedReader reader = new BufferedReader(new InputStreamReader(ins));

String line = null;

while ((line = readerreadLine()) != null)

{

String msg = new String(linegetBytes("ISO-8859-1"), "UTF-8");

Systemoutprintln(msg); // 输出

}

int exitValue = processwaitFor();

if(exitValue==0)

{

Systemoutprintln("返回值:" + exitValue+"\n数据导入成功");

}else

{

Systemoutprintln("返回值:" + exitValue+"\n数据导入失败");

}

processgetOutputStream()close(); // 关闭

}

catch (Exception e)

{

eprintStackTrace();

}

}

}

本篇文章介绍了java软件包的下载,环境搭建,及 *** 作过程中出现的常见问题,昌平电脑培训在此进行汇总,希望对大家有所帮助。

搭建步骤

1安装配置

A在官网上下载jdk;

B在本地安装下载的jdk软件;

C配置环境变量:右击“我的电脑”-->选择“属性”-->“高级系统设置”-->“环境变量”;

D在d出的对话窗口中,在”系统变量”部分,点击”新建”(下面一个新建按钮),d出”新建系统变量”对话框,在变量名中输入%JAVA_HOME%,在变量值中输入jdk安装路径,例如:d:/java/jdk18,点击”确定”按钮;

E在系统变量中,找到Path变量,点击编辑”按钮”,d出”编辑系统变量”对话框,将光标选中变量值输入框,并且移动到输入框最前端,并输入以下内容:

%JAVA_HOME%\lib;%JAVA_HOME%\lib\toolsjar

说明:%JAVA_HOME%即为第4步配置的变量,代表了jdk的安装路径,配置在Path中,是为了让计算机能够找到java相关的命令,因为 *** 作系统是从Path配置的路径中寻找命令;

在Path中还可以配置其他软件的命令,需要注意的是所有命令中间必须用分号(;)相隔,保证配置内容的完整性。

3安装测试

打开运行窗口(window+r),在窗口中输入cmd,打开cmd窗口,输入命令java-version

显示出java版本信息,即表示安装成功

二常见错误

1jdk下载版本出错

A在jdk的官网上,首先是按照 *** 作系统进行分类,主要是Linux和windows系统下的不同版本;

B其次是计算机处理器不同所需版本不同,下载jdk之前,应先知道计算机处理器是哪种类型,一般来说都是64位或者32位,在官网上都有相应的版本,64位的jdk名称内都有x64字样,而32位的jdk名称内都有x86字样;

C最后是jdk版本的问题,作为一门企业级的编程语言,java一直在不断的升级,相应的jdk也一直在更新,如果下载了不适合本地其他软件或实际需求的jdk,那么很可能会造成软件不兼容的问题,也会在程序中存在bug的隐患,所以在选择jdk版本时一定要考虑实际开发环境,根据实际需求来选择。

2jdk环境配置出错

AJAVA_HOME配置出错:jdk的安装目录下会有jre文件夹,通常只配置到bin和lib文件夹所在目录(即jre上级目录),在后续配置中引入JAVA_HOME变量即可,如%JAVA_HOME%/bin;

B在JAVA_HOME的变量值中,不能有标点符号,否则会路径出错;

C在编辑Path变量时,每一项变量之间都要有分号进行分割,否则 *** 作系统会将两个变量当做一个变量来处理,所以为了安全起见,在path的变量值的最前面或最后面配置java路径,同时用逗号分割,避免直接插入造成混淆;

D配置完成后切记点击确定按钮保存配置;

E配置完成后,在cmd命令窗口进行测试一定要使用java-version,否则没有效果。

3不当的卸载 *** 作

A在安装jdk后,控制面板中的程序内会出现JavaSEDevelop字样的程序,这些程序无需用户进行手动升级或手动设置,不要随意进行卸载;

B配置好jdk后,尽量避免更改jdk的安装路径,否则系统会找不到java相关名令,如果修改了jdk的安装路径,则将%JAVA_HOME%的变量值替换为新路径即可。

jdk环境变量没有设置完整,还需要把jdk安装目录下\jre\bin 目录配置在path中。和java home没有关系,直接在path添加路径是一样的,用java home只是方便管理。

把java中\jre\bin 目录配置在path中的步骤如下:

1、找到对应版本的jre,双击打开

2、单机bin目录,上方会出现路径名称,复制该路径名

3、在环境变量中粘贴复制过来的路径,确定保存即可。

然后再检查一下是否可以运行,在命令窗口中输入javac,出现如下画面,及设置成功

扩展资料:

JDK包含的基本组件包括:

javac – 编译器,将源程序转成字节码

jar – 打包工具,将相关的类文件打包成一个文件

javadoc – 文档生成器,从源码注释中提取文档

jdb – debugger,查错工具

java – 运行编译后的java程序(class后缀的)

appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。

Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。

Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。

Jconsole: Java进行系统调试和监控的工具

参考资料:

百度百科-环境变量

以上就是关于java怎么在linux环境下调用sqlldr的命令全部的内容,包括:java怎么在linux环境下调用sqlldr的命令、昌平电脑培训分享Java环境搭建及常见错误、Java环境变量已设置,在命令提示符中输入Java可以运行,但Javac不能运行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9515626.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存