SSM框架学习——数据库、url-pattern遇到的bug

前言

在学习SSM框架时,导入一个已有项目,修改了mysql等一系列常规配置后,发现要实现简单的运行,也存在着系列的问题,感觉也比较典型,作如下记录。

问题

1. mysql 5 迁移到 mysql 8

# 1. connector jar包
 connector 5.0  ->   connector 8.0
 
# 2. jdbc 驱动更改
‘com.mysql.jdbc.Driver’ -> ‘com.mysql.cj.jdbc.Driver’

# 3. 数据库连接的url更改
jdbc:mysql://localhost:3306/how2java?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai

数据库设置迁移中有几个报错和注意,读者需牢记:

  1. serverTimeZone 大小写注意,错一个都不行。
    报错形式:java.sql.SQLException: No timezone mapping entry for …

  2. serverTimeZone的值设置有讲究,
    报错形式:The server time zone value ‘Öйú±ê׼ʱ¼ä’ is unrecognized

  3. xml中使用实体符号代替直接输入&

否则tomcat报错如下:
ERROR [main] - Context initialization failed
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 26 in XML
document from class path resource [applicationContext.xml] is invalid; nested exception # is org.xml.sax.SAXParseException; lineNumber: 26; columnNumber: 90; 对实体
“serverTimezone” 的引用必须以 ‘;’ 分隔符结尾。

2. 为何需要设置时区?

为什么普通的请求和我的时区也会有关系,时区对程序的影响是什么?

请参考:https://blog.csdn.net/xiuliyan6124/article/details/80630293

mysql窗口中查看自己的时区是跟随系统的,而我们所在时区为东八区,你可以将时区调整为+8,或者将时区设置为Asia/shanghai即可。

jdbc:mysql://localhost:3306/how2java?characterEncoding=UTF-8&serverTimezone=Asia/Shanghai

3. 访问页面后直接返回的是jsp源码
在这里插入图片描述

错误原因:web.xml中url pattern 中 / 和 /*的不同

请参考:https://blog.csdn.net/xiuliyan6124/article/details/80630293

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值