SpringBoot2.0研究中遇到的问题

版权声明:欢迎转载分享,只求注明出处! https://blog.csdn.net/Pagegle/article/details/87091273

1、整合Mybatis,启动提示“No MyBatis mapper was found in '[com.example.demo]' package. Please check your configuration.”

参考资料:https://blog.csdn.net/qinxian20120/article/details/80255976

我是在应用入口类:xxxApplication.java中加入@MapperScan("com.example.demo.dao")注解;

2、项目名设置

使用yml配置文件的时候,在其中添加

server:
  port: 8080
  servlet:
    context-path: /fwmail    #项目名


properties文件配置

server.port=8080
server.servlet.context-path=/xiangmuming

3、连接数据库后报错

java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.

提示系统时区出现错误,可以在mysql中执行命令: set global time_zone='+8:00' 
或者在数据库驱动的url后加上serverTimezone=UTC参数

写代码的时候要注意,如果该参数是‘?’后的第一个,即

<property name="jdbcUrl"> jdbc:mysql://localhost:3306/exam?serverTimezone=UTC </property>
是没有问题的,但如果不是第一个,即

<property name="jdbcUrl"> jdbc:mysql://localhost:3306/exam?characterEncoding=utf8&serverTimezone=UTC </property>
这种写法是会报错的,会提示The reference to entity “serverTimezone” must end with the ‘;’ delimiter. 
运行后控制台也会出现 对实体 “serverTimezone” 的引用必须以 ‘;’ 分隔符结尾。 的错误提示。 
将代码改为

<property name="jdbcUrl"> jdbc:mysql://localhost:3306/exam?characterEncoding=utf8&amp;serverTimezone=UTC </property>
即可。在xml的配置文件中 ;要用 &amp; 代替。

猜你喜欢

转载自blog.csdn.net/Pagegle/article/details/87091273