999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

JSP與SQL Server 2005的連接①

2009-01-06 04:55:38孫振亞
數(shù)字技術與應用 2009年11期
關鍵詞:設置數(shù)據(jù)庫

孫振亞

[摘 要]JSP是當今比較流行的動態(tài)網頁開發(fā)技術,數(shù)據(jù)庫對動態(tài)網站來說是最重要的部分,JDBC是應用程序和數(shù)據(jù)庫溝通的橋梁,本文主要介紹了JSP中如何通過JDBC技術來實現(xiàn)對SQL Server 2005的訪問。

[關鍵詞]JSP JDBC-ODBC橋 JDBC SQL Server 2005

[中圖分類號]TP311[文獻標識碼]A[文章編號]1007-9416(2009)11-0056-02

[Abstract]JSP is a more popular technique in developping dynamic web. It is very importment for dynamic web supported of database. JDBC is connecter of appliction program to database. This paper discusses the method of visiting SQL Server 2005 through JSP.

[Keywords]JSP JDBC-ODBC Bridge JDBC SQL Server 2005

1 引言

JSP(Java Server Page)是Sun公司推出的新一代動態(tài)網站開發(fā)語言,JSP技術是由Java語言作為腳本語言,在傳統(tǒng)的HTML文件中加入Java程序片段(Scriptlet)和JSP標記(tag)就構成了JSP網頁,擴展名為.JSP。JSP可以在servlet和JavaBean的支持下,完成功能強大的動態(tài)網站程序的開發(fā)。而數(shù)據(jù)庫的支持對動態(tài)網站來說是最重要的部分,直接關系到網站的更新和交互性,隨著SQL Server 2005數(shù)據(jù)庫使用的普及,在JSP中使用基于JDBC驅動程序訪問SQL Server 2005數(shù)據(jù)庫已經是十分必要的工作。

2 JSP連接SQL Server 2005

要在JSP頁面中訪問數(shù)據(jù)庫,首先要實現(xiàn)JSP與數(shù)據(jù)庫的連接,現(xiàn)在最常用的是使用JDBC技術實現(xiàn)對數(shù)據(jù)庫的連接。JDBC是一種用于執(zhí)行SQL語句的JavaAPI,它由一組用Java語言編寫的類和接口組成,JDBC提供了一組標準的應用程序設計接口,使開發(fā)人員可以使用純Java API來編寫數(shù)據(jù)庫應用程序。簡單地說,JDBC可做三件事:與數(shù)據(jù)庫建立連接、發(fā)送 sql 語句并處理結果。

2.1 DriverManager類

DriverManager類是JDBC的管理層,作用于用戶和驅動程序之間。它跟蹤可用的驅動程序,并在數(shù)據(jù)庫和相應驅動程序之間建立連接。該類負責加載、注冊JDBC驅動程序,管理應用程序和已注冊的驅動程序的連接。對于簡單的應用程序,只需直接使用該類的方法getConnection進行連接即可,格式如下:

DriverManager. getConnection(url,“用戶名”,“密碼”)

2.2 利用JDBC技術連接數(shù)據(jù)庫的常用方法

數(shù)據(jù)庫連接對動態(tài)網站來說是最為重要的部分,JSP中連接數(shù)據(jù)庫的技術是JDBC(Java Database Connectivity)。很多數(shù)據(jù)庫都帶有JDBC驅動程序,JSP程序就通過JDBC驅動程序與數(shù)據(jù)庫相連,執(zhí)行查詢、提取數(shù)據(jù)等操作。

2.2.1 JDBC-ODBC橋連接數(shù)據(jù)庫

SUN公司開發(fā)了JDBC-ODBC橋,通過JDBC-ODBC橋,Java程序訪問帶有ODBC驅動程序的數(shù)據(jù)庫。

JDBC-ODBC橋提供了從JDBC到ODBC的轉換,用于訪問ODBC數(shù)據(jù)源。JDBC使用了本地的ODBC方法。 Sun公司提供的JDBC-ODBC橋可以訪問支持ODBC的數(shù)據(jù)庫,用戶只要設置好ODBC數(shù)據(jù)源,再由JDBC驅動程序轉換為JDBC接口供應用程序使用即可。

連接到SQL Server 2005數(shù)據(jù)庫,首先應配置數(shù)據(jù)源,然后使用JDBC-ODBC橋進行數(shù)據(jù)庫的連接。

*數(shù)據(jù)源的配置:

打開控制面板窗口,選擇管理工具中的數(shù)據(jù)源(ODBC),打開ODBC數(shù)據(jù)源管理器,選擇“系統(tǒng)DSN”選項卡,單擊添加;在打開的“創(chuàng)建數(shù)據(jù)源”對話框的“選擇您想為其安裝數(shù)據(jù)的驅動程序”列表框中,選擇“SQL Server”,然后單擊完成;

