mysql、mybatis遇到问题集合

1、错误描述

之前没有遇到这个错误,现在是mysql的版本是6.几的版本,之前用的5的版本没有出现该问题:

解决方案:

在连接字符串后面加上?serverTimezone=UTC

其中UTC是统一标准世界时间。

完整的连接字符串示例:jdbc:mysql://localhost:3306/test?serverTimezone=UTC

或者还有另一种选择:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8,这个是解决中文乱码输入问题,当然也可以和上面的一起结合:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC

2、利用springboot集成mybatis的时候发现@Mapper注解不能用,也是因为版本的原因,所以这一块要注意。

3、错误:注解标注在接口还是实现类上面,我将@Service标注在接口上面,结果提示找不到该service类?

@Service注解是标注在接口还是实现类上面?

@Service注解是标注在实现类上的,因为@Service是把spring容器中的bean进行实例化,

也就是等同于new操作,只有实现类是可以进行new实例化的,而接口则不能,所以是加在实现类上的。

一句话:spring容器进行实例化,接口是不能实例化的,只有实现类才可以。

也可以借鉴此博客:

https://blog.csdn.net/qq_35923749/article/details/77159213

原文地址:https://www.cnblogs.com/fengli9998/p/8637703.html

时间: 2024-10-13 02:42:20

mysql、mybatis遇到问题集合的相关文章

Mybatis Collection查询集合只出现一条数据

Mybatis Collection查询集合只出现一条数据 1.原因 如果两表联查,主表和明细表的主键都是id的话,明细表的多条只能查询出来第一条. 2.解决办法 级联查询的时候,主表和从表有一样的字段名的时候,在mysql上命令查询是没问题的.但在mybatis中主从表需要为相同字段名设置别名.设置了别名就OK了. 例子: 主表Standard, 从表StandEntity,均有名为id的字段 <resultMap id="StandardAndEntityResultMap"

as3+java+mysql(mybatis) 数据自动工具(七) - 完结

autoscript packed 文件地址:http://pan.baidu.com/s/1dDvgcO5 如果需要项目源码的话,可以留下邮箱,先声明一下,该工具主要是为了实现自动同步输出代码类文件的功能,所以代码写得并不是很规范什么的,没太大的参考意义,主要还是工具的实用性. 数据类和常量的配置基本就是前面所说明的那些了,现在来说一下怎么执行配置文件.执行配置文件需要写一个批处理文件,格式如下 java -classpath ./lib/*; AutoScript -? 这是一个执行 jav

as3+java+mysql(mybatis) 数据自动工具(六)

这篇来写一些常量定义的实例.我一般在配置常量的时候,都会让 bitOffset = 20,这样是一个比较好的分配,就是每个分组可以有 0xFFFFF(1048575) 个常量,0xFFF(4095) 个分组. 游戏中的客户端和服务端都需要的游戏常量,如下 <macros name="MacroDefine" author="idoublewei" note="常量宏定义"> <macro name="ACCOUNT_R

as3+java+mysql(mybatis) 数据自动工具(五)

现在介绍常量的配置,主要用于客户端(as3)与服务端(java)之间的常量同步,比如错误码.请求标识等 配置格式: <macros name="Macros" groupStart="16" groupEnd="128" bitOffset="20" author="idoublewei" note="宏定义"> <macro name="SEX_MALE&q

mysql+mybatis存储超大json

1. 场景描述 因前端界面需存储元素较多,切割后再组装存储的话比较麻烦,就采用大对象直接存储到mysql字段中,根据mysql的介绍可以存放65535个字节,算了算差不多,后来存的时候发现: 一是基本都中文,mysql用的utf-8存储,每个字符要占用3个字节,剩下就能存2万出头的样子(21845): 二是测试发现这个最大存储2万多字符,不仅仅是一个字段的长度,而是整条记录的所有字段加起来的长度,不够存. 2. 解决方案 2.1 方案说明 采用longtext类型进行存储.longtext也是变

Druid+mysql+mybatis做定时批量操作出现CommunicationsException: Communications link failure

最近使用Druid+mysql+mybatis实现定时批量操作,过一段时间就会抛出 2019-08-21 11:43:51.731 [task-3] ERROR com.alibaba.druid.pool.DruidPooledStatement - CommunicationsException, druid version 1.1.17, jdbcUrl : jdbc:mysql://localhost:3306/bim?serverTimezone=Asia/Shanghai&zeroD

IDEA新建SpringBoot+MySQL+MyBatis+Lombok+Spring Boot DevTools项目

一,IDEA新建SpringBoot+MySQL+MyBatis+Lombok+Spring Boot DevTools项目 1,新建项目的选中项 2,新建后我们需要配置勾选这个自动编译 3,按住shift+alt+ctrl+/,然后选中registry 4,然后选中这个选项 5,然后在 pom.xml文件添加以下代码,开启热部署工具,不配置不生效 <build> <plugins> <plugin> <groupId>org.springframework

mysql+mybatis 插入可递增字段库表操作

mysql本身类型介绍: BIGINT 8 字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值 需求本身id为16位,8字节长度已经完全满足,因此考虑采用数据库自增id来处理,关于性能方面的考虑,后续系统开发过程中,逐步考虑:这里暂且这样使用: 另外: 真正用到的只是两个链接放一下: 一个是建立mysql自增字段 http://www.cnblogs.com/

MyBatis参数传入集合之foreach动态sql

foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合.foreach元素的属性主要有item,index,collection,open,separator,close.item表示集合中每一个元素进行迭代时的别名,index指定一个名字,用于表示在迭代过程中,每次迭代到的位置,open表示该语句以什么开始,separator表示在每次进行迭代之间以什么符号作为分隔符,close表示以什么结束,在使用foreach的时候最关键的也是最容易出错的就是collection属性