spring-data-jpa 在Spring的JPA查询中用问号代替unicode(印地语)字符?

f3temu5u  于 2022-11-10  发布在  Spring
关注(0)|答案(2)|浏览(166)

我在JPA查询的where子句中使用了印地语字符。当我在控制台中使用show jpa打印查询时,字符被替换为????
我用过

value="${jdbc.url};databaseName=${jdbc.databaseName};useUnicode=true;characterEncoding=UTF-8"

在jdbc url中,但它不能解决问题。
遵循控制台输出。
休眠模式:选择设施0_.blockId作为列_0_0_,表单xpaths1_.xPath作为列_1_0_,表单xpaths1_.label作为列_2_0_,表单xpaths1_.formxpathScoreId作为列_3_0_,当?='all'时为大小写,当表单xpaths1_.xPath不在列中时为大小写(?,?,?,?)然后转换(浮点数,计数(当facilitysc0_.score =“???”时的大小写,然后以1结束))/CONVERT(浮点数,计数(当设备0_.score =“???”或设备0_.score =“????"或设备0_.score =”“或设备0_.score =”“时的情况,然后1结束))*100 else CONVERT(FLOAT,count(设备sc0_.score =“???”时的情况,然后1结束))/CONVERT(FLOAT,count(设备0_.score =“???”或设备0_.score =“????”时的情况,然后1结束))*100结束其他CONVERT(FLOAT,count(设备sc0_.score =“???”时的情况,然后1结束))/CONVERT(FLOAT,计数(设施0_.score =“???”或设施0_.score =“????”时的情况,然后1结束))*100结束为列_4_0_,?='all'时的大小写,则计数(如果设施0_.score =“???”或设施0_.score =“????”或设施0_.score =“?????”或设施0_.score =“”,则1结束)否则计数(如果设施0_.评分=“???”或设施0_.评分=“????”,则1结束)结束为列_5_0_,计数器(如果设施0_.score =“???”,则1结束)作为col_6_0_从设施得分设施0_.formXpathScoreId = formXpath1_.......................................................................................................................................................表单XpathScoreId内部连接设施上的上次访问数据上次访问2_.上次访问数据Id =上次访问2_.上次访问数据Id,其中表单xpaths1_.formId =?和(格式xpaths1_.type类似于'select_one yes_no %')和((设施0_.(?,?)中的分数)和(在(?,?,?,?)中形成xpaths1_.xPath)或(设施0_.在(?,?,?,?)中得分)和(formxpaths1_.xPath不在(?,?,?,?)中)并且?=“全部”或设施sc0_.score位于(?,?))和(上次访问2_.访问日期介于?和?之间)以及上次访问2_.是活的=1,按设施0_.blockId、表单xpaths1_.xPath、表单xpaths1_.label、表单xpaths1_.formxpathScoreId分组
请帮帮忙。

5lhxktic

5lhxktic1#

尝试将JDBC URL更改为
value="${jdbc.url};databaseName=${jdbc.databaseName};useUnicode=yes;characterEncoding=UTF-8"
注意useUnicode=yes

6l7fqoea

6l7fqoea2#

使用下列connectionProperties启用unicode

useUnicode=yes;
characterEncodinng=UTF-8

默认情况下,参数值是隐藏的,要检查正在绑定的值,应使用www.example.com启用日志记录log4j.properties


# Direct log messages to stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Root logger option

log4j.rootLogger=INFO, stdout

# Hibernate logging options (INFO only shows startup messages)

log4j.logger.org.hibernate=INFO

# Log JDBC bind parameter runtime arguments

log4j.logger.org.hibernate.type=trace

或者导入p6spyjar并spy.properties使用相应的jdbc驱动程序和日志文件位置更新www.example.com。

相关问题