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不能运行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)