首先看一下我的基本的开发环境:

操作系统:MacOS 10.13.5

编辑器:IDEA 2018.3

其他:MySQL8.0.15、Maven 3.3.9、JDK 1.8

好,下面就正式开始:

第一步:在IDEA中新建一个maven项目

1.使用骨架创建maven项目,此处选择:maven-archetype-quickstart


2.填入GroupId和ArtifactId


3.第一个选中maven安装的文件夹,第二个选中maven安装文件夹中的conf/settings.xml,第三个如果settings.xml中配置了localRepository,则会自动填入,若没有则会显示默认的本地仓库


4.点击Finish即可成功创建maven项目


第二步:配置pom.xml

在pom.xml中的标签内加入要用到的jar包在仓库中的坐标

1.dom4j的jar包坐标

org.dom4j

dom4j

2.1.1

2.mysql的jar包坐标

mysql

mysql-connector-java

8.0.13

runtime

第三步:创建JDBC.xml配置文件并设置

jdbc:mysql://localhost:3306/mybase?useSSL=false&serverTimezone=CTT

root

123456

在src下创建JDBC.xml,这个xml文件中放置的是数据库连接时要使用的信息,包括url、root、password。因为我使用的是MySQL8.0,所以url和之前版本的有所不同,其中mybase是要连接的数据库的名称,&则是&的转义字符

第四步:创建JDBCUtils和TestJDBCUtils

在com.langsin.jdbcutil包下创建JDBCUtils.java和TestJDBCUtils.java两个文件


第五步:写入JDBCUtils和TestJDBCUtils

package com.langsin.jdbcutil;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import java.sql.*;
public class JDBCUtils {
private JDBCUtils {}
private static Connection con;
static {
try {
//初始化MySQL的Driver类
Class.forName("com.mysql.cj.jdbc.Driver");
//通过dom4j得到xml文件中连接数据库的信息
SAXReader reader = new SAXReader();
Document doc = reader.read("src/JDBC.xml");
Element root = doc.getRootElement();
Element ele = root.element("account");
String url = ele.element("url");
String user = ele.element("user");
String password = ele.element("password");
//连接数据库
con = DriverManager.getConnection(url, user, password);
} catch(Exception e) {
throw new RuntimeException(e + ",数据库连接失败!");
}
}
public static Connection getConnection() {
return con;
}
public static void close(Connection con, Statement state) {
if(con != null) {
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(state != null) {
try {
state.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void close(Connection con, Statement state, ResultSet rs) {
if(con != null) {
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(state != null) {
try {
state.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
package com.langsin.jdbcutil;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class TestJDBCUtils {
public static void main(String[] args) {
Connection con = JDBCUtils.getConnection();
String sql = "SELECT * FROM sort";
//创建PreparedStatement对象,并将sql语句发送到数据库
PreparedStatement pst = con.prepareStatement(sql);
//取得执行后的结果集
ResultSet rs = pst.executeQuery();
//输出sort表中第二列的所有数据
while(rs.next()) {
System.out.println(rs.getString(2));
}
JDBCUtils.close(con, pst, rs);
}
}

好了,到此只要执行程序,控制台上就会输出我们想要的结果了。

如何在jenkins的maven项目中,用mvn命令行指定findbugs的黑名单规则文件

一:问题背景 最近在研究jenkins的过程中,针对maven项目,打算添加findbugs进行静态检查,但我不太想在项目的pom中进行修改,最好可以只修改jenkins的job配置,即配置外部化. ...

如何在maven项目中使用spring

今天开始在maven项目下加入spring. 边学习边截图. 在这个过程中我新建了一个hellospring的项目.于是乎从这个项目出发开始研究如何在maven项目中使用spring.鉴于网上的学习资 ...

Maven项目中Spring整合Mybatis

Maven项目中Spring整合Mybatis 添加jar包依赖 spring需要的jar包依赖 org.springframewo ...

在Maven项目中关于SSM框架中邮箱验证登陆

1.你如果要在maven项目中进行邮箱邮箱验证,你首先要先到pom.xml文件中配置mail.jar,activation.jar包

如何查看Maven项目中的jar包依赖树情况

对于开发人员,我想大家对于Maven应该不会陌生吧,如何在一个Maven项目中对这个项目中所引用的第三方jar包有个直观的了解呢? 其实实现很简单,只需要借助于Maven的一条命令,如下所示: mvn ...

在maven项目中解决第三方jar包依赖的问题

在maven项目中,对于那些在maven仓库中不存在的第三方jar,依赖解决通常有如下解决方法: 方法1:直接将jar包拷贝到项目指定目录下,然后在pom文件中指定依赖类型为system,如: &lt ...

Java项目和maven项目中如何获取&设置配置文件中的属性

通常情况下,我们会在一些配置文件文件中配置一些属性.如: indexPath = E\:\\Tomcat_7.0\\webapps\\ipost_stage\\lucene\\index imgUpl ...

Maven项目中,系统设置的CLASSPATH环境变量问题

在Maven项目中,系统的CLASSPATH环境变量失效了吗?在用Maven开发登录网站时,servlet-api出现错误,jdbc也出现错误,都是ClassNotFoundException,但这两 ...

Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图(转载)

Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图 2017年04月05日 10:53:13 李学凯 阅读数:104997更多 所属专栏: Intellij Idea   ...

随机推荐

教你一招:在PowerPoint中自定义可输入文本的占位符

日常生活中,当我们设计多媒体课件时,默认的版式其实已经够用了.但是,很多时候,我们需要更加个性一点,所以,我们需要自定义很多东西.本文介绍在PowerPoint中自定义可输入文本的占位符. 一.占位符 ...

JavaScript触摸与手势事件

JavaScript触摸与手势事件 发表于 2012-12-10 由 admin iOS版Safari为了向开发人员传达一些特殊信息,新增了一些专有事件.因为iOS设备既没有鼠标也没有键盘,所以在为移 ...

使用IntelliLock加密授权你的.Net程序

原文:使用IntelliLock加密授权你的.Net程序 转自:http://www.nsoff.com/post/2012/05/23/%E4%BD%BF%E7%94%A8IntelliLock%E ...

flask 上传文件

flask upload 近日在学习python,接触到了flask框架,刚好客户有个需求,需要在网页上传一个python 代码的zip包,然后使用docker 容器运行这个zip里面的程序,输出结果 ...

ACM_扩展欧几里德算法

/* 扩展欧几里德算法 基本算法:对于不完全为 0 的非负整数 a,b,gcd(a,b)表 ...

Vue之状态管理(vuex)与接口调用

Vue之状态管理(vuex)与接口调用 一,介绍与需求 1.1,介绍 1,状态管理(vuex) Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态 ...

window7 修改docker安装的machine 位置

win7下安装docker ,默认的machine location 是在C:\users\xx\.docker\machine\machines 下面,为了不占用系统盘,想修改盘符位置 google ...

Spring资源加载器抽象和缺省实现 -- ResourceLoader + DefaultResourceLoader(摘)

概述 对于每一个底层资源,比如文件系统中的一个文件,classpath上的一个文件,或者一个以URL形式表示的网络资源,Spring 统一使用 Resource 接口进行了建模抽象,相应地,对于这些资 ...