用Eclipse打包jar程序直接运行(1.源码)_hanCSDN_20130817
来源:互联网 发布:pojdijkstra算法 编辑:程序博客网 时间:2024/04/30 03:14
1.编写java程序。
package com.my.util;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;public class MyDBUtil {private String driverClass;private String username;private String password;private String url;public MyDBUtil() {}public MyDBUtil(String driverClass, String username, String password,String uRL) {this.driverClass = driverClass;this.username = username;this.password = password;this.url = uRL;}public Connection getOracleJDBCConnection() throws Exception {Connection conn = null;try {Class.forName(driverClass);conn = DriverManager.getConnection(url, username, password);} catch (Exception e) {e.printStackTrace();}return conn;}public static void main(String[] args) {MyDBUtil db = new MyDBUtil("oracle.jdbc.driver.OracleDriver", "scott", "tiger", "jdbc:oracle:thin:@localhost:1521:myorcl");try {db.getOracleJDBCConnection();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}/** * 关闭数据库连接 */public void CloseConnection(Connection conn, Statement st, ResultSet rs) {try {if (st != null) {st.close();st = null;}} catch (Exception e) {e.printStackTrace();} finally {try {if (rs != null) {rs.close();rs = null;}} catch (Exception e) {e.printStackTrace();} finally {try {if (conn != null) {conn.close();conn = null;}} catch (Exception e) {e.printStackTrace();}}}}public String getDriverClass() {return driverClass;}public void setDriverClass(String driverClass) {this.driverClass = driverClass;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}}
package com.my.action;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.util.Properties;import org.apache.log4j.Logger;import org.apache.log4j.PropertyConfigurator;import com.my.util.MyDBUtil;public class MyAction {public static Logger logger = Logger.getLogger(MyAction.class);private static Connection connetConnection = null;private static ResultSet rs = null;private static PreparedStatement psmtSelect = null;public static void doSomeQuery() {Properties props = null;PropertyConfigurator.configure(System.getProperty("user.dir")+ "/config/log4j.properties");String filePath = System.getProperty("user.dir")+ "/config/application.properties";try {InputStream is = new BufferedInputStream(new FileInputStream(filePath));props = new Properties();props.load(is);} catch (FileNotFoundException e1) {e1.printStackTrace();} catch (IOException e) {e.printStackTrace();}String driverClass = props.getProperty("oracleDriver");String username = props.getProperty("oracleUsername");String password = props.getProperty("oraclePassword");String uRL = props.getProperty("oracleUrl");String sql = props.getProperty("oracleSql");MyDBUtil myDBUtil = new MyDBUtil(driverClass, username, password, uRL);try {connetConnection = myDBUtil.getOracleJDBCConnection();psmtSelect = connetConnection.prepareStatement(sql);logger.info(sql);rs = psmtSelect.executeQuery();boolean titleFlag = false;while (rs.next()) {ResultSetMetaData rsmd = rs.getMetaData();int numberOfColumns = rsmd.getColumnCount();if(!titleFlag){titleFlag = true;for (int i = 0; i < numberOfColumns; i++) {System.out.print(rsmd.getColumnName(i+1) + " ");}}System.out.println();for (int j = 0; j < numberOfColumns; j++) {System.out.print(rs.getObject(j+1) + " ");}}} catch (Exception e) {e.printStackTrace();} finally {myDBUtil.CloseConnection(connetConnection, psmtSelect, rs);}}}
package com.my.run;import com.my.action.MyAction;public class Main {/** * @param args */public static void main(String[] args) {MyAction.doSomeQuery();}}
#oracleoracleDriver=oracle.jdbc.driver.OracleDriveroracleUrl=jdbc:oracle:thin:@localhost:1521:myorcloracleUsername=scottoraclePassword=tigeroracleSql=select * from DEPT
log4j.rootLogger=INFO,Console,Filelog4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.layout=org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=%d{ISO8601}: %m%nlog4j.appender.File=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.File.File=d:\myUtil.loglog4j.appender.File.MaxFileSize=10MBlog4j.appender.File.MaxBackupIndex=2log4j.appender.File.layout=org.apache.log4j.PatternLayoutlog4j.appender.File.layout.ConversionPattern=%d{ISO8601}: %m%nlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target=System.outlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
2.编写manifest.mf
Manifest-Version: 1.0Main-Class: com.my.run.MainClass-Path: lib\log4j-1.2.15.jar lib\commons-dbcp-1.2.2.jar lib\ojdbc14-10.2.0.3.0.jar
- 用Eclipse打包jar程序直接运行(1.源码)_hanCSDN_20130817
- 用Eclipse打包jar程序直接运行(2.Eclipse打包步骤)_hanCSDN_20130818
- 用Eclipse打包jar程序直接运行(3.Eclipse打包总结)_hanCSDN_20130821
- 用eclipse将Hadoop程序打包成jar及直接设定参数运行
- 用Eclipse打包直接生成.jar文件
- 用Eclipse打包直接生成.jar文件
- eclipse jar打包程序
- Java源码打包成可运行JAR:Eclipse实现
- MAVEN打包可直接运行的jar
- spring boot打包jar直接运行
- 021_在Eclipse Indigo中安装插件hadoop-eclipse-plugin-1.2.1.jar,直接运行wordcount程序
- 用Eclipse导出能直接运行的jar包
- java程序在Eclipse打包成jar程序并在机器中用bat运行
- javaSWing程序命令行和IDE运行没有问题,打包成jar后直接双击运行部分功能不行
- eclipse中直接查看jar文件源码
- eclipse打包成可运行.jar文件
- eclipse打包成可运行.jar文件
- 直接加java程序打成jar运行
- adb server出现异常无法调试程序
- ExtJs4.0的 数据模型刨析(Anatomy of a model)
- uva-1427 Parade (单调队列优化dp)
- 高效求幂取余 算法,复杂度 log(n)
- ubuntu12.04创建程序的快捷方式
- 用Eclipse打包jar程序直接运行(1.源码)_hanCSDN_20130817
- Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
- ZOJ1001 A + B Problem
- CoreData NSPredicate 查询、搜索
- 前台jsp向后台java文件传递数据的方法
- JVM调优总结(十) -调优方法
- windows编程调试错误信息
- Android界面适配机制
- 重点:数组