1.第三方jar包的导入
虽然pom.xml文件配置依赖maven可以帮我们下载很多jar包,但是少数的jar包maven仓库获取不到,需要我么自己手动去下载,那么就有自己手动导入。
Project Structure > Libraries
2.配置文件的存放
连接数据库的访问信息都存在了db.properties中,在JavaEE的存放地址是放在src的根目录下,而maven的web项目结构不太一样,
所以在main目录下创建一个resources目录,将db.properties放置在resources,项目build的时候才会把资源文件打包到WEB-INF/classes下
3.连接数据库的url参数
url=jdbc:mysql://localhost:3306/website?serverTimezone=UTC&characterEncoding=UTF-8</pre>
在linux上的javaweb项目没有报错,但是win10下maven项目报错了,因为时差因素相差8个小时
报错内容
java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecognized or represents</pre>
解决方案就是在后面加上serverTimezone=UTC,我是解决了,有人把他改为asia/shanghai,若后面遇到这个问题我在来更新这部分时差因素会有什么结果
4.又是奇怪的错误
org.apache.jasper.JasperException: 无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]
解决方案:网上看了一大堆,把jar包下载下来然后把tld文件放在web-inf下面,,,看得我云里雾里,有这么复杂吗?
好了,说下maven的解决方案,没有加一个dependency解决不了的问题,这时候发现maven的好处了,虽然他给我带来很多没遇过的bug。
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency></pre>
5.又是奇怪的错误+1
org.apache.jasper.JasperException: 未能加载或实例化TagLibraryValidator类:[org.apache.taglibs.standard.tlv.JstlCoreTLV]
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>jstl-impl</artifactId>
<version>1.2</version>
</dependency>
添加这个jstl-impl的jar包,成功解决