今天因為老謝有事,決定uml換老師了,說是博士,呵呵呵,博士不博士無所謂的,只是個頭銜嘛,中國的博士就是這樣,呵呵,下周見,今天上自習,哈哈上自習好,這兩天完善了一下我的bookshop,丑陋無比,五臟俱全,哈哈,還是得實踐,像老謝說的,得自己做,不自己做永遠變不成自己的。
轉眼又到月底了,過的真快
今天老謝發威,問oracle老師到底怎么回事,問我們干嘛嘛,既然培訓中心做了換老師的決定,肯定有為什么換的足夠理由阿,因為下午有事,今天的課沒上,上自習,上自習挺好,自己做做東西,復習以前的內容。
上uml,令人驚奇的是竟然是老謝給我們講,應該說是走運,學校就那么兩個牛老師,能不能碰上他們給講算是運氣了,首先先訓了我們一頓,我們這個班換老師不止一次了,其中老師是有問題,換個角度講,我們同學有沒有問題,是有問題的,沒有用上十二個勁兒的去投入到學習中,再好的老師,自己不努力也是沒有用的,so我們首先得努力。
講uml的語法,用例圖的畫法,做了道題目,這部分內容跟編程不一樣,需要思考,想周全,明天老師看看怎么做這個練習。
今天沒老師,數據庫的老師沒來,還比較嫩,回去再修練修練。
自己上自習,下午答了個j2ee的測試,感覺有點陌生,一是本來課程目標就是給我們一個總體性了介紹,二是這些天私下里也沒看j2ee方面的東西。測試還沒有涉及到web services,這部分知識應該是高端的了。
Oracle數據庫先擱置,明天開始,uml在j2ee平臺中的具體應用,這個是很重要的,涉及到開發軟件的流程,如何設計、規劃,要好好學。
PL/SQL、procdure
最簡單的塊結構定義、循環loop…if…then exit end loop\while …loop…end loop\for i in low_bound..high_bound loop …end loop三種方式
Create procdure p_proc_name(……)
as
begin
……
End;
里面的參數分為in和out兩種,老師就因為這個折騰了一個下午,到最后還是沒講清楚,我的理解,如果是out,即為輸出參數,既然是輸出參數就要指定輸出給誰呢,比如我定義個varchar型的v_name ,執行存儲過程的時候告訴它我用v_name來接收參數,如果是in out,則這個v_name 可以有初值作為傳入參數傳入,總之,既然是輸出參數,就必須有一個變量來接收這個參數,所以不能以’abc’這樣的常量傳入。
不知道是這個理兒不,呵呵,下午,老師好像也蒙了,哈哈。
老師自己搞不通,排錯的過程浪費了大部分時間。
還是要問,培訓中心是怎樣衡量一個老師的。
這部分數據庫的知識,基本上跟以前的知識沒有聯系,可不能因為沒了聯系,而把前面的丟了,熊瞎子掰苞米,掰一個丟一個可不行,一定要注意學習安排。
自己弄個例子做做。
今天介紹了索引和鎖,索引分為唯一索引,非唯一索引,位圖索引,函數索引,鎖講了半天也沒弄太清楚,行級鎖,表級鎖,默認作insert、update、delete時行被鎖定,不能由其他客戶端更改,也可以設查詢鎖,在一個用戶查詢的時候別人不能修改,在select語句最后加for update,關于數據庫的學習,一周過去了,大家都認為這個老師實在是不怎么樣,來這里培訓近三個月了,給我的感覺,這里的老師能力基本都不咋地,不知道天下培訓都是這樣,這樣當然能為培訓節省成本,但這將是個惡性循環,,培訓要對老師的能力素質嚴格把關的。
感冒好些了,因為吃了新康泰克,所以也發困了,昏沉沉的。
前面,老師在邊折騰邊講那寫sql語句,嗷呦,真實有些費勁,老師不覺得臉紅么?
一直在埋怨老師能力太次(確實很次),學習這東西,是兩方面的,在老師,在學生,老師好好教,學生好好學,哈哈,廢話。
但是,老師也得過得去不是,老師最重要的一個素質應該實事求是,知之為知之,不知之為不知之,哈哈,非常明顯,老師在上課之前沒有好好的準備,否則不會犯這種弱智的錯誤,垃圾,娘的,沒有一個正式些的例子,瞎起名,連自己都不知道自己用過什么名了,實際工作中就是這么做的么?
Today
如常
感冒的難受
好像因為提意見,老師開始改變了一些授課方式,不過好像越發不清楚,一會兒講講這兒一會兒講講那,一點也不系統不完整,唉…罷了。
做了個webServices的實例,服務端是純java寫的,然后用.net寫的客戶端調用,真是過癮,還有很多資料要看,謝老師的資料很實用。
今天Struts課就算結束了。
但還要好好看資料。加深理解。
聽謝老師的課感覺就是不一樣,一個問題是怎樣出現的,是怎樣思考的,是怎樣想辦法解決的,而又會有什么問題……,不是給我魚,是讓你知道怎樣釣魚的。
老師跟老師是不一樣的阿,哈哈,有些老師在來上課以前沒有好好的思考這么課該怎么講更好,只是懶惰的找一些現成的講義,幻燈片,刪刪改改就成自己的了,然后就來課堂上拿來念。嗚呼
開始Oracle,安裝,初識這東西,也不知道這東西跟sqlserver有啥不一樣,問老師了一下,說是oracle更安全一些,沒了么?郁悶!
老師說我們的日志,沒有東西,每天十分鐘就這么兩行,哈哈,有時候真的是沒有時間,有時候真的是沒啥好寫的,一天就是那樣,要是每天都那么高漲,進步,那真的是偉大了,俺們又不是文學家,不記流水賬,怎么辦,還寫成流傳千古的文章,那也不來這學什么java語言了,我們的語言就夠活了,哈哈,牢騷一下。
剛剛自己手工寫了個簡單的HelloWorld級別的ejb,
感覺:1、一定要仔細,就是僅僅差一個字母,就錯,一定要仔細,用老師的話說,心要靜
2、還是因為馬虎,把實現bean中的ejbCreate()方法給忘寫了
3、ejbCreate()方法必須拋出RemoteException異常,否則報錯
4、home接口中的create()方法必須拋出RemoteException、CreateException兩個異常,否則報錯
5、remote接口的方法也要拋出RemoteException異常
哈哈,看到ejbc successful.真是高興。
另外對于命令java weblogic.ejbc,好像是weblogic的命令,不知道它做了些什么
明天,最后一天謝老師的課,要講web serveices,真是來勁
Today講了很多內容,真是要好好的來消化一番,從最基本到利用工具開發遠程方法調用RMI講了個清清楚楚,接下來要消化了。
自己寫一個遠程方法調用
需要有一個遠程方法的接口,在客戶端和服務器端都要有,然后在服務器端實現這個接口,然后在webLogic中部署,需要有這么一命令行
build.cmd
------------------------------------------------------------
set SERVER_CLASSES=c:\serverclasses
javac -d %SERVER_CLASSES% IHello.java HelloDemo.java
java weblogic.rmic -d %SERVER_CLASSES% demo.HelloWorld.HelloDemo
------------------------------------------------------------
然后在weblogic配置頁面,啟動和關閉頁面添加要加載的類
其中在main方法里實現了向jndi添加Hello對象
測試代碼D:\劉朝春\test\firstrmi
另外,在weblogic中配置數據庫驅動(不用它自帶的驅動),目前就知道這一個方法,不知道還有沒有更好的
我們可以在C盤根目錄下建立一個文件夾:JDBCSQLSERVER2000。把這三個文件拷貝過去。
在目錄C:\bea\user_projects\domains\mydomain下找到文件startWebLogic.cmd,這是WebLogic啟動的時候第一個執行的文件,把它打開。
第一行加上:
set CLASSPATH=.;c:\JDBCSQLSERVER2000\msbase.jar;c:\JDBCSQLSERVER2000\msutil.jar;c:\JDBCSQLSERVER2000\mssqlserver.jar
以設置CLASSPATH路徑。
路徑C:\bea\weblogic81\server\bin下的文件setWLSEnv.cmd是工作窗口設置classpath用的,也需要在第一行把上面的語句加上去。
完整的:
set CLASSPATH=.;C:\bea\weblogic81\server\lib\*;C:\bea\jdk141_03\*
set CLASSPATH=%CLASSPATH%.;C:\serverclasses
set CLASSPATH=%CLASSPATH%.;c:\JDBCSQLSERVER2000\msbase.jar;c:\JDBCSQLSERVER2000\msutil.jar;c:\JDBCSQLSERVER2000\mssqlserver.jar
我只在startWebLogic.cmd下設置了Classpath就在管理界面配成功了,不知道在setWLSEnv.cmd有什么用?
發現webLogic好像不讀系統變量?
企業級javaBean,熟悉weblogic,遠程方法調用,jdbc數據源
遠程方法調用要用到jndi,遠程方法調用在tomcat里不能實現,客戶端需要有一個遠程方法的接口,服務器端將遠程方法在服務器的jndi上注冊。最后客戶端通過jndi查找強制轉換成接口名實現遠程方法調用。