java开发windows linux_Windows和Linux下Java程序开发入门

本文介绍了在Windows和Linux环境下使用Java开发C/S结构命令行程序的步骤,包括JDK的安装、环境变量配置、Eclipse项目创建及部署。通过实例展示了查询Oracle数据库并打印结果的操作,同时提供了在Linux中通过cron定时任务执行Java程序的方法。
摘要由CSDN通过智能技术生成

这里,我们探讨的Windows和Linux环境下如果使用Java开发C/S结构的程序(命令行模式)。

案例背景,采购员希望每天定时收到未来三天内到货提醒。我提示采购员可以在ERP系统中查询到,但是他们说麻烦。如果登陆一下系统也闲麻烦的话,估计做这个提醒也不会起什么作用。既然业务部门提出需求,我们就得响应啊。ERP系统在Linux服务器上,使用的是Oracle数据库,通过一句sql很容易查询到未来三天的到货物品明细记录。

开始动手吧。

先安装JDK,并配置好环境变量JAVA_HOME和CLASSPATH,在Windows命令提示符或Linux命令行中输入java –version,能够成功打印java版本信息就说明安装好了。如果你不知道如何配置环境变量,请参照环境变量配置章节。

Windows环境下安装JDK

安装文件jdk-6u3-windows-i586-p.exe,自动安装后,配置环境变量

JAVA_HOME=C:\Program Files\Java\jdk1.6.0_03

CLASSPATH= C:\Program Files\Java\jdk1.6.0_03\lib\dt.jar; C:\Program Files\Java\jdk1.6.0_03\lib\ tools.jar;

Linux环境下安装JDK

安装文件jdk-6u16-linux-i586.rpm

通过命令rpm –ivh jdk-6u16-linux-i586.rpm

然后在/etc/profile中配置环境变量

JAVA_HOME=/usr/java/jdk1.6.0_16;export JAVA_HOME

PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:/opt/ErpQuery/bin/:/opt/ErpQuery/lib/ojdbc14.jar;export CLASSPATH

安装Eclips Java Develpoer版本。

Windows环境

使用Eclips创建一个Java项目ErpQuery

配置lib路径,将ojdbc14.jar添加到项目。

新建ErpQueryMain.java文件

内容如下:

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.Statement;

public class ErpQueryMain {

public static void main(String[] args)

{

System.out.println(“Hello World!”);//还是传统些,打印一下Hello World!吧

try

{

String DB_URL = "jdbc:oracle:thin:@192.168.0.1:1521:erp";

String DB_DRIVER = "oracle.jdbc.driver.OracleDriver";

String DB_USERNAME = "username";

String DB_PASSWORD = "password";

Connection conn = null;

Class.forName(DB_DRIVER);

//建立连接

conn = DriverManager.getConnection(DB_URL,DB_USERNAME,DB_PASSWORD);                                  Statement s = conn.createStatement();

String sql = "select name from dual";

ResultSet rs = s.executeQuery(sql);

System.out.println("采购员");

while(rs.next())

{

System.out.println(rs.getString(1));//打印rs数据集中第一列

}

s.close();

//关闭数据库链接

if(!conn.isClosed()){

conn.close();

}

}

catch(Exception ex){ex.printStackTrace();}

}

}

在Eclips中按Ctrl+S,ErpQueryMain.java会自动编译成ErpQueryMain.class,可以在bin目录下找到。

打开命令提示符,设置好环境变量CLASSPATH,

E:\ErpQuery\bin>

E:\ErpQuery\bin\>set CLASSPATH = .%CLASSPATH%;E:\ErpQuery\bin\;E:\ErpQuery\lib\ojdbc14.jar;

E:\ErpQuery\bin\>echo %CLASSPATH%

E:\ErpQuery\bin\>java ErpQueryMain

我通常的做法是创建一个start.bat批处理文件

set path=C:\Program Files\Java\jdk1.6.0_03\bin;

set CLASSPATH = .%CLASSPATH%;E:\ErpQuery\bin\;E:\ErpQuery\lib\ojdbc14.jar;

java ErpQueryMain

使用start.bat总会有个黑色的命令窗口,如何把他隐藏呢?

办法总是有的,

创建一个start.vbs文件

Set ws = CreateObject("Wscript.Shell")

ws.run "cmd /c start.bat",vbhide

本案例中,不合适,我们只有通过控制台才能看到输出。

Linux环境

我们并不打算在Linux上进行Java程序开发,只需要知道怎么部署就可以了。

将ErpQuery文件夹上传到Linux上,例如/opt/ErpQuery,

配置环境变量CLASSAPTH

[root@localhost opt]#CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:/opt/ErpQuery/bin/:/opt/ ErpQuery /lib/ojdbc14.jar;

[root@localhost opt]#export CLASSPATH

[root@localhost opt]#echo $CLASSPATH

[root@localhost opt]#:/usr/java/jdk1.6.0_16/lib/dt.jar:/usr/java/jdk1.6.0_16/lib/tools.jar:/opt/ErpQuery/bin/:/opt/ErpQuery/lib/ojdbc14.jar

创建start.sh文件

[root@localhost opt]#cd ErpQuery

[root@localhost ErpQuery]#cd bin

[root@localhost bin]#vi start.sh

#!/bin/sh

java ErpQueryMain > data.log

#iconv --from-code UTF-8 --to-code GBK -c data.log > data1.log

[root@localhost bin]# sh start.sh

这就可以了

iconv --from-code UTF-8 --to-code GBK -c data.log > data1.log这一句很重要,默认情况下Linux产生的文件是UTF-8格式的,如果要直接看的话,将显示是乱码,但可以通过iconv命令转换文本文件编码格式。

如果你要在cron中执行java程序,那么还需要做一些设置工作。Cron是Linux下的一个定时器,通过cron执行bash脚本时,并不会加载环境变量,所以要手动配置上。

#这一句很关键,如果不是正确的字符编码的话,通过java程序输出的中文很可能是乱码。

export LANG=zh_CN.GB2312

#定义临时环境变量

JAVA_HOME=/usr/java/jdk1.6.0_16

CLASSPATH=/usr/java/jdk1.6.0_16/lib/dt.jar:/usr/java/jdk1.6.0_16/lib/tools.jar:/opt/ErpQuery/bin/:/opt/ ErpQuery /lib/ojdbc14.jar

#注意参数-classpath要指定

$JAVA_HOME/bin/java -classpath $CLASSPATH ErpQueryMain

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值