今天在测试一个新的项目,在执行sql查询报表的时候。由于我的sql中带有%,导致在输出日志时报错“java.util.UnknownFormatConversionException: Conversion = '''。

经过分析发现:Java中如何让String.format正常处理%

1,代码示例:

System.out.println(String.format("where  name like % %s","Zhang san"));,

2,执行时报错:

java.util.IllegalFormatFlagsException

3,解决办法1:

使用%%对%进行转义

代码示例:

System.out.println(String.format("where  name like %% %s","Zhang san"));

正确执行时的输出结果:

where  name like % Zhang san

解决办法2:

System.out.println(String.format("where  name like %s %s","%","Zhang san"));

正确执行时的输出结果:

where  name like % Zhang san

其实不用看Conversion = ‘Y’,什么Conversion = ‘I’,Conversion = ‘F’ … 都是这个错误造成的。

第一次遇到这个错误,有点蒙,还查了很久,最后发现是:在格式化输出时,输出字符串的内容不能含有%。如果要输出%,必须进行转义,也就是使用%%代替%

但是我又不能直接修改sql,所以我采用的方式是在输出日志时把%替换成%%

举例:

我的sql是:String sql=“SELECT DATE_FORMAT(date(now()), ‘%Y%m%d%H%i’) AS time_id”

我的日志输出则应该是:Logutil.trace(“我是日志:”+sql.replace("%", “%%”));

解决办法其实很简单,这也是怪我基础知识不扎实,故记之,以后万万不可犯同样的错误。

java conversion_java.util.UnknownFormatConversionException: Conversion = ''';相关推荐

  1. java.util.UnknownFormatConversionException: Conversion = ''';

    今天在测试一个新的项目,在执行sql查询报表的时候.由于我的sql中带有%,导致在输出日志时报错"java.util.UnknownFormatConversionException: Co ...

  2. java.util.UnknownFormatConversionException: Conversion = ‘j‘ || Conversion = ‘D‘ || Conversion = ‘Y‘

    执行内容: String a = "select * from j_question j where j.status = %s and j.title like '%java%'" ...

  3. java.util.UnknownFormatConversionException: Conversion = ‘,‘ 解决

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 报错: 2. 原因: 出错代码: if(info.getRiceCount() <= 0 ...

  4. 解决报错:java.util.UnknownFormatConversionException: Conversion = ‘p‘

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. ssm框架下  报错如题 2. 错误原因:我的情况是,代码中实体属性映射书写和数据库字段名字不 ...

  5. array in java,ArrayList to Array Conversion in Java

    ArrayList to Array Conversion in Java Following methods can be used for converting ArrayList to Arra ...

  6. java.sql.SQLException: Illegal conversion 非法转化

    java.sql.SQLException: Illegal conversion 非法转换 当报这个错的时候,很可能是sql查出来的结果的字段类型和实体类的字段类型不一致,导致封装失败,报错

  7. Cause java.sql.SQLDataException Unsupported conversion from LONG to java.sql.Timestamp

    今天遇到了一个奇怪的错误,报错如下图所示: org.springframework.dao.DataIntegrityViolationException: Error attempting to g ...

  8. 【Java 8 新特性】Java 8 Util API: StringJoiner 详解 | 拼接字符串添加分隔符、前缀和后缀

    Java 8 Util API: StringJoiner 详解 StringJoiner(CharSequence d) StringJoiner.add(CharSequence element) ...

  9. java conversion_java 基本数据类型之间的转换(Conversion between Java basic data types).doc...

    java 基本数据类型之间的转换(Conversion between Java basic data types) java 基本数据类型之间的转换(Conversion between Java ...

最新文章

  1. 区块链研习 | 什么是区块链的链外交易和链内交易
  2. 洛谷 P1410 子序列(DP)
  3. html5效果源码,10款web前端值得学习的 HTML5 效果附源码
  4. centos7下安全访问远程服务器
  5. potplayer 多个进程_操作系统 | 进程同步与进程互斥
  6. Zabbix 源码解析之监控项数据采集流程
  7. LeetCode解题思路—循环排序与原地翻转链表(思维导图)
  8. 哪个服务器支持高并发,IIS Web服务器支持高并发设置方法详解
  9. mssql 不能连接mysql,ASP连接MSSQL的错误:拒绝访问_MySQL
  10. python -- 装饰器的高级应用
  11. linux shell sort多字段排序
  12. CSS、Bulma介绍
  13. android背景置灰,android view置灰(哀悼日)
  14. Java中输入一个整数n,实现n的阶乘
  15. 离职原因体面表达方式
  16. C++ 语言重载运算符
  17. [转贴]迅雷十年反思
  18. 家教o2o平台有哪些
  19. OpenCV双目标定
  20. CDR插件开发之CPG插件001 - 什么是CPG插件

热门文章

  1. ubuntu18.04 使用calibration_camera_lidar 实现激光雷达和相机联合标定
  2. 如何复制表结构、如何复制表数据:
  3. 12.推荐几款好用的搜索引擎
  4. eLife | 利用进化信息预测蛋白质界面间残基-残基相互作用
  5. 【CFD趣谈】如何利用干手器快速烘干双手?
  6. 从巴黎圣母院大火看数据中心运维
  7. amos基础5-CFA验证性因素分析
  8. mybatis-day04-改进多表查询collection配置、延迟加载、缓存、注解开发(★)
  9. 3个窗口卖票java_三个窗口同时卖火车票,如何用代码将该场景实现?
  10. 黑客帝国代码雨怎么弄?(最全,最简单,看完就会)