单个Java文件连接数据库demo
在用户~目录下,编辑环境变量文件
vim ~/.bash_profile
添加你自己的JDK安装路径,还有postgresql的jar包路径
# JAVA_HOME JDK path
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_351.jdk/Contents/Home
export PATH=$PATH:$JAVA_HOME/bin:.
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
再执行一下这个环境变量文件
source ~/.bash_profile
import java.sql.*;
import java.util.*;
下面是官网的代码事例
Setting up the Class Path
To use the driver, the JAR archive named postgresql-MM.nn.pp.jar
needs to be included in the class path, either by putting it in the CLASSPATH
environment variable, or by using flags on the java command line.
下面这个demo可以直接使用,能运行,改成你自己的库和sql语句就行了
import java.util.Date;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;
import java.util.Properties;
import java.sql.DriverManager;
// import java.sql.PreparedStatement;
// 要是嫌上面引入的这么具体比较麻烦,就可以直接引入*替换上面的所有包。import java.sql.*;import java.util.*;
class MyMethod{
static void myMethod() {
System.out.println("try to connect database!");
} public static void main(String[] args) {
// myMethod();
testConn();
} static void testConn(){
//单个文件测试java连接数据库,测试成功
String url = "jdbc:postgresql://localhost/test";
Properties props = new Properties();
props.setProperty("user", "dm-mac");
props.setProperty("password", "");
// props.setProperty("ssl", "false");//默认就是ssl=false
String pg_driver="org.postgresql.Driver";// 这里是固定写法,官网要求的,驱动就是这么写
try{
Class.forName(pg_driver);
}catch(Exception ex){
//catch异常捕获是语法要求,否则编译不通过。下面的异常捕获也是这样
ex.printStackTrace();
}
// String url = "jdbc:postgresql://localhost/test?user=dm-mac&password=&ssl=false";
try{
// Connection conn = DriverManager.getConnection(url);//获取链接的两种方式
Connection conn = DriverManager.getConnection(url, props);
Statement stm = conn.createStatement();
String sql_sentence="select host_id,host_type,host_name,"+
"dep_id,dep_type,dep_name,idx,date from tb_relation limit 3";
ResultSet res = stm.executeQuery(sql_sentence);
System.out.println("res: "+res.getType()+" :"+res);
System.out.println();
while(res.next()){
//下面就是遍历查出来的数据,拼接输出数据结构
String host_id=res.getString("host_id");
String host_type=res.getString("host_type");
String host_name=res.getString("host_name");
String dep_id=res.getString("dep_id");
String dep_type=res.getString("dep_type");
String dep_name=res.getString("dep_name");
Integer id=res.getInt("idx");
Date date=res.getDate("date");
System.out.println(
"调用方ID:"+host_id+" 调用方类型:"+host_type+" 调用方名称:"+host_name+
" 被调用方ID:"+dep_id+" 被调用方类型:"+dep_type+" 被调用方名称:"+dep_name+
" id:"+id+" 当前时间:"+date);
System.out.println();
}
//释放数据库连接
res.close();
conn.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
单个Java文件连接数据库demo的更多相关文章
- IDEA运行单个Java文件
对于某些Java示例可能是只有单个文件,并不是完整的Java工程,那么要如何运行单个Java文件呢,以IDEA为例. 我的环境: IDEA 2017.3.2 jdk 1.8.0.73 操作步骤: 1. ...
- 单个java文件打成可执行jar包
1 概述 使用JDK自带的jar与java将单个java文件打成可执行jar包并运行. 当然也可以使用IDE完成,使用Maven只需要一个简单的package,但是单个文件嘛,没必要这么"凶 ...
- 使用命令将单个java文件打包为jar
思路:先将java文件编译为class文件,然后再打包为jar 参考博文:https://www.cnblogs.com/sxdcgaq8080/p/8126770.html http://www.m ...
- java 文件读写demo
分析错误日志: import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public ...
- 【java】javac编译多个有依赖关系的java文件为class文件
历史文章: [jar]JDK将单个的java文件打包为jar包,并引用到项目中使用[MD5加密] [java]javac命令在win10不可用,提示javac不是内部或外部命令,也不是可运行的程序[解 ...
- idea中如何将单个java类导出为jar包文件?
idea作为一个java开发的便利IDE工具,个人是比较喜欢的,今天来探索个小功能: 导出单个类文件为jar包! 偶有这种需求,就是某个类文件独立存在,但是需要将其导出为jar,供别人临时使用,或者 ...
- JDK11 | 第五篇 : 启动单个Java源代码文件的程序
文章首发于公众号<程序员果果> 地址 : https://mp.weixin.qq.com/s/h1L4FmzVSix434gVt8Fc7w 一.简介 JEP330-启动单文件代码程序(L ...
- 【jar】JDK将单个的java文件打包为jar包,并引用到项目中使用【MD5加密】
==================================================================================================== ...
- Eclipse JAVA文件注释乱码
将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclipse编码格式不同. 总结网上的建议和自己的体 ...
- myeclipse下java文件乱码问题解决
中文乱码是因为编码格式不一致导致的.1.进入Eclipse,导入一个项目工程,如果项目文件的编码与你的工具编码不一致,将会造成乱码.2.如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文 ...
随机推荐
- VUEX 使用学习五 : getter
转载请注明出处: Getter对Store中的数据进行加工处理形成新的数据.他不会修改state中的原始数据,起到的是包装数据的作用: 有时我们需要从 store 中的 state 中派生出一些状态, ...
- java画海报
package demotest; import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; impor ...
- Java的两个好用的工具包 Apache commons
Apache commons 介绍 这是apache commons lang3的工具类的截图 这个工具,小皮一般用在业务层较多 这是apache commons codec下面的工具 这个工具包,今 ...
- Idea的jdbc菜鸟的自我修养+踩坑经历
离谱了,换了电脑之后装好了mysql,导入了jar包,add了: 但是却找不到db1的表,报错内容:Unknown database 'db1' 他不认识我的数据表了!!!查了很多教程依旧没有解决 ...
- 解析sensor_msgs::PointCloud2 ROS点云数据
1.一个仿真的点云数据 header: seq: 2116 stamp: secs: 1586919439 nsecs: 448866652 frame_id: "LidarSensor1& ...
- C++练习-1 简单输入输出
首先完整代码如下: #include <iostream> #include <string> using namespace std; int main() { int on ...
- vue axios请求中断的处理
https://blog.csdn.net/qiaoqiaohong/article/details/121014296
- Prometheus&Alertmanager告警推送
前言 尽管可以通过可视化数据监控系统运行状态,但我们无法时刻关注系统运行,因此需要一些实时运行的工具能够辅助监控系统运行,当系统出现运行问题时,能够通知我们,以此确保系统稳定性,告警便是作为度量指标监 ...
- [COCI2010-2011#6] STEP
题目大意 维护一个 \(01\) 序列最长的连续相邻两个数不同的子序列的长度 解析 很裸的线段树题... 要维护的信息很多 区间长度 区间最左端点 区间最右端点 区间最长前缀 区间最长后缀 区间最终的 ...
- JZOJ 5346. 【NOIP2017提高A组模拟9.5】NYG的背包
题目 分析 很神奇的贪心 \(Code\) #include<cstdio> #include<algorithm> using namespace std; typedef ...