IDEA时区怎么设置, java后端查询乱码,
提示(跟时区有关系)
我认为的可能性,
前端没问题,mysql时区没问题
1.在外网下载的IDEA,导致时区非中国格式,
mysql时区
ChatGPT给出的解决方案,但idea没有所需的配置
ChatGPT给出的结论查找:
(1)
(2)
遇到这种情况,只能在中国IDEA官网重新下载,安装,有的IDEA版本可以调整,有的不行,重装解决一切问题
settings里面搜charset,设置正确的字符集,与前端、db保持一致
这个和时区没关系吧,是你前端、后端、数据库的字符集不一致导致的
1.把项目相应的依赖导入:
<!-- 添加mybatis依赖 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <!-- 添加mybatis/spring整合包依赖 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.0</version> </dependency> <!-- 添加mysql驱动依赖 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql-driver.version}</version> </dependency>
在build中写入插件
<!--mybatis逆向工程--> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin>2.编写generatorConfig.xml配置文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!-- 制度MySQL驱动包的路径,别放在中文路径xia --> <classPathEntry location="E:\dormitory\dormitory_maven\mysql\mysql-connector-java\5.1.38\mysql-connector-java-5.1.38.jar"/> <context id="context1"> <commentGenerator> <!--是否取消注销 --> <property name="suppressAllComments" value="true"/> </commentGenerator> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/mydb?characterEncoding=utf-8" userId="root" password="123456"> </jdbcConnection> <!-- 所生成的实体类的位置默认资源包src --> <javaModelGenerator targetPackage="st.personal.entity" targetProject="src/main/java"></javaModelGenerator> <!--所生成的sqlMapper的映射文件位置,默认资源包src --> <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"></sqlMapGenerator> <!--配置到接口生成信息 --> <javaClientGenerator targetPackage="st.personal.dao" type="XMLMAPPER" targetProject="src/main/java"></javaClientGenerator> <!--为表生成代码tableName:表名,schema:不用填写 --> <table tableName="userinfo" enableCountByExample="false" enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" selectByExampleQueryId="false"></table> <table tableName="collection" enableCountByExample="false" enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" selectByExampleQueryId="false"></table> </context> </generatorConfiguration>
写好配置文件之后,配置运行:点击edit configurations
打开之后在左边的+号添加maven-->填写配置信息:command line(命令行):
mybatis-generator:generate -e
配置完后点击OK,再运行该配置文件就可以了。
针对您遇到的问题,可能是由于IDEA的时区设置不正确导致的。解决方案如下:
以下是代码演示如何在查询语句中指定时区:
Statement statement = connection.createStatement();
String sql = "SET time_zone='Asia/Shanghai';SELECT * FROM table";
ResultSet rs = statement.executeQuery(sql);
chatGPT又在胡扯了,别理他,你只要保证后端字符集正确就行。
先 看下你的数据库URL上是否添加了 ?useUnicode=true&characterEncoding=UTF-8
。
然后再看下你的idea控制台的字符设置 ,在 File -> Setting -> Editor -> General -> Console 中