1. java.lang.IllegalArgumentException: Parameter Maps collection does not contain value for java.lang.Integer
参考: https://blog.csdn.net/u013042707/article/details/79950752
解决办法:mapper.xml 中IDE提示有parameterMap属性而这个属性已经早废弃了且应该使用parameterType,如果不小心写成parameterMap那就中招了!
2. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is 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.] with root cause
解决方法:修改application.yml中添加时区
spring:
datasource:
url: jdbc:mysql://localhost:3306/mysql_java01?serverTimezone=UTC
3. postman post方法发送(适用自己的项目,其他小伙伴不需要参考呢)
4. 创建spring boot项目时经常出现连接failed
在构建 SpringBoot 项目时,因为之前一直是用的默认地址 https://start.spring.io/
可以使用国内的网站进行替代,如:https://start.aliyun.com
5. mysql 启动问题
cmd中输入net start mysql 提示:服务名无效或者MySQL正在启动 MySQL无法启动
D:\Programmer\JavaCollection\MySql5_7\bin>mysqld --install
Service successfully installed.
D:\Programmer\JavaCollection\MySql5_7\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。
D:\Programmer\JavaCollection\MySql5_7\bin>mysql -uroot -p
Enter password:
6. Field studentMapper in com.example.demo1.StudentService required a bean of type 'com.example.demo1.mapper.StudentMapper' that could not be found.
很明显mapper没有加入ioc容器中,service处使用@Autowired拿的时候拿不到,需要使用
@MapperScan("com.example.demo1.mapper")扫描
7. 解决windows下Error:node with name "rabbit" already running on “XXX” 和管理页面打不开问题
安装erl 和 rabittMQ 后 发现rabbit的控制台页面无法打开,启动rabbit,抛如下异常:Error:node with name "rabbit" already running on “XXX”
这个是因为rabbit已经启动了,不能再次启动,通过tasklist指令,发现进程是存在的:tasklist | find /i "erl"
C:\Users\wangq>tasklist | find /i "erl"
erlsrv.exe 7920 Services 0 3,376 K
erl.exe 12828 Services 0 102,272 K
看到有结果,那么说明已经启动了,通过任务管理器kill掉进程再次启动即可
然后再运行 rabbitmq-server.bat 启动即可
ps:还有的情况下重启插件也可以解决,命令如下: rabbitmq-plugins enable rabbitmq_management
然后打开浏览器就可以看到控制台
http://localhost:15672/
8. 编写kafka consumer时,如果自己应答 ack.acknowledge() 则需要添加ack-mode的配置,不然会报错
Caused by: java.lang.IllegalStateException: No Acknowledgment available as an argument, the listener container must have a MANUAL AckMode to populate the Acknowledgment.
ack-mode配置:
spring.kafka.consumer.enableAutoCommit=false
spring.kafka.listener.ack-mode=manual