首页 > 数据库 >使用Java替换字符串占位符的几种方法 String url2 = "jdbc:mysql://{0}:{1}/{2}" url2 .format( url2, &quo

使用Java替换字符串占位符的几种方法 String url2 = "jdbc:mysql://{0}:{1}/{2}" url2 .format( url2, &quo

时间:2023-03-14 09:22:23浏览次数:57  
标签:test001 jdbc String 0.1 mysql url2 3306 true

使用Java替换字符串占位符的几种方法
https://blog.csdn.net/m0_67402125/article/details/125383655

import org.apache.commons.lang.text.StrSubstitutor;
import java.text.MessageFormat;
import java.util.HashMap;
import java.util.Map;
public class Test {
    public static void main(String[] args) {
   		//方法一
		String url = "jdbc:mysql://{ip}:{port}/{tenantCode}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai";
       String context = url.replace("{ip}", "127.0.0.1").replace("{port}", "3306").replace("{tenantCode}", "test001");
        System.out.println(context);
		//方法二
        String url1 = "jdbc:mysql://%s:%s/%s?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai";
        String context1 = String.format(url1, "127.0.0.1", "3306", "test001");
        System.out.println(context1);
		//方法三
        String url2 = "jdbc:mysql://{0}:{1}/{2}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai";
        String context2 = MessageFormat.format(url2, "127.0.0.1", "3306", "test001");
        System.out.println(context2);
		//方法四-需要引用commons-lang3或commons-text包
        Map map = new HashMap<>();
        map.put("ip", "127.0.0.1");
        map.put("port", "3306");
        map.put("tenantCode", "test001");	
        StrSubstitutor strSubstitutor = new StrSubstitutor(map);
        String url3 = "jdbc:mysql://${ip}:${port}/${tenantCode}?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai";
        String context3 = strSubstitutor.replace(url3);
        System.out.println(context3);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

结果

jdbc:mysql://127.0.0.1:3306/test001?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai
jdbc:mysql://127.0.0.1:3306/test001?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai
jdbc:mysql://127.0.0.1:3306/test001?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai
jdbc:mysql://127.0.0.1:3306/test001?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&serverTimezone=Asia/Shanghai
  • 1
  • 2
  • 3
  • 4

标签:test001,jdbc,String,0.1,mysql,url2,3306,true
From: https://www.cnblogs.com/sunny3158/p/17213701.html

相关文章

  • JDBC 数据库连接
      一套java代码操作多个数据库 ......
  • jdbc 链接 oracle 查询
    Oracle默认端口号为:1521Stringurl="jdbc:oracle:thin:@localhost:1521:orcl";报错1:ClassNotFoundException:oracle.jdbc.driver.OracleDriver:缺少pom依赖:<depen......
  • Spring JDBC和 事务控制
    SpringJDBC和事务控制1.主要内容2.Spring整合JDBC环境 Spring框架除了提供IOC与AOP核⼼功能外,同样提供了基于JDBC的数据访问功能,使得访问持久层数据更......
  • JDBC--java连接数据库
    什么是JDBCJDBC(javadatabase.connective)它是一套用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种规......
  • JDBC笔记(三):基于JDBC的工具包
    本文主要介绍基于JDBC的两个优秀的工具包,ApacheDBUtils和SpringJDBC的基本应用。1、ApacheDBUtilsDBUtils样例的官网地址:https://commons.apache.org/proper/c......
  • IDEA中使用JDBC连接MySQL数据库报错:No appropriate protocol (protocol is disabled o
    在IDEA中使用JDBC连接MySQL,程序运行之后报错:  定位到第16行:  根据上面报错提示,在url参数字段最前面添加参数 useSSL=false :  再次运行程序,成功连接到......
  • LightDB ltjdbc驱动使用
    LightDB数据库既支持使用pg原生jdbc驱动,也有对应配套的ltjdbc驱动(修复了原生jdbc的若干缺陷,同时有功能增强)。以下为客户端DBeaver使用ltjdbc的使用方法。1.打开D......
  • 12_JDBC
    一.JDBC简介1.什么是JDBC?JDBC就是使用java语言来操作关系型数据库的一套API官方sun公司定义的一套操作所有关系型数据库的规则,即接口;2.JDBC的好处?可随时更换底层......
  • 如何使用JDBC将Cordova应用程序连接到MySQL数据库?
    不建议使用JDBC直接将您的Cordova应用程序连接到MySQL数据库,因为它会带来安全风险.移动设备通常受到安全漏洞的约束,并且从移动应用程序连接到数据库会增加暴露敏感信息的风......
  • JDBC(重点)
    1.数据库驱动驱动:声卡、显卡、数据库我们的程序会通过数据库驱动,和数据库打交道2.JDBCSUN公司为了简化开发人员的(对数据库的统一)操作,提供了一个(Java操作数据库的)规范,俗......