使用mybatis连接mysql_Mybatis连接MySQL时,可以使用的JDBC连接字符串参数

一、举例

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test_db?useAffectedRows=true&allowMultiQueries=true&characterEncoding=utf8&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false&maxReconnects=10

二、JDBC中可以使用的参数

其他常见常用参数(参考自:https://blog.csdn.net/victoylin/article/details/79747156):

UsePerformanceMonitor,userperfmon, perfmon:是否启用性能监视,默认 false

IgnorePrepare:    是否忽略 Prepare() 调用,默认 true

UseProcedureBodies,procedure bodies:是否检查存储过程体、参数的有效性,默认 true

AutoEnlist:    是否自动使用活动的连接,默认 true

TreatTinyAsBoolean:是否将 TINYINT(1) 列视为布尔型,默认 true

AllowUserVariables:是否允许 SQL 中出现用户变量,默认 false

FunctionsReturnString:所有服务器函数是否按返回字符串处理,默认 false

UseAffectedRows:是否用受影响的行数替代查找到的行数来返回数据,默认 false

Keepalive:    保持 TCP 连接的秒数,默认0,不保持。

ConnectionLifeTime:连接被销毁前在连接池中保持的最少时间(秒)。默认 0

Pooling:    是否使用线程池,默认 true

MinimumPoolSize, min pool size:线程池中允许的最少线程数,默认 0

MaximumPoolSize,max pool size:线程池中允许的最多线程数,默认 100

ConnectionReset:连接过期后是否自动复位,默认 false

CharacterSet, charset:向服务器请求连接所使用的字符集,默认:无

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个问题可能是因为控制台所使用的字符集与你的中文字符集不一致导致的。你可以尝试以下解决方法: 1. 在数据库连接字符串中添加 `useUnicode=true&characterEncoding=utf8` 参数,告诉MySQL连接使用UTF-8编码。 2. 在mybatis的配置文件中添加以下参数: ``` <configuration> ... <settings> <setting name="jdbcTypeForNull" value="NULL" /> <setting name="mapUnderscoreToCamelCase" value="true" /> <setting name="logImpl" value="STDOUT_LOGGING" /> <!-- 添加以下两个参数 --> <setting name="defaultExecutorType" value="SIMPLE" /> <setting name="defaultStatementTimeout" value="3000" /> </settings> ... </configuration> ``` 3. 在你的Java代码中将控制台的编码设置为UTF-8: ``` System.setProperty("file.encoding", "UTF-8"); ``` 如果你正在使用Spring Boot,可以在application.properties或application.yml文件中添加以下参数: ``` spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true spring.http.encoding.force=true ``` 希望这些解决方法能够帮助到你。 ### 回答2: 通过MyBatis读取MySQL中的中文数据,在Idea控制台中显示乱码可能是由于以下原因所导致的: 1. 编码设置不正确:MySQL数据库和Idea控制台的编码设置不一致。请确保MySQL数据库表的编码设置与Idea控制台的编码设置一致,例如UTF-8。 2. JDBC连接URL中未指定编码:在数据库连接URL中添加字符编码设置。例如,在连接URL中添加`?useUnicode=true&characterEncoding=UTF-8`。 3. 数据库表的字符集设置不正确:请确保数据库表的字符集设置与Idea控制台一致。可以通过修改表的字符集为UTF-8来解决该问题。 4. MyBatis配置文件中未指定字符集:在MyBatis的配置文件中(如mybatis-config.xml)配置文件中设置字符集为UTF-8。例如,可以在`<configuration>`标签下添加`<properties>`子标签,并在其中添加`<property name="encoding" value="UTF-8"/>`。 5. 数据库驱动版本过低:如果使用的是旧版本的数据库驱动,可能会导致乱码问题。尝试更新驱动程序到最新版本以解决该问题。 总结:要解决MyBatis读取MySQL中文数据在Idea控制台中显示乱码的问题,确保字符编码设置一致,包括数据库表的编码设置、JDBC连接URL中的编码设置、MyBatis配置文件中的编码设置,并使用最新版本的数据库驱动程序。如果问题仍然存在,请尝试使用其他方法获取数据(例如使用Web应用程序,并通过浏览器输出数据)。 ### 回答3: 通过MyBatis读取MySQL中的中文数据在IDEA控制台中显示乱码可能是由于编码不匹配所致。解决这个问题的方法有以下几种: 1. 确保数据库的字符集设置正确,应该选择支持中文的字符集,如utf8或utf8mb4。可以通过修改数据库的配置文件来设置字符集。 2. 在MyBatis的配置文件中,将数据库连接的URL设置为使用正确的字符集。例如,在URL的末尾添加"characterEncoding=utf8"参数。 3. 在MyBatis的配置文件中,将数据源的驱动设置为支持中文的驱动。例如,如果使用的是MySQL数据库,应该选择mysql-connector-java驱动。 4. 在MyBatis的配置文件中,将连接的username和password的连接属性设置为支持中文的编码。例如,可以将它们设置为"username=root&password=123&useUnicode=true&characterEncoding=utf8"。 5. 在IDEA的控制台设置中,检查控制台的字符编码。确保控制台也使用与数据库一致的字符编码。 以上是常见的解决方法,根据具体情况可能需要适当调整。如果仍然无法解决显示乱码的问题,可以尝试搜索相关的错误信息或咨询相关的技术支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值