前言:
初学java, 找了好多学习资料,都是直接用开发工具构建。不了解底层原理 总是有点不踏实,学习后 做如下分享,见笑见笑
一、文章知识点
1、java入门之hello world
2、java引入mysql扩展
3、javac编译命令
4、jar打包命令:将java脚本打包成 jar文件
5、打包配置文件: Manifest
6、命令行运行jar文件
二、过程
1、创建文件夹 javaTest
2、创建java文件 HelloWorld.java
代码如下:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
3、编译java代码:用javac命令, 将java文件 编译成 java.class的二进制文件
javac HelloWorld.java
4、运行编译后的文件。看到 输出Hello World
# 注意,不需要加.class后缀
java HelloWorld
5、将二进制文件打包成jar文件
# 新建一个文件 manf(名字可随便取),用于打包配置。
# 写入文件内容,Main-Class 定义jar文件的入口类
# 注意manf文件最后 需要留出一个空行
Manifest-Version: 1.0
Created-By: 1.8.0_241 (Oracle Corporation)
Main-Class: HelloWorld
# jar命令,把编辑文件.class 和配置文件 打包成 jar文件
jar cvfm ./test.jar ./manf HelloWorld.class
6、运行java脚本,可以看到输出
java -jar test.jar
7、连接数据库,代码参考菜鸟教程 https://www.runoob.com/java/java-mysql-connect.html
#下载驱动包,放到项目目录下,下载地址:http://static.runoob.com/download/mysql-connector-java-5.1.39-bin.jar
#重写 HelloWorld.java 文件
#manf 加一行配置 Class-Path: lib/mysql-connector-java-5.1.39-bin.jar
# 执行以下命令测试
javac HelloWorld.java
jar cvfm ./test.jar ./manf HelloWorld.class
java -jar test.jar
最简单的java脚本demo完成。下一篇讲解java的目录结构和多文件的打包
附件:
manf:文件
Manifest-Version: 1.0
Created-By: 1.8.0_241 (Oracle Corporation)
Main-Class: HelloWorld
Class-Path: ./mysql-connector-java-5.1.39-bin.jar
HelloWorld.java 文件
import java.sql.*;
public class HelloWorld {
// MySQL 8.0 以下版本 - JDBC 驱动名及数据库 URL
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://127.0.0.1:3306/rpc_equity?useUnicode=true&characterEncoding=utf-8&useSSL=false";
// MySQL 8.0 以上版本 - JDBC 驱动名及数据库 URL
//static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
//static final String DB_URL = "jdbc:mysql://localhost:3306/RUNOOB?useSSL=false&serverTimezone=UTC";
// 数据库的用户名与密码,需要根据自己的设置
static final String USER = "root";
static final String PASS = "123456";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 打开链接
System.out.println("连接数据库...");
conn = DriverManager.getConnection(DB_URL,USER,PASS);
// 执行查询
System.out.println(" 实例化Statement对象...");
stmt = conn.createStatement();
String sql;
sql = "SELECT id, name, url FROM qz_layout";
ResultSet rs = stmt.executeQuery(sql);
// 展开结果集数据库
while(rs.next()){
// 通过字段检索
int id = rs.getInt("id");
String name = rs.getString("name");
String url = rs.getString("url");
// 输出数据
System.out.print("ID: " + id);
System.out.print(", 站点名称: " + name);
System.out.print(", 站点 URL: " + url);
System.out.print("\n");
}
// 完成后关闭
rs.close();
stmt.close();
conn.close();
}catch(SQLException se){
// 处理 JDBC 错误
se.printStackTrace();
}catch(Exception e){
// 处理 Class.forName 错误
e.printStackTrace();
}finally{
// 关闭资源
try{
if(stmt!=null) stmt.close();
}catch(SQLException se2){
}// 什么都不做
try{
if(conn!=null) conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}
System.out.println("Goodbye!");
}
}