zoukankan      html  css  js  c++  java
  • Java配置文件数据库密码加密

    阿里druid数据源配置及数据库密码加密

    注意:

    1、阿里默认只对用户密码解密
    2、druid 1.0.16版本及以上的解密时需要同时配置publicKey

    一.生成密文密码

    1 前提:已经配置了jdk环境

    1、生成密文密码需要准备druid的jar包.然后通过命令行生成,如下步骤:

    1.1准备jar包

    1、(示例使用 druid-0.2.23.jar),放到某目录下,且打开命令窗口(win用户可以在目录的空白处 shift+鼠标右键 打开命令窗口);

    1.2.输入命令:

    java -cp druid-0.2.23.jar com.alibaba.druid.filter.config.ConfigTools you_password

    我要加密的密码是:123456pwd

    注意:druid 1.0.16之前

    java -cp druid-0.2.23.jar com.alibaba.druid.filter.config.ConfigTools 123456pwd  

    注意:druid 1.0.16及以后

    java -cp druid-1.1.9.jar com.alibaba.druid.filter.config.ConfigTools 123456pwd >aaa.txt 

    二、dataSource配置 注意:druid 1.0.16之前

    1.1jdbc.properties

    ## JDBC set
    jdbc.url=jdbc:mysql://localhost:3306/edu_demo?useUnicode=true&characterEncoding=utf-8
    jdbc.username=root
    jdbc.password=Obsbr4gd1oVyYr+k4KQdUMNYgKMWdDibsNJTabnph+yPmxjc6tUrT1GNsPDqa9ZvTF9QvaRD86H+Zn/H+yz2jA==

    1.2dataSource配置

    复制代码
    <!-- 基于Druid数据库链接池的数据源配置 -->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
        <!-- 基本属性driverClassName、 url、user、password -->
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <property name="url" value="${jdbc.url}" />
        <property name="username" value="${jdbc.username}" />
        <property name="password" value="${jdbc.password}" />
        <!-- 配置初始化大小、最小、最大 -->
        <!-- 通常来说,只需要修改initialSize、minIdle、maxActive -->
        <property name="initialSize" value="2" />
        <property name="minIdle" value="2" />
        <property name="maxActive" value="30" />
        <property name="testWhileIdle" value="false" />
        <!-- 配置获取连接等待超时的时间 -->
        <property name="maxWait" value="5000" />
        <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
        <property name="minEvictableIdleTimeMillis" value="30000" />
        <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
        <property name="timeBetweenEvictionRunsMillis" value="60000" />
        <!-- 解密密码必须要配置的项 -->
        <property name="filters" value="config" />
        <property name="connectionProperties" value="config.decrypt=true" />
    </bean>
    复制代码

    注意:druid 1.0.16及以后

    2.1jdbc.properties

    ## JDBC set
    jdbc.url=jdbc:mysql://localhost:3306/edu_demo?useUnicode=true&characterEncoding=utf-8
    jdbc.username=root
    jdbc.password=Obsbr4gd1oVyYr+k4KQdUMNYgKMWdDibsNJTabnph+yPmxjc6tUrT1GNsPDqa9ZvTF9QvaRD86H+Zn/H+yz2jA==
    jdbc.publickey = MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKHGwq7q2RmwuRgKxBypQHw0mYu4BQZ3eMsTrdK8E6igRcxsobUC7uT0SoxIjl1WveWniCASejoQtn/BY6hVKWsCAwEAAQ==

    2.2dataSource配置

    复制代码
    <!-- 基于Druid数据库链接池的数据源配置 -->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
        <!-- 基本属性driverClassName、 url、user、password -->
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <property name="url" value="${jdbc.url}" />
        <property name="username" value="${jdbc.username}" />
        <property name="password" value="${jdbc.password}" />
        <!-- 解密密码必须要配置的项 -->
        <property name="filters" value="config" />
        <property name="connectionProperties" value="config.decrypt=true;config.decrypt.key=${jdbc.publickey}" />
        <!-- 配置初始化大小、最小、最大 -->
        <!-- 通常来说,只需要修改initialSize、minIdle、maxActive -->
        <property name="initialSize" value="2" />
        <property name="minIdle" value="2" />
        <property name="maxActive" value="30" />
        <property name="testWhileIdle" value="false" />
        <!-- 配置获取连接等待超时的时间 -->
        <property name="maxWait" value="5000" />
        <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
        <property name="minEvictableIdleTimeMillis" value="30000" />
        <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
        <property name="timeBetweenEvictionRunsMillis" value="60000" />
    </bean>
    复制代码
  • 相关阅读:
    牛客挑战赛48E速度即转发【带修莫队,分块】
    P3180[HAOI2016]地图【圆方树,莫队,分块】
    Jetty 教程
    Leetcode 238. Product of Array Except Self
    WebService [Debug] undefined element declaration 's:schema'
    WebService [Debug] java.net.BindException: Can't assign requested address
    SQL Server 四种排序, ROW_NUMBER() /RANK() /DENSE_RANK() /ntile() over()
    Leetcode 110 判断二叉树是否为平衡二叉树
    WebService 使用JDK开发WebService
    WebService [Debug] javax.xml.ws.WebServiceException: Undefined port type
  • 原文地址:https://www.cnblogs.com/jiftle/p/13152312.html
Copyright © 2011-2022 走看看