1.在使用Tomcat部署一些東西時,你會遇到返回碼500,比如下麵部署jspgou商城報錯 這時候你需要仔細檢查一下,有沒有和配置文件上面的一一應。 下麵用jspgou商城舉例: 一、在mysql資料庫中創建jspgou資料庫(推薦使用此資料庫名,否則參照第二條修改對應的資料庫鏈接信息),字元集為 ...
1.在使用Tomcat部署一些東西時,你會遇到返回碼500,比如下麵部署jspgou商城報錯
Type Exception Report
Message Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Could not open connection
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Could not open connection
org.springframework.orm.hibernate4.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:544)
org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:373)
org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:447)
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:277)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
com.sun.proxy.$Proxy30.getWebsite(Unknown Source)
com.jspgou.core.web.WebsiteFilter.doFilter(WebsiteFilter.java:35)
org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:151)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
com.jspgou.common.web.ProcessTimeFilter.doFilter(ProcessTimeFilter.java:31)
這時候你需要仔細檢查一下,有沒有和配置文件上面的一一應。
下麵用jspgou商城舉例:
一、在mysql資料庫中創建jspgou資料庫(推薦使用此資料庫名,否則參照第二條修改對應的資料庫鏈接信息),字元集為utf-8,
二、更改資料庫鏈接,程式包內ROOT\WEB-INF\config\jdbc.properties文件第20行左右
jdbc.url=jdbc:mysql://127.0.0.1:3306/創建好的資料庫名?characterEncoding=UTF-8
jdbc.username=登錄資料庫用戶名
jdbc.password=登錄密碼
三、將壓縮包內 DB文件中jspgou.sql文件導入至創建好的jspgou資料庫中,如導入中出現執行sql語句過長問題,請修改
[root@localhost ~]# vim /etc/my.cnf
在[mysqld]下麵添加如下列:
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[root@localhost ~]# cp -r ROOT/ /data/application/tomcat/webapps/
#因為我已經將目錄拷貝到Tomcat預設的訪問目錄下了,所以我們修改的配置文件應該去/data/application/tomcat/webapps/ROOT下麵找
[root@localhost ~]# cd /data/application/tomcat/webapps/ROOT/WEB-INF/config/
[root@localhost config]# vim jdbc.properties
輸入你自己的資料庫密碼,而且你資料庫裡面庫的名字一定要和jdbc.url裡面的保持一致jdbc.url=jdbc:mysql://127.0.0.1:3306/創建好的資料庫名?characterEncoding=UTF-8
修改完後保存退出,並重啟相應的服務就可以了。
如果重啟服務還是顯示500的返回碼,那就重啟虛擬機
[root@localhost ~]# reboot now #重啟虛擬機
[root@localhost ~]# systemctl stop firewalld #關閉防火牆
[root@localhost ~]# setenforce 0 #關閉selinux
[root@localhost ~]# systemctl restart mysqld #重啟資料庫
[root@localhost ~]# /data/application/tomcat/bin/startup.sh #啟動Tomact服務
Using CATALINA_BASE: /data/application/tomcat
Using CATALINA_HOME: /data/application/tomcat
Using CATALINA_TMPDIR: /data/application/tomcat/temp
Using JRE_HOME: /usr/local/java
Using CLASSPATH: /data/application/tomcat/bin/bootstrap.jar:/data/application/tomcat/bin/tomcat-juli.jar
Tomcat started.
你們的評論和點贊是我寫文章的最大動力,蟹蟹。