关于MySQL
当加入了Session依赖
过一会就会产生一条这样的错误信息,虽然不影响程序,但是多多少少有点烦
错误信息:
org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [DELETE FROM SPRING_SESSION WHERE EXPIRY_TIME < ?]; nested exception is java.sql.SQLSyntaxErrorException: Table 'lts.SPRING_SESSION' doesn't exist
原因是SQL里没有SPRING_SESSION
表和SPRING_SESSION_ATTRIB
表
解决方法是在application.yml
里加入以下数据,它会自动在SQL里建表
spring:
session:
store-type: jdbc
jdbc:
initialize-schema: always
吐槽:
这问题消耗了我非常多的时间,具体是为什么呢?很离谱,也非常巧!
2021.8.15:10那是一个阳光明媚的上午,心情愉悦,神清气爽!的开始了日常敲键盘,由于是边学边做项目,我对数据库这方面也不了解,当我写好代码后,启动程序!开始测试!
为什么说巧呢,刚刚开始测试,那个错误信息就出来了,由于我看不懂错误信息就以为代码出bug了,虽然目的达到了,但我忍不了一切错误信息,开始花大量时间检查代码,直到我感觉到不是代码的问题,就开始百度错误信息😭
关于服务
QQ邮箱服务配置
在网上找了很久都不行,最后在Gitee上面找到了解决答案
https://my.oschina.net/zyw205/blog/1918222
废话少说,上配置文件
spring:
mail:
host: smtp.qq.com #发送邮件服务器
username: xxx@qq.com #发送方的QQ邮箱
password: sbeyhaarptcddifa #客户端授权码
protocol: smtp #发送邮件协议
default-encoding: utf-8 #字符编码
from: xxx@qq.com #与上面的username保持一致,主要是在代码中引入,后期换发送方,直接改配置文件就好了
properties:
mail:
smtp:
auth: true
port: 465 #端口号465或587
starttls:
enable: true
required: true
ssl:
enable: true #好像是安全传输
display:
sendmail: 可以任意mail #不知道干啥的
sendname: 可以任意name #不知道干啥的
开启SSL时使用587端口时无法连接QQ邮件服务器