Java Web项目从Windows移植到Linux注意事项
2014-09-02 18:50
423 查看
我将自己做的Java Web项目(CrawlerManage爬虫管理系统)从windows移植到Linux上,遇到不少问题。
1、将数据库连接配置文件(jdbc.propertites)做相应修改,
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/db_crawlerManage?useUnicode=true&characterEncoding=utf8(Linux服务器上的IP和对应的Database)
jdbc.username=jzus(Linux服务器上的数据库用户名)
jdbc.password=mzxwswws(Linux服务器上的数据库密码)
2、将我的Java Web 工程导出为 .war文件(CrawlerManage.war)。
3、将CrawlerManage.war上传到Linux服务的 root@beyond:/opt/apache-tomcat-7.0.52/webapps 目录下,即部署。
具体操作,先进到/apache-tomcat-7.0.52/webapps 目录下,然后输入rz命令,即可选择从windows上传文件到Linux制定目录下。
4、进入/apache-tomcat-7.0.52/bin目录下,然后停启Tomcat,即./shutdown.sh 和 ./startup.sh。
按道理,这样应该就没问题了!!!
浏览器输入登录界面的网址:
http://10.82.81.189:8000/CrawlerManage/Admin_Public_login.action
但是,出现
org.hibernate.exception .SQLGrammarException: could not execute query
..........................................一大推错误
..........................................一大推错误
原因:MySQL 在windows下不区分大小写,但是Linux下区分大小写(包括表名、字段等)
解决方法 No.1(我没采取这种方法,但应该可行。由于我的服务器里面Mysql的配置文件有些乱,有些问题,不是俺装的Mysql,我不采取此方法)
========人家的博客========
http://blog.sina.com.cn/s/blog_6826662b010186ks.html
MySQL在windows下是不区分大小写的,将script文件导入MySQL后表名也会自动转化为小写,结果再想要将数据库导出放到linux服务器中使用时就出错了。因为在linux下表名区分大小写而找不到表,查了很多都是说在linux下更改MySQL的设置使其也不区分大小写,但是有没有办法反过来让windows
下大小写敏感呢。其实方法是一样的,相应的更改windows中MySQL的设置就行了。
具体操作:
在MySQL的配置文件my.ini中增加一行:
lower_case_table_names = 0
其中 0:区分大小写,1:不区分大小写
注意:在修改完my.ini配置文件之后,需要重启mysql服务才能生效。 (计算器->管理->服务和应用程序)
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
1、数据库名与表名是严格区分大小写的;
2、表的别名是严格区分大小写的;
3、列名与列的别名在所有的情况下均是忽略大小写的;
4、变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写
解决方法 No.2(我采取了此方法)
http://www.oschina.net/question/917282_88223
原来在Windows下,每个JavaBean只写@Entity就可以,会默认对应同名的表(不分大小写)。
@Entity
但是在Linux下,区分大小写,必须改为
@Entity
@table(name=”person“)
以明确注明对应的表名为:name=”person“,由于Linux区分大小写。
1、将数据库连接配置文件(jdbc.propertites)做相应修改,
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/db_crawlerManage?useUnicode=true&characterEncoding=utf8(Linux服务器上的IP和对应的Database)
jdbc.username=jzus(Linux服务器上的数据库用户名)
jdbc.password=mzxwswws(Linux服务器上的数据库密码)
2、将我的Java Web 工程导出为 .war文件(CrawlerManage.war)。
3、将CrawlerManage.war上传到Linux服务的 root@beyond:/opt/apache-tomcat-7.0.52/webapps 目录下,即部署。
具体操作,先进到/apache-tomcat-7.0.52/webapps 目录下,然后输入rz命令,即可选择从windows上传文件到Linux制定目录下。
4、进入/apache-tomcat-7.0.52/bin目录下,然后停启Tomcat,即./shutdown.sh 和 ./startup.sh。
按道理,这样应该就没问题了!!!
浏览器输入登录界面的网址:
http://10.82.81.189:8000/CrawlerManage/Admin_Public_login.action
但是,出现
org.hibernate.exception .SQLGrammarException: could not execute query
..........................................一大推错误
..........................................一大推错误
原因:MySQL 在windows下不区分大小写,但是Linux下区分大小写(包括表名、字段等)
解决方法 No.1(我没采取这种方法,但应该可行。由于我的服务器里面Mysql的配置文件有些乱,有些问题,不是俺装的Mysql,我不采取此方法)
========人家的博客========
http://blog.sina.com.cn/s/blog_6826662b010186ks.html
MySQL在windows下是不区分大小写的,将script文件导入MySQL后表名也会自动转化为小写,结果再想要将数据库导出放到linux服务器中使用时就出错了。因为在linux下表名区分大小写而找不到表,查了很多都是说在linux下更改MySQL的设置使其也不区分大小写,但是有没有办法反过来让windows
下大小写敏感呢。其实方法是一样的,相应的更改windows中MySQL的设置就行了。
具体操作:
在MySQL的配置文件my.ini中增加一行:
lower_case_table_names = 0
其中 0:区分大小写,1:不区分大小写
注意:在修改完my.ini配置文件之后,需要重启mysql服务才能生效。 (计算器->管理->服务和应用程序)
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
1、数据库名与表名是严格区分大小写的;
2、表的别名是严格区分大小写的;
3、列名与列的别名在所有的情况下均是忽略大小写的;
4、变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写
解决方法 No.2(我采取了此方法)
http://www.oschina.net/question/917282_88223
原来在Windows下,每个JavaBean只写@Entity就可以,会默认对应同名的表(不分大小写)。
@Entity
但是在Linux下,区分大小写,必须改为
@Entity
@table(name=”person“)
以明确注明对应的表名为:name=”person“,由于Linux区分大小写。
相关文章推荐
- 将windows下到web项目发布到linux中注意事项
- windows上的java web项目移植到Linux上遇到的问题
- 最近在Ubuntu9.04下用tomcat发布一个用java开发的WEB项目(tomcat6+mysql)。在windows下编码完全没问题,到了linux下后,到处一大堆得乱码(主要是针对中文)。上
- Socket程序从Windows移植到Linux下的一些注意事项
- 在linux下用tomcat部署java web项目的过程与注意事项 一.安装JDK 到http://www.oracle.com/technetwork/java/javase/downloads
- 将 Java Web 应用从 Windows 移植到 AIX 时需要注意的问题
- windows平台开发移植到linux部署注意事项
- eclipse javaee版发布web项目的设置注意事项
- C++程序Windows移植Linux注意事项
- linux的maven+turbine+turque java项目移植到windows eclipse的过程记录
- 将 Java Web 应用从 Windows 移植到 AIX 时需要注意的问题
- linux 环境和 windows 环境在部署web项目时注意的问题
- 项目从windows迁移到linux注意事项
- 将一个完整的java web 项目中的部分模块做成Webservice服务注意事项
- Java Project项目在Linux下部署步骤及注意事项
- Socket程序从Windows移植到Linux下的一些注意事项
- Socket程序从Windows移植到Linux下的一些注意事项
- 将 Java Web 应用从 Windows 移植到 AIX 时需要注意的问题
- linux->windows移植注意事项
- linux + ant +java web 项目自动更新测试站点