1. 程式人生 > >在linux環境下搭建java web測試環境(非常詳細!!)

在linux環境下搭建java web測試環境(非常詳細!!)

一.專案必備軟體及基本思路

專案必備:
虛擬機器:VMware Workstation (已安裝linux的 CentOS6.5版本)
專案:java web專案 (必須在本地部署編譯後選擇專案的webRoot,改為ROOT(ROOT包含下面四個關鍵檔案),放到tomcat下的webapps下即可,因為tomcat啟用一個工程的時候,就是釋出了除了JSP以外的,所有已被編譯過的java檔案,所以只能放在本地部署生成編譯後的class檔案)。
java環境配置:配置JDK
伺服器:tomcat
資料庫:MySQL

基本思路:(特別注意各處的編碼設定)
1.配置java環境(下載jdk並配置環境變數)
2.下載並安裝tomcat   (設定tomcat編碼)


3.安裝mysql並匯入sql(注意:mysql客戶端和伺服器端編碼設定,必須設定完再匯入sql,這個折騰了好久)
4.專案匯入並修改資料庫連線配置
5.啟動mysql,啟動tomcat,訪問即可!

VMware tools小介紹:
現在的centOS已安裝了VMware tools (實現主機和虛擬機器之間檔案的共享拖拽功能),其餘專案所需都沒有安裝。只有在VMware虛擬機器中安裝好了VMware Tools,才能實現主機與虛擬機器之間的檔案共享,同時可支援自由拖拽的功能,滑鼠也可在虛擬機器與主機之前自由移動(不用再按ctrl+alt),且虛擬機器螢幕也可實現全屏化。

二.具體操作

1.判斷是否可以連網


