轉自:http://www.zzchina.net/article/26/25899.htm
在配置jsp開發環境的過程中會碰到不少問題,感謝網上的許多前輩的經驗總結,作者cl41的JSP串連Mysql資料庫攻略和作者Saulzy的MySQL學習筆記等文章對我來說簡直是雪中送碳,為了協助象我一樣的初學者在此總結了不少作者的經驗,非常感謝他們的無私奉獻精神,也希望更多的人把這種精神發揚光大,呵呵,再次對所參考文章的作者表示最崇高的敬意!
以下軟體下載串連地址無法顯示的話,請直接到官方網站下載即可!
軟體下載
Mysql
下載版本:mysql-4.1.13-win32.zip(Windows downloads)
http://dev.mysql.com/downloads/mysql/4.1.html
JDBC驅動
下載版本:mysql-connector-java-3.1.10.zip
http://dev.mysql.com/downloads/connector/j/3.1.html
下載j2sdk
下載版本:jdk-1_5_0_04-windows-i586-p.exe
http://java.sun.com/j2se/1.5.0/download.jsp
下載tomcat
下載版本: jakarta-tomcat-5.5.9.exe
http://jakarta.apache.org/site/downloads/downloads_tomcat-5.cgi
安裝,配置j2sdk:
執行j2sdk安裝程式,按預設設定進行安裝,也可自訂路徑,但需修改下面的配置
配置j2sdk:
配置環境變數:
我的電腦->屬性->進階->環境變數->系統變數中添加以下環境變數:
JAVA_HOME=C:\Program Files\Java\jdk1.5.0_04
CLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
path=%JAVA_HOME%\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem
寫一個簡單的java程式來測試J2SDK是否已安裝成功:
public class hello
{
public static void main(String args[])
{
System.out.println("Hello");
}
}
將程式儲存為檔案名稱為hello.java的檔案。
開啟命令提示字元視窗,進入到hello.java所在目錄,鍵入下面的命令
javac hello.java
java hello
此時若列印出來hello則安裝成功,若沒有列印出這句話,仔細檢查以上配置是否正確。
注意系統檔案夾選項中應確定“隱藏已知檔案類型的副檔名”不勾選(我的電腦—工具—查看)
安裝,配置tomcat
執行tomcat安裝程式,按預設設定進行安裝,也可自訂路徑,但需修改下面的配置
我的電腦->屬性->進階->環境變數->系統變數中添加以下環境變數
CATALINA_HOME=C:\Program Files\Apache Software Foundation\Tomcat 5.5
CATALINA_BASE=C:\Program Files\Apache Software Foundation\Tomcat 5.5
修改環境變數中的classpath,把tomat安裝目錄下的common\lib下的servlet-api.jar添加到classpath中去,
修改後的classpath如下:
classpath=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar;
啟動tomcat,在IE中訪問http://localhost:8080,若看到tomcat的歡迎頁面的話說明安裝成功。
安裝mysql
解壓縮mysql-4.1.13-win32.zip,運行setup.exe
首先出現的是安裝嚮導歡迎介面,直接點擊“Next”
繼續,選擇安裝類型,選擇“自訂”custom安裝,然後點“Next”下一步,出現自訂安裝介面
選擇安裝路徑:C:\MySQL Server 4.1(可自訂)
點“OK”返回到自訂安裝介面,路徑已改為設定的路徑
點“Next”,準備開始安裝
點“Install”開始安裝
完成後出現建立MySQL.com帳號的介面
如果是首次使用MySQL,選“Create anew free MySQL.com accout”
點“Next”,輸入你的Email地址和自己設定的用於登入MySQL.com的密碼
填完後點“Next”進入第二步
填寫姓名等相關資訊,填完點“Next”,進入第三步
填完電話號碼、公司名稱等資訊後,點“Next”,
然後出現預覽你剛才填的資訊的介面,點“Next”出現安裝完成介面
注意,這裡有個設定精靈的選項(Configure the MySQL Server now),
建議勾選立即配置你的MySQL。許多說安裝完MySQL後無法啟動,原因就在於沒有配置MySQL。
點擊“Finish”完成安裝,並開始配置MySQL
點“Next”,進入配置類型選擇頁面。選“Detailed configuration”(詳細配置)
點“Next”,進入服務類型選擇頁面。選“Developer Machine”(開發人員機器),這樣佔用系統的資源不會很多
點“Next”後,進入資料庫用法選擇頁面。選擇“Multifunctional Database”
點“Next”,進入選擇InnoDB資料存放位置頁面
不用更改設定,直接放在Installation Path安裝目錄裡即可,然後點“Next”,選擇MySQL的同時聯結數
選擇“Manual Setting”,設定為100(根據自己需要,酌情設定)
點“Next”,配置MySQL在TCP/IP通訊環境中的連接埠選擇預設的3306連接埠即可。
點“Next”,選擇MySQL中的字元設定
注意,這裡的選擇將會影響你是否能在MySQL中使用中文。選擇gb2312字元集以便支援簡體中文
點“Next”,設定Windows服務選項
注意,這裡的選擇很關鍵。
“Install As Windows Service”一定要勾選,這是將MySQL作為Windows的服務運行。
“Service Name”就用預設的“MySQL”
下面的“Launch the MySQL Server automatically”一定要勾選,這樣Windows啟動時,MySQL就會自動啟動服務,要不然就要手工啟動MySQL。
許多人說安裝MySQL後無法啟動、無法串連、出現10061錯誤,原因就在這裡。
點“Next”,設定根帳號root的登入密碼
“Modify Security Settings”是設定根帳號的密碼,輸入你設定的密碼即可。
“Create An Anonymous Account”是建立一個匿名帳號,這樣會導致未經授權的使用者非法訪問你的資料庫,有安全隱患,建議不要勾選。
點“Next”,MySQL設定精靈將依據你上面的所有設定配置MySQL,以便MySQL的運行符合你的需要
點“Execute”開始配置,當出現“Service started successfully”時,說明你的配置完成,MySQL服務啟動成功
點“Finish”完成,整個MySQL的配置完成,剩下的就是用MySQL用戶端串連MySQL伺服器,然後使用了。
安裝JDBC驅動:
解壓縮mysql-connector-java-3.1.10.zip
將要使用的是mysql-connector-java-3.1.10-bin-g.jar和mysql-connector-java-3.1.10-bin.jar
配置
在C:\Program Files\Java目錄下建立mysqlforjdbc子目錄,進入該目錄將mysql-connector-java-3.1.10-bin.jar到該目錄下
進入C:\Program Files\Java\jdk1.5.0_04\lib目錄將mysql-connector-java-3.1.10-bin-g.jar拷貝到該目錄下
然後配置classpath,追加%JAVA_HOME%\lib\mysql-connector-java-3.1.10-bin-g.jar;C:\Program Files\Java\mysqlforjdbc\mysql-connector-java-3.1.10-bin.jar;到該環境變數中去
追加以後環境變數如下:
CLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;C:\Program Files\Apache Software Foundation\Tomcat5.5\common\lib\servlet-api.jar;%JAVA_HOME%\lib\mysql-connector-java-3.1.10-bin-g.jar;C:\Program Files\Java\mysqlforjdbc\mysql-connector-java-3.1.10-bin.jar;
配置這個的目的是讓java應用程式找到串連mysql的驅動.
查看並啟動MySQL服務
在Windows XP下安裝完MySQL後,它就已經自動啟動服務了,並且在開始菜單中有其用戶端的捷徑串連
可以通過Windows的服務管理員查看。“開始”-“運行”,輸入“services.msc”,斷行符號。
彈出Windows的服務管理員,然後就可以看見服務名為“mysql”的服務項了,其右邊標明“已啟動”
在開始菜單-所有程式-MySQL-MySQL Server 4.1-MySQL Command Line Client用用戶端的捷徑串連
輸入安裝是設定的密碼即可
資料庫的使用
Mysql安裝完畢以後,在開始菜單-所有程式-MySQL-MySQL Server 4.1-MySQL Command Line Client用用戶端的捷徑串連
輸入安裝時設定的密碼
使用mysql的基本命令(在mysql命令列編輯每輸入完命令後最後一定要有分號)
顯示資料庫:show databases;
使用資料庫:use 資料庫名;
建庫
在mysql裡建一個資料庫first,以及在資料庫裡建一個表about
命令:create database first;
為資料庫設定許可權(使用者和密碼)
命令:grant all privileges on first.* to test@localhost identified by “123456”;
當你執行完這個命令以後,只要你再以使用者名稱:test,密碼:123456登入時你就只可以對first這個資料庫操作,這樣避開使用root
輸入命令:use first;
使用first資料庫;
在first庫中建表
命令:create table about(id int(8) primary key,name varchar(10));
在表中假如資料:
命令:insert into about values('xyw1026','laojiang');
退出
命令:exit
JSP串連mysql
在C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps目錄下建立子目錄myapp
進入C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp目錄下
用記事本編寫一個檔案儲存為first.jsp
代碼如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//first為你的資料庫名
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from first";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一個欄位內容為:<%=rs.getString(1)%>
您的第二個欄位內容為:<%=rs.getString(2)%>
<%}%>
<%out.print("資料庫操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
在瀏覽器中輸入:
http://127.0.0.1:8080/myapp/first.jsp
若出現:
id|num
0 |laojiang
資料庫操作成功,恭喜你
表示配置成功
進入C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp目錄
在myapp目錄下建立一個目錄WEB-INF,注意,目錄名稱是區分大小寫;
在WEB-INF下用記事本建立一個檔案,命名為web.xml,內容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>My Web Application</display-name>
<description>
A application for test.
</description>
</web-app>
在myapp下用記事本建立一個測試的jsp頁面,檔案名稱為index.jsp,檔案內容如下:
<html><body><center>
Now time is: <%=new java.util.Date()%>
</center></body></html>
重啟Tomcat
開啟瀏覽器,輸入http://localhost:8080/myapp/index.jsp
看到目前時間的話說明成功安裝。
建立自己的Servlet:
用記事本建立一個servlet程式,檔案名稱為HelloWorld.java,檔案內容如下:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><head><title>");
out.println("This is my first Servlet");
out.println("</title></head><body>");
out.println("<h1>Hello,World!</h1>");
out.println("</body></html>");
}
}
編譯
將HelloWorld.java剪下到C:\Program Files\Apache Software Foundation\Tomcat5.5\common\classes目錄下
命令列方式下輸入:
cd C:\Program Files\Apache Software Foundation\Tomcat5.5\common\classes
javac HelloWorld.java
用javac HelloWorld.java來編譯這個檔案,如果出現無法import javax.servlet.*
則將C:\Program Files\Apache Software Foundation\Tomcat5.5\common\lib目錄下的servlet-api.jar檔案拷貝並添加到
C:\Program Files\Java\jre1.5.0_04\lib\ext目錄中去就可以了
然後在C:\Program Files\Apache Software Foundation\Tomcat5.5\common\classes下會產生一個編譯後的servlet檔案:HelloWorld.class
用記事本開啟C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\ROOT\WEB-INF目錄下的web.xml如下所示,添加後的內容如下:
.
.
.
<!-- JSPC servlet mappings start -->
<servlet>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<servlet-class>org.apache.jsp.index_jsp</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<url-pattern>/index.jsp</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping>
<!-- JSPC servlet mappings end -->
</web-app>
這段話中的servlet這一段聲明了你要調用的Servlet,而servlet-mapping則是將聲明的servlet“映射”到/servlet/HelloWorld地址上
啟動Tomcat,啟動瀏覽器,輸入http://localhost:8080//servlet/HelloWorld 如果看到輸出HelloWorld!就說明編寫的servlet成功了。
注意:修改了web.xml以及新加了class,都要重啟Tomcat
也可以在自己建立的目錄下測試如:
將HelloWorld.class拷貝到C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp\WEB-INF\classes目錄下
其中classes目錄若沒有就建立一個
用記事本開啟C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp\WEB-INF目錄下的web.xml如下所示,修改後的內容如下:
.
.
.
<!-- JSPC servlet mappings start -->
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping>
<!-- JSPC servlet mappings end -->
</web-app>
啟動Tomcat,啟動瀏覽器,輸入http://localhost:8080/myapp/servlet/HelloWorld 如果看到輸出HelloWorld!就說明編寫的servlet成功了。
注意:修改了web.xml以及新加了class,都要重啟Tomcat
建立自己的javaBean:
用記事本建立一個java程式,檔案名稱為TestBean.java,檔案內容如下:
package test;
public class TestBean{
private String name = null;
public TestBean(String strName_p){
this.name=strName_p;
}
public void setName(String strName_p){
this.name=strName_p;
}
public String getName(){
return this.name;
}
}
編譯
將TestBean.java放在c:\test下,使用如下命令編譯:
C:\test>javac TestBean.java
然後在c:\Test下會產生一個編譯後的bean檔案:TestBean.class
將TestBean.class檔案剪下到C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp\WEB-INF\classes\test目錄下,
若無某些子目錄則建立一個
建立一個TestBean.jsp檔案,檔案內容為:
<%@ page import="test.TestBean" %>
<html><body><center>
<%
TestBean testBean=new TestBean("This is a test java bean.");
%>
Java bean name is: <%=testBean.getName()%>
</center></body></html>
重啟Tomcat,啟動瀏覽器,輸入http://localhost:8080/myapp/TestBean.jsp 如果看到輸出Java bean name is: This is a test java bean
就說明編寫的javaBean成功了。