在JSP页面中写了一个超链接指向一个Servlet类,Servlet类中重定向另一个JSP页面,部署服务器运行后,发现跳转至Servlet时出现404错误,这个问题困扰了我两个小时,终于解决,其实是很小的一个问题
1. 首先想到的是配置路径错误
于是在JSP页面中的href位置尝试了
Servlet名
/Servlet名
/项目名/Servlet名
/包名/Servlet名
/项目名/包名/Servlet名
没有卵用
2. 又想到没有在web.xml文件中配置servlet
结果配置后,连主页的JSP页面都打不开了。遂删除web.xml,利用eclipse自动生成servlet的功能,自动添加注解,不必在web.xml文件另外配置。
重新更新代码,修正一些小错误后,项目成功运行。看来问题就出在这里,至于web.xml为什么会导致jsp页面打不开,暂时还没有解决。
3. 补充两个连接数据库时存在的小问题:
The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone
这是在使用MySQL 8.0以上版本(MySQL连接驱动和版本都是8.0以上)的时候出现的问题错误,mysql默认的是美国的时区,而我们中国大陆要比他们迟8小时,采用+8:00格式。
解决方法:在数据库连接url数据库名的后面添加?serverTimezone=GMT
即可,
比如String url="jdbc:mysql://localhost:3306/product?serverTimezone=GMT";
还有一个错误是找不到JDBC的Driver驱动,解决方法是将 mysql-connector-java-8.0.12.jar 放到WEB-INF的lib里面即可。