帮我写一个程序,我需要打成jar包到服务器运行,我的需求是,程序运行会读取我的输入,我的输入为一个sql语句,而输出是语句的执行结果
时间: 2024-04-11 12:33:31 浏览: 47
当然可以帮你写一个Java程序,将其打包成JAR文件并在服务器上运行。以下是一个示例程序:
```java
import java.sql.*;
public class ExecuteSQL {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/database_name"; // 替换为你的数据库连接URL
String username = "your_username"; // 替换为你的数据库用户名
String password = "your_password"; // 替换为你的数据库密码
String sql = readUserInput(); // 从用户输入中获取SQL语句
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立数据库连接
Connection conn = DriverManager.getConnection(url, username, password);
// 创建Statement对象
Statement stmt = conn.createStatement();
// 执行SQL语句
ResultSet rs = stmt.executeQuery(sql);
// 处理结果集
while (rs.next()) {
// 根据具体的表结构获取数据
String column1 = rs.getString("column1");
int column2 = rs.getInt("column2");
// ...
// 输出数据
System.out.println(column1 + "\t" + column2);
}
// 关闭连接和释放资源
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
private static String readUserInput() {
// 读取用户输入的SQL语句,可以使用Scanner等方式进行获取
return "SELECT * FROM table_name"; // 示例中使用静态SQL语句,你可以根据实际需求修改
}
}
```
请注意,上述代码是一个简单的示例,需要根据你的具体情况进行修改。确保替换URL、用户名和密码,以及根据你的表结构修改结果集处理部分的代码。`readUserInput()`方法用于读取用户输入的SQL语句,你可以根据实际情况使用不同的方式获取输入。
将上述代码保存为`ExecuteSQL.java`文件,并使用JDK编译该文件得到`ExecuteSQL.class`文件。然后,将`ExecuteSQL.class`文件和所需的JDBC驱动程序打包成一个JAR文件。
在服务器上运行JAR文件时,可以使用以下命令:
```bash
java -cp your_jar_file.jar ExecuteSQL
```
其中,`your_jar_file.jar`是你打包的JAR文件名。
希望以上代码能够满足你的需求!如果你有任何其他问题,请随时提问。
阅读全文