<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    2010年9月11日

    有點(diǎn)亂,還需要整理

    1.常見(jiàn)OR框架:
    hibernate的3種狀態(tài)  ID生成策略

    2.helloword小程序

    clent—》app server -》strus—》action—》service—》DAO—》model—》DB

    3.面向接口編程

    4.把一個(gè)對(duì)象存到數(shù)據(jù)庫(kù),怎么做呢?
    首先實(shí)例化對(duì)象,鏈接數(shù)據(jù)庫(kù),通過(guò)sql語(yǔ)句將對(duì)象插入到數(shù)據(jù)庫(kù)。sql語(yǔ)句不是面向?qū)ο蟮恼Z(yǔ)言。

    5.通過(guò)hibernate將對(duì)象插入到數(shù)據(jù)庫(kù):
    可以通過(guò)幾個(gè)類打交道:Configuration、SessionFactory、Session(java里面的)、然后對(duì)象調(diào)用Session的save方法,就可以將對(duì)象插入到數(shù)據(jù)庫(kù)了。而不用通過(guò)sql語(yǔ)句,這種方式是面向?qū)ο蟮摹ql語(yǔ)句已經(jīng)被Hibernate取代了。把對(duì)象持久化到數(shù)據(jù)庫(kù)。


    6.學(xué)hibernate風(fēng)格
      先脈絡(luò),后細(xì)節(jié)
      先操作,后原理
      重Annotation,輕xml配置文件。


    Annotation又分兩種:JPA的Annotation 和 Hibernate-extention。前者是重點(diǎn)。


    添加.jar包,

    通常是:Build Path->Add External Archives 添加外部擴(kuò)展.jar包,但是如果有多個(gè).jar包同屬于一個(gè)項(xiàng)目,例如hibernate有多個(gè).jar包,可以把hibernate的多個(gè)包放入一個(gè)包中,做法如下:Window->Preferences->java->Build Path->User Libraries(User自定義的librares),然后根據(jù)右側(cè)提示操作即可。

    Hibernate的包
    Hibernate的包在Hibernate的源文件的lib目錄下,其中l(wèi)ib目錄里面有bytecode、optional和required3個(gè)目錄,bytecode試試生成二進(jìn)制字節(jié)碼所需要的.jar包,optional是可選的包,required是必須的包,我們選擇required下的包,全部引進(jìn)我們的項(xiàng)目包。
    建立一個(gè)hibernate項(xiàng)目,除了hibernate的.jar包以外,還要與之對(duì)應(yīng)版本的slf4j的.jar包,因?yàn)镠ibernate的.jar包里面雖然有了slf4j-api-1.5.8.jar這個(gè)包,但是這個(gè)包只有api,但是并沒(méi)有具體的實(shí)現(xiàn),還需要引入slf4j項(xiàng)目下的slf4j-nop-1.5.8.jar這個(gè)包,這個(gè)包定義了slf4j的具體實(shí)現(xiàn)。


    建立數(shù)據(jù)庫(kù)-》建立model類

    建立hibernate的配置文件

    ddl:數(shù)據(jù)定義語(yǔ)言,建表語(yǔ)句,hbm:hibernate mapping。hbm2ddl:是否自動(dòng)生成建表語(yǔ)句。
    數(shù)據(jù)庫(kù)表名不區(qū)分大小寫。

    posted @ 2011-02-09 23:42 yansj1997 閱讀(409) | 評(píng)論 (0)編輯 收藏

    1.首先解決漢化問(wèn)題
      如果從Adobe Dreamweaver CS5的官網(wǎng)上下載了一個(gè)Adobe Dreamweaver CS5,那么Adobe Dreamweaver CS5默認(rèn)你是英文版的,我們中國(guó)人還是比較習(xí)慣看漢字的。我英文不好,還是看漢字比較習(xí)慣,雖然看Adobe Dreamweaver CS5的英文提示沒(méi)什么問(wèn)題。
    要解決漢化問(wèn)題其實(shí)很簡(jiǎn)單,只要下載一個(gè)中文語(yǔ)言包放在Adobe Dreamweaver CS5的安裝目錄下,然后將英文的語(yǔ)言包改個(gè)名字或者干脆直接刪掉就可以了。
    2.jQuery API使用方法
    首先從網(wǎng)上下載一個(gè)jquery的api(我給提供了),解壓后把shared、Extensions、codehints三個(gè)文件夾復(fù)制到
    WinXP:C:\Documents and Settings\Administrator\Application Data\Adobe\Dreamweaver CS5\zh_CN\Configuration
    win7:C:\Users\Administrator\AppData\Roaming\Adobe\Dreamweaver CS5\zh_CN\Configuration
    重新啟動(dòng)Adobe Dreamweaver CS5即可。我從網(wǎng)上查了些資料,說(shuō)不用重新啟動(dòng)Adobe Dreamweaver CS5,但是我這沒(méi)啟動(dòng)前沒(méi)有效果,重新啟動(dòng)了下就可以自動(dòng)提示了。



    語(yǔ)言包太大了,傳不上來(lái),可以到其他的網(wǎng)站下載。
    http://www.tkk7.com/Files/yansj1997/jqueryAPI.rar

    posted @ 2010-11-23 14:30 yansj1997 閱讀(273) | 評(píng)論 (0)編輯 收藏

    一個(gè)項(xiàng)目組有多個(gè)人進(jìn)行開(kāi)發(fā)一個(gè)項(xiàng)目,那么對(duì)項(xiàng)目的版本進(jìn)行科學(xué)、合理的管理是每個(gè)Project Manager應(yīng)該做好的一件事,其中版本控制常用的有CVS和SVN。但是近幾年來(lái)CVS有下降的趨勢(shì),逐步被SVN取代。
    SVN一個(gè)最為重要的作用就是版本控制,除此之外還有許多功能。如過(guò)程管理,訪問(wèn)權(quán)限的設(shè)定等等。SVN有服務(wù)器端和客戶端兩個(gè)文件,可以從http://tortoisesvn.net/downloads/ 和 http://subversion.apache.org/packages.html 選擇適合自己的版本下載。

    posted @ 2010-11-21 23:23 yansj1997 閱讀(170) | 評(píng)論 (0)編輯 收藏

    代碼要能運(yùn)行;
    順著一條線讀進(jìn)去;

    posted @ 2010-11-13 16:16 yansj1997 閱讀(156) | 評(píng)論 (0)編輯 收藏

    • NaN:不是數(shù)。當(dāng)對(duì)不適當(dāng)?shù)臄?shù)據(jù)進(jìn)行數(shù)學(xué)運(yùn)算時(shí)使用,例如字符串或未定義值;
    • 正無(wú)窮大:在javascript中如果一個(gè)正整數(shù)太大的時(shí)候使用;
    • 負(fù)無(wú)窮大:在javascript中如果一個(gè)負(fù)整數(shù)太大的時(shí)候使用;
    • 正0和負(fù)0:在javascript中區(qū)分正0和負(fù)0。

    posted @ 2010-10-12 10:53 yansj1997 閱讀(161) | 評(píng)論 (0)編輯 收藏

    要學(xué)習(xí)javascript,那么首先就要認(rèn)識(shí)javascript。因?yàn)槿藗兘?jīng)常說(shuō)的是js,簡(jiǎn)稱,這是一個(gè)習(xí)慣的叫法,那么常說(shuō)的js是javascript嗎?因?yàn)檫€有一種和javascript極為相似的語(yǔ)言——jscript。
    其實(shí)在這個(gè)問(wèn)題上不用那么較真,我們首先了解一下javascript和jscript的來(lái)源,就很多問(wèn)題不用說(shuō)都明白了。
    javascript是一種由NetScape的LiveScript發(fā)展而來(lái)的原型化繼承的基于對(duì)象的動(dòng)態(tài)類型的區(qū)分大小寫的客戶端腳本語(yǔ)言,主要目的是為了解決服務(wù)器端語(yǔ)言的遺留的速度問(wèn)題,為客戶提供更流暢的瀏覽效果。為了迎接javascipt帶來(lái)的技術(shù)挑戰(zhàn),Microsoft推出了jscript。javascript和jscript都遵循ECMA標(biāo)準(zhǔn),兩者都屬于ECMAScript實(shí)現(xiàn),兩者在功能上基本上都是一樣的,至于很細(xì)的細(xì)節(jié)不是一兩句話能說(shuō)的清的,我也在學(xué)習(xí)中。
    我們?cè)趯懗绦虻臅r(shí)候一般都寫<script language="javascript"></script>而不是寫<script language="jscript"></script>,因?yàn)閖avascript是通用的名稱,所有的瀏覽器都可以識(shí)別,而jscript只有IE可以識(shí)別,其他的瀏覽器識(shí)別不了。
    那么現(xiàn)在我可以說(shuō)了,js=javascript,而javascript和jscript在功能上的實(shí)現(xiàn)幾乎是相同的,至于有沒(méi)有什么不同,這需要我們?cè)趯?shí)踐中共同探索發(fā)現(xiàn)。

    posted @ 2010-10-11 22:39 yansj1997 閱讀(168) | 評(píng)論 (0)編輯 收藏

    java中的數(shù)據(jù)類型有基本數(shù)據(jù)類型和對(duì)象類型,相應(yīng)的變量也有基本類型的變量和引用類型變量。基本的數(shù)據(jù)類型比較簡(jiǎn)單,有8中,分別為:boolean、byte、char、short、int、float、double、long,這些基本的數(shù)據(jù)類型呢比較簡(jiǎn)單,都很容易理解,它們都是一些普通的字符、數(shù)字,或者是一個(gè)表示真假的true or false,可是引用類型的值呢?引用類型的值是指向內(nèi)存引用空間的引用,就是對(duì)應(yīng)內(nèi)存地址的一個(gè)引用,其所指向的內(nèi)存中保存著變量所表示的一個(gè)或一組值。說(shuō)白了,引用類型的值就是其變量所表示的指向內(nèi)存空間地址的一個(gè)引用,值可能是一個(gè),也可能是一組。

    posted @ 2010-09-19 23:47 yansj1997 閱讀(192) | 評(píng)論 (0)編輯 收藏

            通過(guò)HTML的文件API ,F(xiàn)irefox、Chrome等瀏覽器已經(jīng)支持從操作系統(tǒng)直接拖拽文件,并上傳到服務(wù)器。

            相對(duì)于使用了十多年的HTML表單,這是一個(gè)革命性的進(jìn)步。雖然IE的落后讓很多開(kāi)發(fā)者還在觀望中,但是Gmail郵箱的附件拖拽功

    能已經(jīng)給部分用戶帶來(lái)了極大的方便,而需要大量上傳文件的CMS(內(nèi)容管理系統(tǒng))也將會(huì)從中受益。

            讓我們看一下Firefox 是如何使用拖拽上傳功能的:
            首先提供一個(gè)區(qū)域來(lái)放置文件Html代碼
            <div name="image" id="dropbox" style="min-width:300px;min-height:100px;border:3px dashed silver;"></div> 
            然后監(jiān)聽(tīng)拖拽過(guò)程中的dragenter、dragleave、drop等事件
            Js代碼

    document.addEventListener("dragenter", function(e){ dropbox.style.borderColor = 'gray';  }, false); 
    document.addEventListener("dragleave", function(e){ dropbox.style.borderColor = 'silver';  }, false); 
    dropbox.addEventListener("dragenter", function(e){dropbox.style.borderColor = 'gray';  dropbox.style.backgroundColor = 'white';  }, false); 
    dropbox.addEventListener("dragleave", function(e){ dropbox.style.backgroundColor = 'transparent';  }, false); 
    dropbox.addEventListener("dragenter", function(e){ e.stopPropagation();  e.preventDefault();  }, false); 
    dropbox.addEventListener("dragover", function(e){ e.stopPropagation(); e.preventDefault();  }, false); 
    dropbox.addEventListener("drop", function(e){e.stopPropagation(); e.preventDefault();  handleFiles(e.dataTransfer.files);  submit.disabled = false;}, false);
    其中最主要的是drop事件中用handleFiles()依次處理所有文件
    Js代碼
    handleFiles = function(files) {for (var i = 0; i < files.length; i++) { var file = files[i]; }}

    對(duì)于圖片類型的文件可以直接讀取內(nèi)容,顯示預(yù)覽圖

    Js代碼
    if (!file.type.match(/image*/)) { continue; }  
    var img = document.createElement("img"); 
    img.classList.add("obj"); 
    img.file = file; 
    preview.appendChild(img);  
    var reader = new FileReader(); 
    reader.onload = (function(aImg) { return function(e) { aImg.src = e.target.result; }; })(img); 
    reader.readAsDataURL(file);

     接下來(lái)就是核心功能:ajax上傳。首先新建一個(gè)XHR請(qǐng)求

     js代碼
    var xhr = new XMLHttpRequest(); 
    xhr.open('post', '/file/upload', true);  

    監(jiān)聽(tīng)上傳進(jìn)度和完成事件 
    Js代碼
    xhr.upload.addEventListener("progress", function(e) { 
        if (e.lengthComputable) { 
            var percentage = Math.round((e.loaded * 100) / e.total); 
            img.style.opacity = 1-percentage/100.0; 
        } 
    }, false); 
     
    xhr.upload.addEventListener("load", function(e){ 
         
    }, false);

    最后把數(shù)據(jù)模擬成multipart/form-data的格式上傳 

    Js代碼
    xhr.setRequestHeader("Content-Type", "multipart/form-data, boundary="+boundary); // simulate a file MIME POST request.  
    xhr.setRequestHeader("Content-Length", fileSize);   
    var body = ''; 
    body += "--" + boundary + "\r\n"; 
    body += "Content-Disposition: form-data; name=\""+dropbox.getAttribute('name')+"\"; filename=\"" + fileName +

    "\"\r\n"; 
    body += "Content-Type: "+fileType+"\r\n\r\n"; 
    body += fileData + "\r\n"; 
    body += "--" + boundary + "--\r\n"; 
     
    xhr.sendAsBinary(body);

    posted @ 2010-09-11 16:08 yansj1997 閱讀(2112) | 評(píng)論 (2)編輯 收藏


    posts - 8, comments - 2, trackbacks - 0, articles - 0

    Copyright © yansj1997

    主站蜘蛛池模板: 国产精品无码亚洲精品2021| 7777久久亚洲中文字幕蜜桃| 日韩亚洲翔田千里在线| 四虎国产精品免费久久| 未满十八18禁止免费无码网站 | 国产福利视精品永久免费| 亚洲黄色片免费看| 无遮免费网站在线入口| 亚洲国产主播精品极品网红| 国产亚洲蜜芽精品久久| 亚洲免费视频一区二区三区| yellow视频免费看| 亚洲国产精品成人精品无码区| 亚洲欧美成人av在线观看| 国产精品免费一级在线观看| 免费激情网站国产高清第一页| 亚洲精品专区在线观看| 日本三级在线观看免费| 亚洲今日精彩视频| 无码高潮少妇毛多水多水免费| 亚洲成AV人片高潮喷水| 国产成人精品久久亚洲高清不卡 | 中文字幕在线免费看| 久久久久亚洲AV无码专区首JN| 国产精品视频免费一区二区| 黄色a三级免费看| 亚洲AV永久无码精品一百度影院| 嫖丰满老熟妇AAAA片免费看| 免费一级特黄特色大片| 久久久无码精品亚洲日韩蜜桃| 国产亚洲成在线播放va| 亚洲成AV人片在线观看WWW| 五月亭亭免费高清在线| 91大神亚洲影视在线| 卡一卡二卡三在线入口免费| 国产精品综合专区中文字幕免费播放| 国产AV无码专区亚洲AV男同 | 中文字幕无码亚洲欧洲日韩| 在线免费观看你懂的| 亚洲人成网站在线播放2019| 国产亚洲精品成人AA片新蒲金 |