精华内容
下载资源
问答
  • 我能够正确安装mySQL并安装Java连接器驱动程序.但是,每当我在eclipse中运行程序并尝试从创建的数据库中检索信息时,都会收到以下消息:“需要SSL连接,但服务器不支持”.在这里,我要使用安全的SSL连接运行的代码:`...

    请知道我在数据库领域还很新.我能够正确安装mySQL并安装Java连接器驱动程序.但是,每当我在eclipse中运行程序并尝试从创建的数据库中检索信息时,都会收到以下消息:“需要SSL连接,但服务器不支持”.在这里,我要使用安全的SSL连接运行的代码:

    `public static void main(String [] args){

    String username = "";

    String password = "";

    String dbURL = "jdbc:mysql://localhost:3306/demo"

    + "?verifyServerCertificate=false"

    + "&useSSL=false"

    + "&requireSSL=false";

    try{

    // 1. Get a connection to database

    Connection myConn = DriverManager.getConnection(dbURL, username, password);

    // 2. Create a statement

    Statement myStmt = myConn.createStatement();

    // 3. Execute SQL query

    ResultSet myRs = myStmt.executeQuery("select name from movies");

    // 4. Process the result set

    while(myRs.next()){

    System.out.println(myRs.getString("name") );

    }

    }

    catch(Exception exc){

    exc.printStackTrace();

    }`

    解决方法:

    要启用SSL连接,您的MySQL发行版必须具有SSL支持,如here所述.此外,必须使用正确的SSL-related options来指定适当的证书和密钥文件.

    要检查SSL支持,可以使用以下命令:

    mysqld --ssl --help

    要使用SSL和JDBC与MySQL数据库通信,您应该在JDBC URL中传递一些连接属性:

    String dbURL = "jdbc:mysql://localhost:3306/demo"

    + "?verifyServerCertificate=true"

    + "&useSSL=true"

    + "&requireSSL=true";

    标签:ssl,eclipse,java,mysql

    来源: https://codeday.me/bug/20191027/1945514.html

    展开全文
  • 以下方式配置数据库连接池,使用没问题。现在我想利用RSA算法加密数据库密码“1234”,不知应该做。谢谢!package yxkh.common;import java.sql.Connection;public interface DatabaseConnection {public Connection...

    以下方式配置数据库连接池,使用没问题。

    现在我想利用RSA算法加密数据库密码“1234”,不知应该做。谢谢!

    package yxkh.common;

    import java.sql.Connection;

    public interface DatabaseConnection {

    public Connection getConnection();

    }

    package yxkh.common;

    import java.sql.Connection;

    import java.sql.SQLException;

    import javax.sql.DataSource;

    import org.apache.commons.logging.Log;

    import org.apache.commons.logging.LogFactory;

    public class TeradataConnection implements DatabaseConnection {

    private static Log log = LogFactory.getLog(TeradataConnection.class);

    private DataSource dataSource;

    public TeradataConnection() {}

    public void setDataSource(DataSource dataSource) {

    this.dataSource = dataSource;

    }

    public DataSource getDataSource() {

    return dataSource;

    }

    @Override

    public Connection getConnection() {

    Connection conn = null;

    try {

    conn = dataSource.getConnection();

    } catch (SQLException e) {

    log.error("连接数据库失败", e);

    }

    return conn;

    }

    }

    使用代码

    ApplicationContext ctx = new ClassPathXmlApplicationContext("dataAccessContext.xml");

    DatabaseConnection db = (DatabaseConnection) ctx.getBean("dbConn");

    ...

    展开全文
  • 本文主要介绍直接在配置文件中加密数据库用户名,密码. 再创建数据库链接的时候 解密.步骤如下 1:得到用户名和 密码 加密后的字符串. 有以下方法: 第一种: java -cp druid-1.0.19.jar ...

    本文主要介绍直接在配置文件中加密数据库用户名,密码. 再创建数据库链接的时候 解密.步骤如下

    1:得到用户名和 密码 加密后的字符串. 有以下方法:

    第一种: java -cp druid-1.0.19.jar com.alibaba.druid.filter.config.ConfigTools 用户名/密码

    使用此方法 会随机生成秘钥对进行加解密.配置的时候需要在配置文件中配置publicKey.

    第二种方式:直接调用ConfigTools的encrypt()方法进行加密.此方法使用的是ConfigTool默认的秘钥对.不需要再配置文件额外指定.

     

    2:druid 开启加密之后默认会对密码进行加解密操作.如果需要额外加密用户名,可以扩展DruidDataSource类.重写setUsername()方法.

    3:配置数据源连接方式

    至此大功告成

    展开全文
  • 一、Druid号称是Java语言中最好的数据库连接池。1) 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。2) 替换DBCP和C3P0。...

    一、Druid号称是Java语言中最好的数据库连接池。

    1) 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。

    2) 替换DBCP和C3P0。Druid提供了一个高效、功能强大、可扩展性好的数据库连接池。

    3) 数据库密码加密。直接把数据库密码写在配置文件中,这是不好的行为,容易导致安全问题。DruidDruiver和DruidDataSource都支持PasswordCallback。

    4) SQL执行日志,Druid提供了不同的LogFilter,能够支持Common-Logging、Log4j和JdkLog,你可以按需要选择相应的LogFilter,监控你应用的数据库访问情况。

    5) 能够提供基于Filter-Chain模式的插件体系。

    二、配置实现

    Druid对密码的加密解密是自动实现的。

    1)对用户名密码加密

    java -cp D:/druid-1.0.27.jar com.alibaba.druid.filter.config.ConfigTools root

    java -cp D:/druid-1.0.27.jar com.alibaba.druid.filter.config.ConfigTools 123456

    执行完成以后会分别生成加密的用户密码以及对应的公钥和私钥。

    2)重写DruidDataSource

    packagecom.acts.web.common.persistence;

    importcom.alibaba.druid.filter.config.ConfigTools;

    importcom.alibaba.druid.pool.DruidDataSource;

    /**

    * 数据库用户名加密

    * 创建者 xx

    * 创建时间 2018年2月15日

    *

    */

    public class DruidConnectionProvider extends DruidDataSource {

    private static final longserialVersionUID= 1377390212442554779L;

    private static StringpublicKey= "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKfkK2hgtAKuV3uuU1wjo0kyuCFcf4QXxF4+zFUYWf4a5s6CJneKGzwE+onpUL3tsa3SB1Q1HtIlykXO+g7hlkECAwEAAQ==";

    @Override

    public voidsetUsername(Stringusername) {

    try {

    username= ConfigTools.decrypt(publicKey,username);

    } catch (Exceptione) {

    e.printStackTrace();

    }

    super.setUsername(username);

    }

    }

    3)配置dataSource

    4)配置persistence-mysql.properties文件

    mysql.driverclass=com.mysql.jdbc.Driver

    mysql.jdbcurl=jdbc:mysql://192.168.1.191:3306/itstyle?characterEncoding=UTF-8

    mysql.user=iMNLTD842UfibiwKGgU4wWo8Gmf0wjb8HFkXmt1+S0XZ/3MdKhZx+TiApcXCCsIJGdrSr1a3vy6ugfLuHISZoQ==

    mysql.password=ZuLa1c/7gIzx8ZBzJy9PqfOlXFBdpebcNxMTblktk907JO9HDU/cMxq3tM7kKDsh+UBBYeALM/J+/38kSFU/9w==

    MaxActive=30

    MinIdle=5

    Filters=stat

    TimeBetweenEvictionRunsMillis=300

    publickey = MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIOP8F1IDaIAqfzWMEccNxodnSXT0Z0ya3KCXKYxgvLz0WrEq1z7ilTfrOjfC6/HvPUIWjP6RZVIy5G2Rzn9W+cCAwEAAQ==

    展开全文
  • 重写连接池的setPassword()方法. 写密文解析成明文. [code="java"] public synchronized void setPassword(String password) { super.setPassword(Crypto.decrypt(password)); } [/code] ...
  • : 1.0.27mysql版本:5.5java -cp D:/druid-1.0.27.jar com.alibaba.druid.filter.config.ConfigTools passworddb.prop文件配置#数据库驱动connection.driverClass=com.mysql.jdbc.Driver#数据库连接urlconnection....
  • 一、Druid号称是Java语言中最好的数据库连接池。1) 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。2) 替换DBCP和C3P0。...
  • Druid是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池!并且支持使用密码加密...
  • 作者:月光中的污点原文链接:https://www.extlight.com/2017/12/16/Java-%E5%AE%9E%E7%8E%B0%E5%8A%A0%E5%AF%86%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%9E%E6%8E%A5/一、前言在很多项目中,数据库相关的配置文件内容都...
  • 我正在尝试使用JDK 1.8和MySQL Connector / J版本5.1.23安全地连接到Amazon RDS,我对MySQL Connector/J documentation中的说明感到困惑.说明指出在当前目录中创建信任库并导入服务器的CA证书.当我运行以下命令时,我...
  • 二、实现思路我们都知道项目启动时,Spring 容器会加载配置文件并读取文件中的内容,那么我们可以下边步骤操作:通过 DES 算法加密连接数据库的账号和密码并将加密后的密文写到 db 配置文件中。在 Spring 读取 db ...
  • 数据库配置文件加密

    2017-08-19 10:02:36
    前言使用连接数据库加密的话,都会使用一个配置文件在配置文件中对数据库链接进行读写,通过加密方法把链接写到配置文件,然后读取的时候再使用解密方法。1、xml配置<!--引入属性文件 --> <!-- <contex
  • 数据库连接加密

    2017-02-27 13:47:00
    在实际项目中,经常需要对数据库连接池的相关配置加密,比如说数据库的密码,下面介绍两种加密和解密方法 一,重写数据库连接池 import org.apache.commons.codec.binary.Base64; import org.apache.commons....
  • 二、实现思路我们都知道项目启动时,Spring 容器会加载配置文件并读取文件中的内容,那么我们可以下边步骤操作:通过 DES 算法加密连接数据库的账号和密码并将加密后的密文写到 db 配置文件中。在 Spring 读取 db ...
  • druid对数据库连接进行加密

    千次阅读 2016-05-18 14:40:36
    项目开发中数据库密码明文写在配置文件里很不安全,我看网上有好多人利用代码进行加密解密,但是考虑到java代码是可以反编译的,如果考虑反编译的话加代码混淆更麻烦. 因为数据库连接是用的druid,阿里巴巴的,功能很...
  • 二、实现思路我们都知道项目启动时,Spring 容器会加载配置文件并读取文件中的内容,那么我们可以下边步骤操作:1) 通过 DES 算法加密连接数据库的账号和密码并将加密后的密文写到 db 配置文件中。2) 在 Spring 读取...
  • druid配置数据库密码加密后,可以把密码放在配置文件里,或本地其他文件、远程服务器等三种地方,这里只讲第一种方法。 1.密码加密:cd到druid包所在文件夹打开命令行,输入java -cp druid-1.1.9.jar ...
  • 需求背景我们在开发应用时,需要连接数据库,一般把数据库信息放在一个属性配置文件中,比如java的mysql连接往往是这样jdbc.properties的代码jdbc.url=jdbc\:mysql\://127.0.0.1/messageboardsjdbc....
  • 原文:数据库密码配置项都不加密?心也太大了!...## 配置MySQL数据库连接 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://121.196.xxx.xxx:3306/u...
  • 背景数据库连接配置文件一般都是使用明文,这会带来数据库泄露的安全问题。例如jdbc.properties配置文件中,数据库连接地址、用户名、密码都是明文,如何使配置文件中的数据库连接信息避免明文显示是本文重点内容,...
  •   SpringBoot项目经常将连接数据库的密码明文放在配置文件里,安全性就比较低一些,尤其在一些企业对安全性要求很高,因此我们就考虑如何对密码进行加密。   jasypt 是一个简单易用的加解密Java库,可以快速集成...
  • Spring Boot最大的特点就是自动配置了,大大的减少了传统Spring框架的繁琐配置,通过...接下来一起来看看如何实现配置加密文件并且成功连接数据库的。配置信息加密有好几种方式,这里我只详细的写一下我比较常用的...
  • 数据库连接配置文件一般都是使用明文,这会带来数据库泄露的安全问题。例如jdbc.properties配置文件中,数据库连接地址、用户名、密码都是明文,如何使配置文件中的数据库连接信息避免明文显示是本文重点内容,即...
  • ## 配置MySQL数据库连接 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://121.196.xxx.xxx:3306/user?useUnicode=true&characterEncoding=u...
  • Java连接加密后的Access数据库

    千次阅读 2008-05-08 14:41:00
    本文中的Access数据库加密,是采用独占... 采用ODBC方式(无须配置数据源)连接Access数据库,相关的主要代码:String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=数据库文件所在路径;U
  • 我们的工程项目往往是使用云...我们在开发应用时,需要连接数据库,一般把数据库信息放在一个属性配置文件中,比如java的mysql连接往往是这样 jdbc.properties的代码 jdbc.url=jdbc\:mysql\://127.0.0.1/messag...
  • 1:客户段与MySQL服务端之间,是否使用加密...(2)创建用户的时候,使用 REQUIRE 子句,指定此用户连接数据库的时候,必须使用加密连接。例如: create user if not exists 'user01'@'%' identified by 'user01passwo
  • 以下方式配置数据库连接池,使用没问题。 现在我想利用RSA算法加密数据库密码“1234”,不知应该做。谢谢! [code="java"] 地址/CLIENT_CHARSET=cp936,TMODE=TERA,CHARSET=ASCII,LOB_SUPPORT=off,...
  • 应运维的要求,项目在生产环境中时,配置文件...由于使用的druid数据库连接池,它自带对密码的加密功能,以下是使用过程。 使用druid-1.1.6.jar包中的ConfigTools工具类对您的数据库密码进行加密! 命令如下: java ...

空空如也

空空如也

1 2 3 4 5 ... 12
收藏数 239
精华内容 95
关键字:

java数据库连接配置加密

java 订阅