在“創(chuàng)建到SQL Server的新數(shù)據(jù)源”對話框中,將數(shù)據(jù)源的名稱設置為DataShop(名字可為其它),該名字為數(shù)據(jù)源的名稱,并不一定是數(shù)據(jù)庫的名稱,選擇SQL Server數(shù)據(jù)庫服務器的名稱時,可以選擇本機(local),然后單擊下一步;在選擇登錄的方式的界面中,使用默認的方式,也可以根據(jù)需要選擇SQL Server登錄方式,并指定用戶名,本文采用第二種方式,ID為sa,密碼為sa,然后單擊“下一步”;在選擇數(shù)據(jù)庫的界面中,指定數(shù)據(jù)源所對應的數(shù)據(jù)庫(本文為jsp_db),然后單擊“下一步”;

在完成并進行數(shù)據(jù)源的測試成功后。“在ODBC數(shù)據(jù)源管理器”對話框的“系統(tǒng)DSN”選項卡中即可看到新添加的數(shù)據(jù)源DataShop。這時已完成了數(shù)據(jù)源的設置。

* 連接到數(shù)據(jù)庫SQL Server 2005的代碼段

......

Connection conn=null;

try

{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String strConn="jdbc:odbc:shopData";

String strUser="sa"; // sa數(shù)據(jù)庫登錄時的用戶名

String strPassword="sa"; // sa數(shù)據(jù)庫登錄時的密碼

conn=DriverManager.getConnection(strConn,strUser,strPassword);

out.println("

JDBC-ODBC橋連接數(shù)據(jù)庫成功!

");

}

catch(Exception e)

{

out.println("

JDBC-ODBC橋連接數(shù)據(jù)庫失敗!

");

}

......

測試中如看到“JDBC-ODBC橋連接數(shù)據(jù)庫成功!”的字樣,則表示使用JDBC-ODBC橋連接數(shù)據(jù)庫成功。

2.2.2 專用JDBC驅動程序連接數(shù)據(jù)庫

ODBC驅動,在很多情況下也即數(shù)據(jù)庫的客戶端,必須加載到客戶機。因而,它適用于不重要的應用或者沒有其他JDBC驅動可用的情況,大多數(shù)的應用還是采用JDBC驅動程序來連接數(shù)據(jù)庫。

*下載安裝SQL Server 2005的JDBC驅動

到微軟網站下載SQL Server的JDBC驅動程序包,安裝在c盤program files 下Microsoft SQL Server 2005 JDBC Driver文件夾內,接著配置classpath,在原有基礎上添加C:Program FilesMicrosoft SQL Server 2005 JDBC Driversqljdbc_1.1chs表明了sqljdbc.jar所在的目錄。

*連接到數(shù)據(jù)庫SQL Server 2005的代碼段

......

Connection conn=null;

try

{

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

String strConn="jdbc:sqlserver://localhost:1433;DatabaseName=jsp_db";

String strUser="sa";//根據(jù)你自己設置的數(shù)據(jù)庫連接用戶進行設置

String strPassword="sa"; // 根據(jù)你自己設置的數(shù)據(jù)庫連接密碼進行設置

conn=DriverManager.getConnection(strConn,strUser,strPassword);

conn=DriverManager.getConnection(strConn,strUser,strPassword);

out.println("

JDBC專用驅動程序連接數(shù)據(jù)庫成功!

");

}

catch(Exception e)

{

out.println("

JDBC專用驅動程序連接數(shù)據(jù)庫失敗!

");

}

......

測試中如看到“JDBC專用驅動程序連接數(shù)據(jù)庫成功!”的字樣,則表示JDBC專用驅動程序連接數(shù)據(jù)庫成功。

* 和連接數(shù)據(jù)庫SQL Server2000代碼的區(qū)別

如果你以前用JDBC連接SQL Server 2000的話就要注意了,

在SQL Server 2000 中加載驅動和URL路徑的語句是:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver);

URL = " jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=jsp_db";

否則,在連接過程中會出現(xiàn)找不到JDBC驅動程序的錯誤。

3 連接到數(shù)據(jù)庫SQL Server 2005常見問題

在連接數(shù)據(jù)庫SQL Server 2005 Express時,經常會出現(xiàn)“com.microsoft.sqlserver.jdbc.SQLServerException: 到主機 的 TCP/IP 連接失敗。”的錯誤,這主要是該版本的服務器默認是禁用的并且端口號沒有配置,所以要重新設置TCP/IP協(xié)議啟動,具體如下:

(1)打開SQL Server Configuration Manager

(2)轉到SQL Server 2005 Network Configuration->Protocols for SQLEXPRESS

(3)將TCP/IP設置為Enabled(啟用)

(4)雙擊TCP/IP項,轉到IP Addresses頁

(5)IP All中設置TCP Port為1433

(6)重新啟動服務

4 插入漢字到數(shù)據(jù)庫SQL Server2005時亂碼的處理

由于字符編碼的原因,插入數(shù)據(jù)到數(shù)據(jù)庫時,漢字會變?yōu)椤?”,通過以下方法可以解決此問題。

4.1 更改屬性中的排序規(guī)則

(1)右擊你所建的數(shù)據(jù)庫,點擊“屬性”,選擇“選項”并點擊。將其中的設置為:Chinese_PRC_CI_AS(選擇下拉列表框即可設置),然后“確定“。

(2)將你表中漢字字段的數(shù)據(jù)類型設置為nvarchar型或ntext型,設置前最好先將表中的數(shù)據(jù)全部刪除。(不要使用varchar或text型,因為它們只會繼續(xù)使你的數(shù)據(jù)亂碼)。

(3)設置好后,關閉服務器,再重新啟動,就可生效了。

4.2 在SQL語句中直接加N字符

如使用類似insert into student(stu_name) values (N'+userName+')這種格式的SQL語句,也能夠將插入數(shù)據(jù)庫的漢字正常顯示。

5 結語

WEB與數(shù)據(jù)庫互聯(lián)是當今WWW技術和數(shù)據(jù)庫技術發(fā)展的交叉點,是日益增長的信息處理需求推動下產生的必然結果。JSP以其動態(tài)、高效、簡潔及跨平臺性,已被廣泛地應用于電子商務、電子政務等系統(tǒng)中,開發(fā)基于B/S(Browse/Server瀏覽器/服務器)架構的軟件系統(tǒng),JDBC技術作為兩者溝通的橋梁,在實際開發(fā)中,選擇合適的連接方式將起到事半功倍的作用。

[參考文獻]

[1] 趙增敏.JSP動態(tài)網站開發(fā)[M].電子工業(yè)出版社,2008年.

[2] 劉志成.JSP程序設計案例教程[M].清華大學出版社,2007.

[3] http://blog.csdn.net.

[4] http://q.yesky.com.

[5] http://www.diybl.com.

猜你喜歡
設置數(shù)據(jù)庫
中隊崗位該如何設置
少先隊活動(2021年4期)2021-07-23 01:46:22
7招教你手動設置參數(shù)
數(shù)據(jù)庫
財經(2017年15期)2017-07-03 22:40:49
數(shù)據(jù)庫
財經(2017年2期)2017-03-10 14:35:35
數(shù)據(jù)庫
財經(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(2016年6期)2016-02-24 07:41:51
本刊欄目設置說明
中俄臨床醫(yī)學專業(yè)課程設置的比較與思考
艦船人員編制的設置與控制
主站蜘蛛池模板: 国产精品自拍合集| 欧美国产在线一区| 丁香亚洲综合五月天婷婷| 在线欧美a| 欧美精品xx| 成人噜噜噜视频在线观看| 啪啪免费视频一区二区| 久久精品无码一区二区日韩免费| 97亚洲色综久久精品| 被公侵犯人妻少妇一区二区三区 | 日韩无码白| 91精品国产自产在线老师啪l| 熟妇丰满人妻| 久久96热在精品国产高清| 美女国内精品自产拍在线播放| 人妻21p大胆| 亚洲午夜片| 欧美日韩成人| 国产成人高清亚洲一区久久| 成人a免费α片在线视频网站| 综合亚洲网| 91在线国内在线播放老师| 最新国产网站| 国产在线自揄拍揄视频网站| 久久国产热| 亚洲精品图区| 国产大全韩国亚洲一区二区三区| 色综合热无码热国产| 九九久久精品免费观看| 国产在线欧美| 黄色免费在线网址| 久久青草免费91观看| 成年人免费国产视频| 亚洲综合色吧| 国产精品三区四区| 日本成人一区| 波多野结衣的av一区二区三区| 日本在线亚洲| 成人中文在线| 中文字幕人妻无码系列第三区| 亚洲精品成人片在线播放| 亚洲成A人V欧美综合| 国产精品亚洲五月天高清| 欧美午夜在线观看| 亚洲制服丝袜第一页| 国产成人无码综合亚洲日韩不卡| 久草视频中文| 色吊丝av中文字幕| 99久久精品免费观看国产| 国产精品免费入口视频| 高清色本在线www| www.亚洲一区| 欧美一级在线看| 任我操在线视频| 国产第三区| 精品亚洲麻豆1区2区3区| 亚洲精品国产精品乱码不卞| 国产在线精彩视频论坛| 欧美日韩一区二区在线播放| 国产人人射| 在线人成精品免费视频| 尤物午夜福利视频| 国产综合色在线视频播放线视| 99re精彩视频| 亚洲成人在线网| 3344在线观看无码| 国产精品成人免费视频99| 精品伊人久久久大香线蕉欧美| 国产成人成人一区二区| 免费人成又黄又爽的视频网站| 国产亚卅精品无码| 欧美国产日产一区二区| 免费一级无码在线网站| 5555国产在线观看| 日韩中文精品亚洲第三区| 日韩成人免费网站| 伊人成人在线| 22sihu国产精品视频影视资讯| 呦视频在线一区二区三区| 伊人无码视屏| 国产真实乱人视频| 日韩成人免费网站|