卷積碼Viterbi譯碼器FPGA實現(xiàn)方案.doc_第1頁
卷積碼Viterbi譯碼器FPGA實現(xiàn)方案.doc_第2頁
卷積碼Viterbi譯碼器FPGA實現(xiàn)方案.doc_第3頁
卷積碼Viterbi譯碼器FPGA實現(xiàn)方案.doc_第4頁
卷積碼Viterbi譯碼器FPGA實現(xiàn)方案.doc_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1商品標題:J2EE開發(fā)購物網(wǎng)站解析2本商品最適合那類職業(yè)人群:JavaEE應用程序員3本商品可以解決他們什么問題:本文通過實戰(zhàn)全程編寫一個購物網(wǎng)站來講解如何使用J2EE來建立企業(yè)級的網(wǎng)絡應用!4商品內(nèi)容:本文通過實戰(zhàn)全程編寫一個購物網(wǎng)站來講解如何使用J2EE來建立企業(yè)級的網(wǎng)絡應用!一、搭建開發(fā)平臺本文從實戰(zhàn)出發(fā),所以關(guān)于一些概念性的問題就不多講了,首先準備下面的家伙:1.oracle2.weblogic3.Jbuilder其它:struts-console-2.2(用作struts視圖開發(fā))PowerBulider(方便數(shù)據(jù)庫操作)Dreamweaver(美化前臺頁面)開發(fā)平臺為Windows2000。以下以一般性的配置為例詳細介紹搭建J2EE的開發(fā)平臺。用機配置:P4賽揚1.7G,256MB 20GHDD 操作系統(tǒng):Windowsdows2000 SP3數(shù)據(jù)庫:oracle 8iJ2EE應用平臺:weblogic 6.1 sp2EJB,JSP,JAVABEAN開發(fā):Jbuilder 7 weblogic版第一步,安裝配置oracle數(shù)據(jù)庫安裝oracle最新版的9i什么事都沒有,但如果你在P4的機器上裝8i可能就會出現(xiàn)問題,點了安裝之后沒有反應(P4賽揚也存在這個問題)。如果您是P4的機器又要裝8i的話,那么先按如下方法做。(1)創(chuàng)建一臨時目錄,并將Oracle8i的安裝源程序拷貝到此目錄。找到目錄stageComponentsoracle.swd.Jre01DataFilesExpandedJreWindows32bin下的 symcJit.dll 的文件,并改名為 symcJit.old。注意OEM目錄下還有一個symcJit.dll文件要改名。(2)搜索到oraparam.ini文件,打開它,改變行RE_MEMORY_OPTIONS=-mx48m的參數(shù)為 JRE_MEMORY_OPTIONS=-noJit -ms16m -mx32m (3)其它的參數(shù)保持不變。(4)執(zhí)行本地硬盤installWindows32setup.exe目錄下的Setup.exe文件。此時調(diào)用的是修改過的參數(shù)文件oraparam.ini。(5)安裝時選擇自定義模式,并且不創(chuàng)建數(shù)據(jù)庫。(7)Oracle8i安裝完成后,安裝目錄中的下列每一個文件都有需要作相應修改。(如果不修改點任何應用都沒有反應)assistantsdbcadbassist.cl assistantsdbmadbmig.cl assistantsifaifa.cl binelogin.cl binowm.cl ldapoidamdinoidadmin.cl networktoolsnetasst.cl networktoolsnetca.cl owminstallinstelogin.cl owminstallinstowm.cl用編輯工具依次打開上述文件,增加參數(shù) -noJit,以dbassist.cl文件為例示意如下:Command=(C:Program FilesOracleJre1.1.7BINJREW -noJit -classpath .)用相同的方法修改所列出的每一個.cl 文件內(nèi)容。修改完后運行database administrator下的Database Configuration Assistant就可以創(chuàng)建數(shù)據(jù)庫了,這可是一個漫長的過程,在創(chuàng)建數(shù)據(jù)庫時要創(chuàng)建全局標識,搞個好記的就行,以后好配置數(shù)據(jù)庫連接。創(chuàng)建完后,默認的DBA用戶名為system,密碼為manager。第二步,安裝配置weblogic 6.1SP2,并連接oracleWindows平臺的weblogic基本上都可以直接安裝,但要注意不要把它裝到帶有空格的目錄里如Program Files,或是中文目錄中,默認為c:bea,按默認點下一步,就可以完成安裝,這個基本沒有意外!(最簡單的安裝操作),最后要記住設的管理密碼!為了調(diào)試方便,不將weblogic設為自動服務啟動。設定您的管理密碼,進入控制臺,啟動服務都需要。為了方便,我將目錄安到了D盤,并將domain改為maxuan,server改為max,接下來我們將配置JDBC連接oracle數(shù)據(jù)庫。首先打開D:beawlserver6.1configmaxuan(maxuan為我改后的名字,默認的為mydomain),用文本編輯器如:記事本或editplus打開startWebLogic.cmd,找到“set PATH=”這一行,加入“.binoci817_8”,如本人的為“set PATH=.bin;.binoci817_8;%PATH%”為了使啟動weblogic不需要每次都輸入密碼,在“set WLS_PW=”輸入安裝時所設定的密碼即可。雙擊startWebLogic.cmd或在程序中直接運行Start Default Server啟動weblogic服務(注意不要將這個窗口關(guān)了)啟動weblogic 然后在程序中運行Start Default Console,進入控制臺操作,在出現(xiàn)的對話框中輸入管理用戶名system,密碼為你設的密碼即可進入!點開左邊的Services,你可以看到JDBC;點開它,點擊在下面的Connection Pools,右邊會出現(xiàn)配置項目,點擊Configure a new JDBC Connection Pool出現(xiàn)配置項,在Configuration下的General標簽下配置:name:這里我填寫的是“mytest”;URL填寫為“Jdbc:weblogic:oracle”;Driver Classname:填寫為“weblogic.Jdbc.oci.Driver”;Properties(key=value):填寫為:user=systempassword=managerserver=oradb這里的oradb即是所安裝的oracle所創(chuàng)建的數(shù)據(jù)庫的全局標識。user和password我用的是默認的DBA,你可以用自己創(chuàng)建的用戶名和密碼。點擊Apply按鈕完成。點擊Targets下的Servers標簽,把Available下的Tgets-Server移到Chosen下,然后點Apply按鈕。接著配置下面的Data Sources,在右邊用“Configure a new JDBC Data Source”創(chuàng)建新的Data Sources,這里的Name和Pool Name均填上面的設定“mytest”,JNDI Name填寫“oradb”,同上面一樣,點擊Targets下的Servers標簽,把Available下的Targets-Server移到Chosen下,然后點Apply按鈕。這時點開Start Default Server窗口應當看到已經(jīng)啟動JDriver/Oracle了!第三步,安裝配置JBuilder 7這里我安裝的是weblogic版。安裝JBuilder不要把它裝到帶有空格的目錄里如Prograih Files,或是中文目錄中,不然編譯時會出錯的。安裝很簡單,不必多言,這里著重講一下配置小技巧一:大家覺得JBuilder運行時也許很慢,因為Jbuilder默認使用32MB內(nèi)存,如果你的內(nèi)存夠大的話,可以加大一點,具體辦法如下:在JBuilder安裝目錄BIN下找到Jbuilder.config文件,編輯它,改變Vmparams 后的參數(shù),啟動JBuilder,在Help下的About Jbuilder下可以看到Java heap已經(jīng)增加了,運行也快了許多,起碼以后可以編譯較大的文件。小技巧二:運行JBuilder時,發(fā)現(xiàn)編寫代碼很不方便,所選的代碼與實際所見的總是差一個,這是因為字體的原因,解決方法如下,在Tools的Editor Options下的Display里,將Editor font里的Font Family改為新宋體即可。二、配置weblogic服務用JBuilder可以整合weblogic,這樣可以把在JBuilder下開發(fā)的EJB或打包成WAR的網(wǎng)站直接發(fā)布到weblogic!首先在tools下選擇Configure Servers,在下面的user Home下,你可以看到“webLogic Application Server 6.X-7.0”項,點擊它,在右邊會出現(xiàn)Server Settings ,將Enable server打上勾,在下面的General下選擇home directory和Working directory。然后點Custom項,選擇JDK installation directory。BEA home directory。接著輸入密碼和設定的Domain name和Server name這些都是你安裝weblogic時設定的,如果目錄選擇正確,在下面的version下會自動出現(xiàn)你的weblogci的版本號。點擊OK即完成!下面,我們做一個試驗,看看weblogic是不是和Jbuilder整合了!首先,我們新建一個工程,選Application,在name里填寫你的工程名,接著按完成即可。在新建工程項目時順便看一看Server是不是用的Weblogic然后再選新建,在出現(xiàn)的ObJect Gallery下選Web,因為我們是要發(fā)布WEB應用,所以選取Web Application,為它命個名,這將是網(wǎng)站包的名字,指定它的工作目錄后選擇Generate war,點OK即可。接下來,我們要新建一個JSP文件,一樣點新建,在WEB下選擇JAVAServer Page,按它的默認點下一步即可,它會自動創(chuàng)建一個JAVABEAN。首先,我們要把自動生成的這個BEAN編譯為class,選中它,點右鍵,在出現(xiàn)的菜單選Rebuild編譯,然后編譯你的Web Application,它會自動生成WAR包,點這個包發(fā)布即可發(fā)布網(wǎng)站。接下來打開瀏覽器輸入 :7001/tds/index.Jsp 即可看到該頁面。 三、創(chuàng)建數(shù)據(jù)庫Oracle 8i和Oracle 9i確實有些不一樣,不過在界面上區(qū)別不大,還是以我的Oracle 8i為例為大家講解一下吧!既然是實戰(zhàn),首先我們?yōu)樽约盒陆ㄒ粋€開發(fā)用戶,并創(chuàng)建一個表。在oracle里創(chuàng)建新用戶和表的方法比較多,只要你有管理員的權(quán)限,首先用最簡單的。在Oracle 8i的程序組中啟動DBA Studio程序項,在出現(xiàn)的數(shù)據(jù)庫鏈接信息中輸入管理用戶名和口令即可,當然,在oracle中,你可以用用戶名斜杠口令的方法登陸,連接身份選SYSDBA。創(chuàng)建用戶:在登陸后,單擊安全,在第一項,你就會看到用戶,用右鍵你可以創(chuàng)建新用戶,或者給用戶授于角色,不同的角色擁有不同的權(quán)限!Oracle 8i預定義的角色,我在下面會講。咱們先斷開system的數(shù)據(jù)庫連接,可以在文件中選擇,也可以用右鍵。然后用我們創(chuàng)建的用戶來登陸,并且在方案中找到表,然后就可以直接創(chuàng)建,由于是圖形可視化,而且又是全中文的,我就不綴述了!大家可以多試試!用SQLPLUS工具創(chuàng)建用戶和數(shù)據(jù)庫:在oracle中可以使用sqlplus這個工具來書寫SQL語句,對于SQL高手來說,這是發(fā)揮才能的好地方。咱們來試試吧,首先一樣要先登陸,為了創(chuàng)建新用戶,咱們?nèi)砸詓ystem來登陸。在主機字符串中填入數(shù)據(jù)標識(oradb)在登陸進去后,出現(xiàn)“SQL”我們就可以在它后面書寫SQL語句,grant connect,resouce to maxuan identified by max,這一句是創(chuàng)建用戶maxuan,口令為max,并賦予connect,resource權(quán)限,在出現(xiàn)授權(quán)成功后,我們用conn maxuan/max這句來以maxuan連接數(shù)據(jù)庫,這時的角色已經(jīng)不是DBA了!接下來的是些基本的SQL建表語句,不用多說了,在sqlplus中,每條語句結(jié)束用分號標識,在完成后,我們可以用quit或exit命令斷開。這里我說幾個Oracle 8i的預定義角色。1、CONNECT角色: 授于最終用戶的典型最基本的權(quán)利ALTER SESSION -修改會話CREATE CLUSTER -建立聚簇CREATE DATABASE LINK -建立數(shù)據(jù)庫鏈接CREATE SEQUENCE -建立序列CREATE SESSION -建立會話CREATE SYNONYM -建立同義詞CREATE VIEW -建立視圖2、RESOURCE角色: 是授予開發(fā)人員的CREATE CLUSTER -建立聚簇CREATE PROCEDURE -建立過程CREATE SEQUENCE -建立序列CREATE TABLE -建表CREATE TRIGGER -建立觸發(fā)器CREATE TYPE -建立類型3、DBA角色:擁有系統(tǒng)所有系統(tǒng)級權(quán)限4、IMP_FULL_DATABASE角色、EXP_FULL_DATABASE角色:BACKUP ANY TABLE -備份任何表EXECUTE ANY PROCEDURE -執(zhí)行任何操作SELECT ANY TABLE -查詢?nèi)魏伪?、DELETE_CATALOG_ROLE角色:授予用戶這個角色,用戶就可以從表sys.aud$中刪除記錄,sys.aud$表中記錄著審計后的記錄,使用這個角色可以簡化審計蹤跡管理。6、SELECT_CATALOG_ROLE角色、EXECUTE_CATALOG_ROLE角色:SELECT_CATALOG_ROLE角色具有從數(shù)據(jù)字典查詢的權(quán)利,EXECUTE_CATALOG_ROLE角色具有從數(shù)據(jù)字典中執(zhí)行部分過程和函數(shù)的權(quán)利。在前面我們掌握了些基本的oracle操作,如創(chuàng)建、授權(quán)用戶,創(chuàng)建數(shù)據(jù)庫等。在OEM(Oracle Enterprise Manager)可視化的窗口環(huán)境中,雖然我們也可以很方便地做這些事,但是事實上,用SQL語言書寫在開發(fā)上更有效率!oracle提供的SQL*Plus就是個不錯的工具,如果大家喜歡窗口的開發(fā)環(huán)境,用SQLPlus Worksheet也行。SQL(Structure Query Language)語言是結(jié)構(gòu)化查詢語言,是數(shù)據(jù)庫的核心語言,是面向集合的描述性非過程化語言。SQL語言共分為四大類:數(shù)據(jù)查詢語言DQL,數(shù)據(jù)操縱語言DML,數(shù)據(jù)定義語言DDL,數(shù)據(jù)庫控制語言DCL。1、數(shù)據(jù)查詢語言DQL的基本結(jié)構(gòu)是由select子句,from子句,where子句組成的查詢塊:select from where 2、數(shù)據(jù)操縱語言DML完成在數(shù)據(jù)庫中確定、修改、添加、刪除某一數(shù)據(jù)值的任務(以下是部分常用DML語句): insert 增加數(shù)據(jù)行到表 delete 從表中刪除數(shù)據(jù)行 Update 更改表中數(shù)據(jù) 3、數(shù)據(jù)定義語言DDL完成定義數(shù)據(jù)庫的結(jié)構(gòu),包括數(shù)據(jù)庫本身、數(shù)據(jù)表、目錄、視圖等數(shù)據(jù)庫元素(以下是部分常用DDL語句) create table 創(chuàng)建表 create index 創(chuàng)建索引 create view 創(chuàng)建視圖 alter table 增加表列,重定義表列,更改存儲分配 drop table 刪除表 drop index 刪除索引 4、數(shù)據(jù)庫控制語言DCL用來授予或回收訪問數(shù)據(jù)庫的某種特權(quán),并控制數(shù)據(jù)庫操縱事務發(fā)生的時間及效果,對數(shù)據(jù)庫實行監(jiān)視等。如: grant 將權(quán)限或角色授予用戶或其它角色 revoke 回收用戶權(quán)限 roll 回滾,是當某個對話更改了數(shù)據(jù)庫中的數(shù)據(jù)后,由于某種原因用戶不想提交此更改時,oracle所采取的保護操作。這是一個把信息恢復到用戶使update、insert、delete前最后提交的狀態(tài)。 commit 提交。在完成數(shù)據(jù)庫的插入,刪除和修改操作時,只有當事務提交到數(shù)據(jù)庫才算完成,有提交前只有操作數(shù)據(jù)庫的本人才能看到,別人只有在最后提交完成才可以看到。接下來,我們在SQL*Plus中實戰(zhàn)一下,為我們下面將要做的打好基礎(chǔ)。用system登陸到SQL*Plus后,我們做如下操作: SQLcreate user maxuan identified by max;#創(chuàng)建口令為max的用戶maxuanSQLgrant connect,resource to maxuan; #為用戶maxuan授權(quán)SQLconn maxuan/max;#以用戶maxuan進行連接Lcreate table test(a number);#建立一個名為test的表,只有字段名為A的一列,數(shù)據(jù)類型為數(shù)字SQLinsert into test values(1); #插入一條記錄SQLselect * from test; #查詢記錄,此時A列的第一行為1SQLupdate test set a=2; #更改記錄,此時A列的第一行已改為2SQLcommit;#提交SQLdelete from test;#刪除test表中所有的記錄,此時test表中沒有記錄SQLroll; #回滾到提交前,此時再查詢test表,A列第一行值又回復到2oracle的數(shù)據(jù)類型在數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)表的時候,我們需要定義表中所有字段的類型,數(shù)據(jù)類型大致分為:character,numberic,date,lob和raw等,這些是最基本的數(shù)據(jù)類型。當然在oracle中也允許自定義數(shù)據(jù)類型。在oracle中提供的character數(shù)據(jù)類型:char():固定長度字符串,最大長度為2000字節(jié),如果不指定長充,缺省為1個字節(jié)長。varchar2():可變長度的字符串,最大長度為4000字節(jié),具體定義時指明最大長度,這咱類型可以放數(shù)字、字母以及ASCII碼字符集(或者EBCDIC等數(shù)據(jù)庫系統(tǒng)接受的字符集標準)中的所有符號。如果數(shù)據(jù)長度沒有達到最大值,oracle會根據(jù)數(shù)據(jù)大小自動調(diào)節(jié)字段長度。是最長用的數(shù)據(jù)類型。nchar():根據(jù)字符集而定的固定長度字符串,最大長度2000字節(jié)。nvarchar2():根據(jù)字符集而定的可變長度字符串,最大長度4000字節(jié)。long:可變長字符列,最大長度限制為2GB,用于不需要作字符串搜索的長串數(shù)據(jù)。此類型是一個遺留下來的而且將來不會被支持的數(shù)據(jù)類型,逐漸被BLOB,CLOB,NCLOB等大的數(shù)據(jù)類型所取代。numberic數(shù)據(jù)類型用來存儲負的和正的整數(shù),分數(shù)和浮點型數(shù)據(jù),在oracle中提供的numberic數(shù)據(jù)類型:number:可變長的數(shù)值列,允許0、正值及負值,m是所有的有效數(shù)字的位數(shù),n是小數(shù)點以后的位數(shù)。在oracle中提供的date數(shù)據(jù)類型:date:缺省格式是dd-mon-yy(日-月-年)在oracle中提供的lob數(shù)據(jù)類型:blob、clob、nclob:三種大型對象(lob),用來保存較大的圖形文件或帶格式的文本文件,如word文檔,以及音頻、視頻等非文本文件,最大長充是4GB。暈些數(shù)據(jù)存儲在數(shù)據(jù)庫內(nèi)部保存。bfile:在數(shù)據(jù)庫外部保存的大型二進制對象文件,最大長度是4GB,這種外部的LOB類型,通過數(shù)據(jù)庫記錄變化情況,但是數(shù)據(jù)的具體保存是在數(shù)據(jù)庫外部進行的。在oracle中提供的raw數(shù)據(jù)類型:raw():可變長二進制數(shù)據(jù),具體定義字段時必須指明最大長度,這種格式用來保存較小的圖形文件或帶格式的文本文件,它也是一種較老的數(shù)據(jù)類型,將被lob數(shù)據(jù)類型所取代。long raw:可變長二進制數(shù)據(jù),最大長度是2GB,可以用來保存較大的圖形或帶格式的文本文件,以及音頻、視頻等非文本文件,這也是一種較老的數(shù)據(jù)類型,將被lob數(shù)據(jù)類型所取代。其它的數(shù)據(jù)類型:rowid:這是oracle數(shù)據(jù)表中的一個偽例,它是數(shù)據(jù)表中每行數(shù)據(jù)內(nèi)在的唯一標識integer:整數(shù)類型四、創(chuàng)建購物網(wǎng)站后臺數(shù)據(jù)庫現(xiàn)在我們回到用J2EE體系開發(fā)購物網(wǎng)站的主題,開始實戰(zhàn)建購物網(wǎng)站的后臺數(shù)據(jù)庫。為了實現(xiàn)購物網(wǎng)站的基本的功能,我們需要建立四個表:商品列表(products)、商品類型表(item)、訂單列表(orders)和管理員列表(admin)。表結(jié)構(gòu)如下所示:item表結(jié)構(gòu)(商品類型表)字段名稱 數(shù)據(jù)類型 允許空 主鍵/外鍵 備注 type_id INTEGER(自動編號) 否 主鍵 商品類別ID標記type varchar2(30) 否 商品類別名稱product表結(jié)構(gòu)(商品列表)字段名稱 數(shù)據(jù)類型 允許空 主鍵/外鍵 備注product_id INTEGER(自動編號) 否 主鍵 商品ID標記title varchar2(30) 否 商品名稱type_id INTEGER 否 外鍵 商品類別標記info varchar2(80) 是 商品簡介price number(16,2) 否 商品價格orders表結(jié)構(gòu)(訂單列表)字段名稱 數(shù)據(jù)類型 允許空 主鍵/外鍵 備注order_id INTEGER(自動編號) 否 主鍵 訂單ID標記name varchar2(20) 否 顧客姓名address varchar2(100) 是 發(fā)貨地址tel number(16) 是 聯(lián)系電話email varchar2(30) 否 聯(lián)系emailbtime date 是 訂購日期product_id INTEGER 否 外鍵 商品標記uword varchar2(100) 是 顧客留言admin表結(jié)構(gòu)(管理員列表) 字段名稱 數(shù)據(jù)類型 允許空 主鍵/外鍵 備注admin_id INTEGER(自動編號) 否 主鍵 管理員ID標記adminname varchar2(20) 否 管理員名稱password varchar2(20) 否 管理員密碼設計完表結(jié)構(gòu)后,我們就要開始創(chuàng)建了。創(chuàng)建表我想已經(jīng)不是什么難事了,那么我們要注意的是product、item、orders這三個表之間的關(guān)聯(lián),還有自動編號。 下面是完整的SQL語句,在后面我會給出詳細的說明,你可以在SQL*Plus里對照著輸入,也可以將它存為SQL腳本文件,在SQL*Plus或SQLPlus Worksheet里執(zhí)行。當然也可以把代碼直接拷貝到SQL*Plus里執(zhí)行! rem /BY MAXUAN 開始/create table item(type_id integer not null,type varchar2(30),constraint item_pk primary key(type_id);create table product(product_id integer not null,title varchar2(30) not null, type_id integer not null,info varchar2(80),price number(16,2) not null,constraint product_pk primarykey (product_id),constraint product_fk foreign key(type_id) references item(type_id);create table orders(order_id integer not null,name varchar2(20) not null,address varchar2(100),tel number(16),email varchar2(30) not n

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論