maven项目连接MySQL方式(使用原生的jdbc)

 更新时间:2026年03月12日 10:40:37   作者:小石潭记丶  
文章介绍了如何在项目中添加依赖、组织目录结构、配置数据库连接属性以及编写工具类,并分享了个人经验,鼓励读者参考和支持脚本之家

1.引入依赖

<dependency>

<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.45</version>

</dependency>

2.项目目录结构

jdbc.properties内容

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/shiro?useUnicode=true&characterEncoding=utf-8&useSSL=false

username=root

password=123456

util类

package com.cxb.shiro;


import java.io.IOException;
import java.util.Properties;


/**
 * 获取资源文件的util
 * @author 81046
 *
 */
public class PropertiesUtil {
static Properties properties = new Properties();


    public PropertiesUtil() {
    }
    public static boolean loadFile(String fileName){
        try {
            properties.load(PropertiesUtil.class.getClassLoader().getResourceAsStream(fileName));
        } catch (IOException e) {
            e.printStackTrace();
            return false;
        }
        return true;
    }
    public static String getPropertyValue(String key){
        return properties.getProperty(key);
    }


}
package com.cxb.shiro;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;


public class JdbcUtils {


//通过上面的工具就可以获取到properties文件中的键值从而可以加载驱动 获取链接 从而 可以增删改查
    private static Connection conn = null;




    public static Connection getConn(){
        PropertiesUtil.loadFile("jdbc.properties");
        String driver = PropertiesUtil.getPropertyValue("driver");
        String url = PropertiesUtil.getPropertyValue("url");
        String username  = PropertiesUtil.getPropertyValue("username");
        String password = PropertiesUtil.getPropertyValue("password");


        try {
            Class.forName(driver);
            conn = DriverManager.getConnection(url,username,password);


        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
            close();
        }
        return conn;
    }
    
    
    public static void close(){
        try {
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

}



/**
* 通过用户名到数据库中获取凭证密码
* @param userName
* @return
*/
private static String getPasswordByUserName(String userName) {
//SQL语句  
String sql = "select password from users where username = " +"'" + userName+"'";
    Connection conn = JdbcUtils.getConn();
    Statement stmt=null; 
    ResultSet ret = null;  
    String password=null;
try {
stmt = conn.createStatement();
//执行语句,得到结果集  
ret = stmt.executeQuery(sql);
            while (ret.next()) {  
            //这里只查询的密码
            password = ret.getString(1);  
            }
            ret.close();  
            conn.close();//关闭连接  
} catch (SQLException e1) {
e1.printStackTrace();
}  
return password;
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot应用内存占用分析与优化指南

    SpringBoot应用内存占用分析与优化指南

    本文详细分析了SpringBoot应用内存占用过高的原因,主要包括JVM堆内存、元空间、线程栈内存和直接内存等,通过优化Tomcat线程池配置、调整JVM参数,并结合监控机制,可以有效降低应用内存占用,提高性能和稳定性,需要的朋友可以参考下
    2026-03-03
  • IntelliJ IDEA 2020下载与安装教程图文详解

    IntelliJ IDEA 2020下载与安装教程图文详解

    这篇文章主要介绍了IDEA 2020下载与安装的教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • JavaEE SpringMyBatis是什么? 它和Hibernate的区别及如何配置MyBatis

    JavaEE SpringMyBatis是什么? 它和Hibernate的区别及如何配置MyBatis

    这篇文章主要介绍了JavaEE Spring MyBatis是什么? 它和Hibernate的区别有哪些?如何配置MyBatis?本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • idea无法识别注解,或pom文件异常的问题及解决

    idea无法识别注解,或pom文件异常的问题及解决

    文章介绍了三种解决IDEA无法识别注解或POM文件异常的方法:1.检查省电模式设置;2.为未识别的POM文件添加Maven工程;3.移除并重新添加有问题的模块
    2026-01-01
  • java  线程详解及线程与进程的区别

    java 线程详解及线程与进程的区别

    这篇文章主要介绍了java 线程详解及线程与进程的区别的相关资料,网上关于java 线程的资料很多,对于进程的资料很是,这里就整理下,需要的朋友可以参考下
    2017-01-01
  • SpringBoot配置嵌入式服务器的实操演示

    SpringBoot配置嵌入式服务器的实操演示

    文章介绍了Servlet、Filter和Listener在JavaWeb开发中的作用及生命周期,文章详细说明了如何在SpringBoot中注册Servlet、Filter和Listener,并通过实操演示验证了它们的功能,本文给大家讲解的非常详细,感兴趣的朋友跟随小编一起看看吧
    2025-11-11
  • java五子棋小游戏实现代码

    java五子棋小游戏实现代码

    这篇文章主要为大家详细介绍了java五子棋实现代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 如何区分JAVA中的throws和throw

    如何区分JAVA中的throws和throw

    这篇文章主要介绍了如何区分JAVA中的throws和throw,文中讲解十分详细,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • Java日常练习题,每天进步一点点(5)

    Java日常练习题,每天进步一点点(5)

    下面小编就为大家带来一篇Java基础的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你
    2021-07-07
  • Java Mybatis框架增删查改与核心配置详解流程与用法

    Java Mybatis框架增删查改与核心配置详解流程与用法

    MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO为数据库中的记录
    2021-10-10

最新评论