(我用的是NAT模式,只要宿主主機(相當於路由器)網路通,只要配置DNS即可,這種只能在虛擬機器本地訪問,在宿主主機無法訪問到內部專案。改用DHCP橋接模式即可,具體見 http://blog.csdn.net/heirenheiren/article/details/17795951
>ifconfig (查詢虛擬機器主機ip) eth0表示現在用的網絡卡名稱
>ping www.baidu.com (看網路是否通)
如何設定centOS上網?詳見
http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/05/3001148.html 結合
http://jingyan.baidu.com/article/fc07f9891d186512ffe51935.html

2.將centOS的yum源更新為國內的阿里雲源 (方便下載和安裝軟體包)
第一步:備份你的原映象檔案,以免出錯後可以恢復。
>mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
第二步:下載新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 6 (6系列)
>wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
第三步:執行yum makecache生成快取 (管理安裝包,下次安裝直接找到安裝包即可)
>yum clean all
>yum makecache

3.下載java環境(java runtime environment )
(1)如果是安裝 openjdk不用配置java_home 和 CLASSPATH PATH環境變數 (我們採用的是這個)
>yum search java (找到 java-1.7.0-openjdk.x86_64 )
>yum install java -1.7.0-openjdk.x86_64
>java -version //顯示ok,安裝配置成功
(2)安裝 jdk-7u21-linux-i586.rpm (安裝目錄 /usr/java/jdk1.6.0_21 )
> rpm  -ivh  jdk-7u21-linux-i586.rpm
配置環境變數,在/etc/profile中加入JAVA_HOME CLASSPATH PATH環境變數。
[[email protected]  jdk1.7.0_21]# vi /etc/profile
在最後加入
  JAVA_HOME=/usr/java/jdk1.6.0_21
  CLASSPATH=.:$JAVA_HOME/lib/tools.jar
  PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME CLASSPATH PATH

如果之前安裝有opensdk,需要另外做處理。


4.下載tomcat7.0(免安裝版)
(1)啟動linux自帶的火狐瀏覽器,搜尋tomcat下載到桌面,解壓到/usr/local

[[email protected]  Desktop]# tar –xzf  apache-tomcat-7.0.29.tar.gz                           //解壓
[[email protected] Desktop]# mkdir /usr/local/tomcat                              //在usr/local下新建tomcat目錄
[[email protected] ~]# cp –rf  apache-tomcat-7.0.29  /usr/local/tomcat   //拷貝至 tomcat下
(2) 設定Tomcat編碼,配置Tomcat伺服器編碼為UTF-8:(這個很重要!!)
開啟tomcat安裝目錄下的conf/server.xml檔案,(大約在69行處)
將8080埠的<connector></connector>標籤中設定成 URIEncoding=”UTF-8”。 
如:
<Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" URIEncoding="UTF-8" />
(3) 啟動Tomcat 
 [[email protected] bin]# ./startup.sh   
使用瀏覽器訪問 http://localhost:8080,出現tomcat預設頁面,說明已經安裝成功

小知識複習:
之後的專案就放在tomcat資料夾下的webapps下
*.tar.gz:tar程式打包的資料而且用gzip壓縮過。
(1)-c 壓縮(2)-x 解壓(3)-t 檢視tar的檔案(4)-v 壓縮的過程中顯示檔名(5)-f 使用檔名,一般後面直接加檔名(6)-z 用gzip方式壓縮

5.下載並安裝mySQL
(1)安裝mysql

>yum search mysql
>yum install mysql.x86_64 mysql-server.x86_64
(2)設定mysql密碼(詳情請參見 http://blog.knowsky.com/193552.htm
預設情況下MySQL沒有設定密碼
(可通過檢查埠是否開啟來檢視MySQL是否正常啟動:
[[email protected] yuanyuan]#netstat -anp|grep 3306
tcp        0     0 0.0.0.0:3306               0.0.0.0:*                   LISTEN      34693/mysqld )

> service mysqld start                             //啟動mysql服務 
> mysql -uroot -p                                   //登入
>vim /etc/my.cnf                                   //加上 --skip- grant-tables 跳過授權表的驗證,可以直接登陸MySQL伺服器
>service mysqld restart                          //重啟mysql服務
> mysql -uroot -proot                            //登入,設定密碼
> vim /etc/my.cnf                                 //將跳過設定密碼的註釋掉
>service mysqld restart                        //重啟
(3)設定資料庫編碼格式(這個非常重要)
> vim /etc/my.cnf
//設定mysql客戶端和伺服器端的預設編碼!!!!
在[client]下新增
default-charater-set=utf8
在[mysqld]下新增
collation_server = utf8_general_ci
character_set_server = utf8
儲存退出後重啟mysqld
看一下效果:
mysql> show variables like 'character_set_%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
或者一開始都是latin時,使用
mysql>set character_set_database=utf8
(4)建立資料庫dh_test並匯入dh.sql
mysql>create database dh_test
>show database //檢視是否建立成功
>mysql -uroot -p dh_test < dh.sql 或者用 mysqldump -u userName -p  dabaseName  > fileName.sql //匯入sql
>show tables //查看錶是否建立成功
>select * from user //檢視中文顯示是否ok


6.web專案部署,配置專案連線的資料庫名和使用者名稱密碼
將專案在本地編譯後,整個webroot下的檔案放到linux下的/usr/local/tomcat 下的webapps下,webroot改為root
>cd ROOT/WEB-INF/classes/config/properties/database.properties
修改資料庫名為dh,使用者名稱和密碼與mysql設定的一致!!!

7.啟動mysql,啟動tomcat
>service mysqld start
>./startup.sh
>tail -fn 300 ../logs/catalina.out

啟動成功,專案釋出完畢!!
在linux的火狐瀏覽器即可訪問該專案, 輸入 localhost即可
(不過需要提前在tomcat安裝目錄下conf/server.xml進行設定,可見 http://blog.csdn.net/defonds/article/details/4192953

 

三.相關的linux命令

普及一下wget,rpm和yum的區別和使用
wget用於知道具體的下載地址時使用
rpm主要用於查詢,看是否已存在 rpm qa | grep 軟體包名
yum 主要用於在快取中檢視下載連結中是否有相關檔案,並下載安裝
(1)wget (World Wide Web get):從網路上自動下載檔案的自由工具,支援通過HTTP、HTTPS、FTP三個最常見的TCP/IP協議下載,並可以使用HTTP代理
wget url(網址檔案地址) wget http://mirrors.aliyun.com/repo/Centos-6.repo
wget -O下載並以不同的檔名儲存  如:wget -O wordpress.zip http://www.centos.bz/download.php?id=1080 
(2) RPM是RedHat Package Manager(RedHat軟體包管理工具)類似Windows裡面的“新增/刪除程式”
RPM軟體的安裝、刪除、更新只有root許可權才能使用;對於查詢功能任何使用者都可以操作;如果普通使用者擁有安裝目錄的許可權,也可以進行安裝.
可以使用rpm命令進行安裝的檔案必須以.rpm 字尾結尾的才行,但是rpm軟體包之間的依賴性問題往往會很繁瑣,尤其是軟體由多個rpm包組成時。
rpm -qa 將列出所有安裝過的包。
rpm -qa |grep yum 如果要查詢所有安裝過的包含某個字串“yum”的軟體包,
rpm -qf 檔名 查詢一個已經安裝的檔案屬於哪個軟體包;
 rpm -ql 軟體名 查詢已安裝軟體包都安裝到何處
 rpm -qi 軟體名 檢視已安裝檔案的資訊
rpm -vih file.rpm 這個是用來安裝一個新的rpm 包; -i : 安裝 -v : 視覺化 -h : 顯示安裝進度
更詳細請見 http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/08/2203153.html
(3)Yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。
安裝軟體(以foo-x.x.x.rpm為例):yum install foo-x.x.x.rpm
刪除軟體:yum remove foo-x.x.x.rpm或者yum erase foo-x.x.x.rpm
升級軟體:yum upgrade foo或者yum update foo
查詢資訊:yum info foo
搜尋軟體(以包含foo欄位為例):yum search foo
顯示軟體包依賴關係:yum deplist foo