摘 要:本文是基于互動教學(xué)的大學(xué)生社團(tuán)信息管理系統(tǒng)的開發(fā)研究。該系統(tǒng)采用MVC模式,JSP頁面中通過jstl及el的使用實(shí)現(xiàn)邏輯控制,用javabean與數(shù)據(jù)庫連接。本論文重點(diǎn)介紹了數(shù)據(jù)庫設(shè)計,系統(tǒng)實(shí)現(xiàn)和調(diào)試中出現(xiàn)的問題和解決方法。
關(guān)鍵詞:servlet;Javabean;會話跟蹤;jstl;el;
中圖分類號:TP311.52
1 系統(tǒng)的背景分析
信息管理系統(tǒng)是進(jìn)行信息的采集,存儲,加工,維護(hù)和使用的系統(tǒng),它是隨著管理科學(xué)和技術(shù)科學(xué)的發(fā)展而形成的。但是一直以來高校對于大學(xué)生社團(tuán)管理都是靠傳統(tǒng)人工的方式來管理的,這種管理方式存在著許多缺點(diǎn),人數(shù)、社團(tuán)一旦增多,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找,更新和維護(hù)都帶來了不少的困難。
作為計算機(jī)應(yīng)用的一部分,使用計算機(jī)對大學(xué)生社團(tuán)信息進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點(diǎn)。例如:檢索迅速,查找方便,可靠性高,存儲量大,保密性好,壽命長,成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生社團(tuán)管理的效率,也是學(xué)校教育管理的科學(xué)化,正規(guī)化管理,與世界接軌的重要條件。
大學(xué)生社團(tuán)信息管理提供了強(qiáng)大的各種社團(tuán)管理功能,方便系統(tǒng)管理員對社團(tuán)信息的添加,修改,刪除,信息的查詢,留言等操作,同時也一樣方便學(xué)生對自己能力評估分?jǐn)?shù)的查詢,增加學(xué)習(xí)的交流機(jī)會。
2 系統(tǒng)功能的實(shí)現(xiàn)
2.1 數(shù)據(jù)庫的連接
在整個大學(xué)生社團(tuán)信息管理系統(tǒng)中,數(shù)據(jù)庫的數(shù)據(jù)調(diào)用在系統(tǒng)中是很重要的,這個系統(tǒng)與數(shù)據(jù)庫的連接是用一個javabean進(jìn)行對數(shù)據(jù)庫的連接。代碼入下:
package bean;
import java.sql.DriverManager;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;
public class JDBCHelper {
String driver=\"com.mysql.jdbc.Driver\";
String url=\"jdbc:mysql://localhost:3306/student\";
String user=\"root\";
String password=\"unco\";
static Connection con=1;
public JDBCHelper(){
}
public Connection getConnection() throws InstantiationException,
IllegalAccessException {
try {
Class.forName(driver).newInstance();
con=(Connection) DriverManager.getConnection(url,user,password);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return con;
}
}
2.2 系統(tǒng)的應(yīng)用技術(shù)
2.2.1 MVC框架使用
本系統(tǒng)采用了MVC框架的思想,用jsp作控制器視圖(View),用servlet作控制器(controller),用javabean作模型(Model)。
其中jsp用來制作系統(tǒng)的外觀頁面,用javabean作為模型,由于這個系統(tǒng)的功能大多基于數(shù)據(jù)庫的操作,所以這個系統(tǒng)的javabean都是實(shí)現(xiàn)連接數(shù)據(jù)庫以及對數(shù)據(jù)庫操作的,那么負(fù)責(zé)對javabean的操作結(jié)果以及jsp頁面的功能需求的調(diào)度都由幾個servlet實(shí)現(xiàn)。
2.2.2 JSTL與EL
JSTL是一個不斷完善的開放源代碼的JSP標(biāo)簽庫,是由apache的jakarta小組來維護(hù)的。JSTL包含兩個部分:標(biāo)簽庫和EL(Expression Language表達(dá)式語言)語言.標(biāo)簽庫目前支持四種標(biāo)簽.
EL語言是JSTL輸出(輸入)一個JAVA表達(dá)式的表示形式。在JSTL中,EL語言只能在屬性值中使用。EL語言只能通過建立表達(dá)式來進(jìn)行調(diào)用。在屬性值中使用表達(dá)式有三種方式。
本系統(tǒng)主要使用core標(biāo)簽庫。下面介紹一下系統(tǒng)出現(xiàn)的兩種標(biāo)簽的應(yīng)用:
(1)流控制標(biāo)簽
3 調(diào)試中經(jīng)常出現(xiàn)的問題及解決方法
以下是幾種曾經(jīng)出現(xiàn)過的亂碼情況及其解決方法:
3.1 JSP頁面亂碼
這種亂碼的原因是應(yīng)為沒有在頁面里指定使用的字符集編碼,解決方法:只要在頁面開始地方用下面代碼指定字符集編碼即可,<%@ page contentType=\"text/html;charset=gb2312\" language=\"java\" import=\"java.sql.*\"errorPage=\"err.jsp\"%>
3.2 數(shù)據(jù)庫亂碼
這種亂碼會使你插入數(shù)據(jù)庫的中文變成亂碼,或者讀出顯示時也是亂碼,解決方法如下:在數(shù)據(jù)庫連接字符串中加入編碼字符集
String Url=\"jdbc:mysql://localhost/digitgulf?user=rootpassword=rootuseUnicode=truecharacterEncoding=GB2312\";
并在頁面中使用如下代碼:
response.setContentType(\"text/html;charset=gb2312\");request.setCharacterEncoding(\"gb2312\");
3.3 中文作為參數(shù)傳遞亂碼
當(dāng)我們把一段中文字符作為參數(shù)傳遞給另一頁面時,也會出現(xiàn)亂碼情況,解決方法如下:
在參數(shù)傳遞時對參數(shù)編碼,比如
RearshRes.jsp?keywords=\"+java.net.URLEncoder.encode(keywords)
然后在接收參數(shù)頁面使用如下語句接收
keywords=new String(request.getParameter(\"keywords\").getBytes(\"8859_1\"));
參考文獻(xiàn):
[1]網(wǎng)頁制作與JSP技術(shù)[M].北京:機(jī)械工業(yè)出版,2011.
[2]吳林華.網(wǎng)站建設(shè)與維護(hù)[M].北京:電子工業(yè)出版社,2009.
[3]包錦陽.大專生畢業(yè)論文(設(shè)計)寫作指導(dǎo)[M].杭州:浙江大學(xué)出版社,2012.
[4]白以恩.計算機(jī)網(wǎng)絡(luò)基礎(chǔ)及應(yīng)用[M].哈爾濱:工業(yè)大學(xué)出版社,2012.
[5]JavaScript/VBScript網(wǎng)頁編程實(shí)例解析[M].北京:清華大學(xué)出版社,2001.
作者簡介:沈琳,女,云南人,學(xué)生處副處長,講師,碩士,研究方向:計算機(jī)技術(shù)及運(yùn)用。
作者單位:云南機(jī)電職業(yè)技術(shù)學(xué)院,昆明 650000