之所以現在週一休息,是因爲週一有北大的學生要用這間教室,昨天就是週一,我的機器自然也提供給了這些人
中的其中一個……那幫傢伙,看看他們乾的好事,給別人添了多大的麻煩!!!桌子上的東西被他們到處亂扔,
楊老師的杯子竟然跑到我的桌子上來了,丟杯子的更是大有人在,虧了我沒有把書本留在桌子上,要不那幫高材生
還指不定給我扔到哪裏去呢!開機後發現explorer沒有了,虧了有人幫忙才讓我重新進到桌面裏。而且
甚至連資源管理器的設置都給我亂改,人能無恥到這種地步也是很不容易的……真是天下烏鴉一般黑啊,其實這種
事情我好像也幹過……
=======================================================================================
徐猛,是中科院軟件所的研究生畢業,同時也是國家認證的系統分析員 [email protected],1999年和其他人
組合了一個系統分析員協會,網址是www.csai.cn,據說網站內容不錯。
網聯熱線電子票務平臺
投資建設方:
投資建設方是北京網聯熱線網絡有限公司,簡稱網聯熱線,網聯。英文簡稱是E4ticketing,坐落在上地信息
產業基地的中關村軟件園
中韓合資成立的專門從事大型文化演出組織、票務代理以及相關的電子上午活動的高科技企業。
中方:北京歌華集團(市委宣傳部下屬的大型企業)
韓方:韓國太極網(韓國最大的門戶網站之一)
項目投資額:雙方一共投資三千萬人民幣。
票務平臺支撐的大型活動
---------------------------------------------------------------------------
Web應用系統開發方法論(1)
原型化方法:
Web開發組設計、製作用戶界面的原型:
輸出製品:界面效果圖、HTML網頁
要求:功能佈局合理、界面元素完整(文字、編輯框、列表框等)
參與者:美工、界面設計師、網頁工程師(Web網頁製作)
用戶界面原型的意義:
用最直觀的方式與用戶面對面的交流
是軟件開發組構建真實系統的基礎
應用原型與業務邏輯相分離
開發組分工
Web開發組負責用戶界面原型
軟件開發組負責實現業務邏輯和構建真實的系統。
功能模塊:
權限管理:資源、菜單、角色、用戶、票品權限等等,所有的操作都需要考慮用戶角色和數據權限的結合
會員管理:會員信息管理、積分管理、獎勵管理、統計分析、訂閱等等,需要和呼叫中心協商明確需求,
可以進行會員卡驗票
網站內容管理:商品管理、票品管理、場館管理、庫存管理、基礎信息管理、單位管理、公告欄、論壇、
焦點、票品推薦、媒體管理等等,根據網站的設計完善後臺管理功能
網站交易:網站在線交易、交易訂單管理、出票,實現網站數碼票銷售
財務管理:財務報表功能,根據財務部需求確定,可以進行財務數據的導出
查詢、統計分析
詳細學習了jsp+servlet+javabean和struts+hibernate模式開發網絡應用(使用Tomcat服務器),
oracle基礎知識,java的一些特性,如深淺拷貝、反射、代理和自省機制,集合類的應用。Spring的
基礎知識和應用,XML編程和UML設計,Ajax基礎知識,SQLServer和mysql的應用,數據庫設計知識,
Linux下開發javaWeb程序,恩信ERP項目中權限管理模塊的開發
===============================================================================
下午課程開始:
……事情有點失控,本來是爭取正當權益,爲什麼我會感覺有些做的有點過火了呢……
不過還算順利,大家一起提了想法之後,田老師明天就會回來把剩下的課程帶完,嗯……我們這個
班已經太習慣聽田老師講東西了,以至於對其他的老師不知怎麼的都有一種排斥的感覺,就目前來說,
田老師,講Linux講了5天的那個老師,還有講ajax的那個小夥子,都是很乾練的講師,也是很
稱職的,要是以後能有機會聽他們的課那就很好了。
DOM解析XML:
對XML編程到底是什麼意思?其實就是把標籤中的信息提取出來,如此而已。
如何創建DOM對象模型??
DOM對象的實現類可以由很多的廠商去實現,怎麼樣去創建這個類的對象是Sun公司定義的標準,
叫做JAXP,它可以創建DOM和SAX對象!
XML的節點和子節點之間的關係就是種組合模式,其實和Junit中的TestCase和TestSuite之間
的關係是一樣的。
首先代表整個文檔的節點要獲取到,而不是去找所謂的根元素。節點和節點彼此還是有差異的。
Document接口(代表DOM節點樹的根節點,注意這個根節點不是xml文檔中的根元素!)
DocumentFragment接口(描述節點的片段)
比如
<book>
<name></name>
<author></author>
</book>
<person>
<name></name>
<author></author>
</person>
上述兩個就是一個節點的片段了……
<element>
aaaaaaa
<![CDATA[
<script>
if(x<3)
{
}
</script>
]]>
bbbbbbb
</element>
上面這段xml文檔有四個對象,element是一個總的對象,
aaaa和bbbb也分別是一個對象,中間的CDATA區域還是一個對象,
都屬於Node接口
Document節點對應xml文件的整個文檔樹,必須先使用某個DOM解析器創建出
該文檔的Document對象。
創建DOM解析器用到了工廠模式。如果創建一個對象的時候過程過於煩瑣的話,甚至不知道這個
類的名字的時候;或者創建這個類的時候有很多的setter方法需要設置屬性,這兩種情況下
最好都由設計者提供的工廠模式來幫助用戶完成較好。
使用工廠模式是比較好的方法
工廠類去讀取系統屬性的值
javax.xml.parsers.DocumentBuilderFactory本身這個工廠類也是抽象的。這個工廠
可以由多家廠家實現,但是每個廠家都必須實現這個抽象工廠的功能!
裏面有個new Instance方法,在api中,有這個方法的注意細節。
java -Djavax.xml.parsers.DocumentBuilderFactory=
org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
運用這種方法來配置系統屬性
JAXP定義瞭如何創建解析器的規範,解析器是DOM或者SAX
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new File("book.xml")) ;
Element rootElement = doc.getDocumentElement();//得到根
ArrayList和vector,vector實現線程同步,arraylist沒有實現同步。
List有序,HashSet無序且元素不可重複。
=============================================================
DOM解析需要導入整個樹Document,但是呢,SAX是基於事件解析的,不需要這麼一次
全部導入,而是按照事件流的方式不停的報告事件。
通過DHTML和Javascript可以實現網頁顯示的局部更新,先用一個動態生成表格內容的Javascript來講解,兩種方式:
表格專用的數據模型來實現:
<Script language=javaScript>
function LianJie()
{
//selValue=mainTab.rows[0].cells[0].childNodes[0].innerText;
//selValue=window.sel.innerText
selValue=window.sel.options[window.sel.selectedIndex].text
texValue=window.text1.value;
innValue=selValue+texValue;
newRow=window.mainTab[1].insertRow()
alert(newRow);
newCell=newRow.insertCell()
newCell.innerText=innValue;
}
</Script>
<Table id="mainTab">
<TR>
<TD>
<select style="width:200px;" id="sel" Name="sel">
<option>sdfsdfsdfdsfsdf</option>
<option>1111111111111</option>
<option>222222222222</option>
</select>
</TD>
<TD>
<input type=text Name="text1" id="test1">
</TD>
<TR>
<input type=button value="連接" onClick=LianJie()>
<Table>
<Table border=1 id="mainTab">
</Table>
通過標準的DOM對象模型來實現:
<html>
<head>
<title>MyHtml.html</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
<SCRIPT type="text/javascript">
function addRow()
{
alert("hehe");
var tbody = document.createElement("tbody");
var tr = document.createElement("tr");
var td = document.createElement("td");
var value = document.createTextNode("1111");
td.appendChild(value);
tr.appendChild(td);
tbody.appendChild(tr);
document.getElementById("t1").appendChild(tbody);
//background="#FF0000";
//.addChild(obj);
}
</SCRIPT>
</head>
<body>
This is my HTML page. <br>
<TABLE id="t1">
<tr><td>2222</td></tr>
</TABLE>
<a href="#" οnclick="addRow()">test</a>
</body>
</html>