锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲国产系列一区二区三区,久久精品亚洲一区二区,亚洲av乱码一区二区三区香蕉http://www.tkk7.com/stevech/category/6704.html瑗塊棬鐢哄澹叧浜嶫ava鐨勯殢渚夸竴璇磋屽凡鈥︹?/description>zh-cnThu, 08 Mar 2007 02:41:02 GMTThu, 08 Mar 2007 02:41:02 GMT60瀵硅薄鏁版嵁搴擄紙ODBMS錛?db4o璇曠敤錛圝ava version錛?/title><link>http://www.tkk7.com/stevech/articles/26610.html</link><dc:creator>瑗塊棬鐢哄澹?/dc:creator><author>瑗塊棬鐢哄澹?/author><pubDate>Wed, 04 Jan 2006 14:10:00 GMT</pubDate><guid>http://www.tkk7.com/stevech/articles/26610.html</guid><wfw:comment>http://www.tkk7.com/stevech/comments/26610.html</wfw:comment><comments>http://www.tkk7.com/stevech/articles/26610.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/stevech/comments/commentRss/26610.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/stevech/services/trackbacks/26610.html</trackback:ping><description><![CDATA[<span id="BlogViewId">鎴戣寰楁垜鐜板湪涓簡(jiǎn)涓ょ姣掞細(xì)Java鍜孲QL銆傝タ璋氭湁浜戯細(xì)When you have a hammer, everything looks like a nail銆傚彧瑕佸姩鎵嬪啓紼嬪簭錛屽ご鑴戜腑涓嶈嚜瑙夊湴灝眕ublic class...鍏跺疄寰堝鏃跺欎竴涓よ綆鐭殑scripts灝卞彲浠ヤ簡(jiǎn)錛屽嵆浣垮儚鍦╓indows涓婏紝鎴戜滑涔熷彲浠ュ啓jscript銆亀sh鑴氭湰銆傝屽湪璧勬枡鍌ㄥ瓨 涓婏紝鍏崇郴鏁版嵁搴撴洿鏄笉浜屾硶瀹濄傛嬁鍒頒竴涓」鐩紝鎴戦┈涓婂氨瑕佸皢瀹冨垎瑙f垚鍚勪釜Table錛屾垜瑙夊緱SQL鏄姝ゅ己澶у拰鐏墊椿錛屼互鑷充簬涓瑙佸埌O/R鏄犲皠灝辮寰楀帉鎭訛紝鐩? 鍒扮幇鍦ㄦ垜涔熸病鏈夌榪嘓ibernate銆?br>鍛靛懙錛屾姳鎬ㄤ簡(jiǎn)鍗婂ぉ錛屼笌鍏跺湪O/R鏄犲皠涓嫤鑻︽專鎵庯紝涓嶅璺沖嚭鏉ョ湅鐪嬪叾瀹冪殑椋庢櫙錛屾瘮濡傦細(xì)ODBMS錛堝璞℃暟鎹簱錛夈傚澹垰涓嬭澆浜?jiǎn)db4o榪欎釜鎵璋撳璞℃暟鎹簱錛岃瘯鐫鐜╀簡(jiǎn)涓涓嬶紝铏藉皻涓嶇煡鍛充箣鐢樿嫤錛屽媺寰椾互涓紿ヨ憊鏂戙?br>db4o 鐩墠鏄疺ersion 5.0錛屼粎闇瑕佷竴涓猨ar鏂囦歡錛屾垜鐢ㄧ殑鏀寔JDK5鐨勯偅涓細(xì)db4o-5.0-java5.jar; 浣犲鏋滅敤鐨勫叾瀹冪増鏈殑JDK錛屾湁鐩稿搴旂殑jar鏂囦歡銆傝繖涓猨ar鏂囦歡灝辨槸鏁版嵁搴擄紝鍙笉瑕佹兂璞℃垚JDBC Driver涔嬬被鐨勪笢涓滐紝JDBC Driver鏄疪DBMS錛堝叧緋繪暟鎹簱錛夋墠闇瑕佺殑涓滀笢錛屽懙鍛點(diǎn)?br>濂戒簡(jiǎn)錛岄棽璇濅笉璇達(dá)紝鎴戜滑鐜板湪璇曡瘯榪欎釜ODBMS銆傞鍏堬紝寤轟竴涓綘鎯寵淇濆瓨鐨勫璞★紝鎴戝啓浜?jiǎn)涓涓潪甯哥畝鍗曠殑Student.java錛?br><br>public class Student {<br>    private String name;<br>    private int points;<br>    <br>    <br>    /** Creates a new instance of Student */<br>    public Student(String name, int points) {<br>        this.name = name;<br>        this.points = points;<br>    }<br>    <br>    public String getName() {<br>        return name;<br>    }<br>    <br>    public int getPoints() {<br>        return points;<br>    }<br>    <br>    public void addPoints(int points) {<br>        this.points += points;<br>    }<br>    <br>    public String toString() {<br>        return name + "/" + points;<br>    }<br>}<br><br>榪欎釜綾婚潪甯哥畝鍗曪紝鍙湁涓や釜instance fields錛屽鐢熷鍚嶅拰鍒嗘暟錛屼互鍙?qiáng)涓浜涚畝鍗曠殑methods錛屽畬鍏ㄦ病鏈夌敤浠諱綍璺焏b4o鐩稿叧鐨勪唬鐮併傜劧鍚庢垜浠氨鍙互灝哠tudent鐨勫疄渚嬫斁鍏ユ暟鎹簱鎿嶄綔浜?jiǎn)锛?xì)InsertObj2Db4o.java錛?br><br>import java.io.File;<br>import java.util.List;<br><br>import com.db4o.Db4o;<br>import com.db4o.ObjectContainer;<br>import com.db4o.ObjectSet;<br>import com.db4o.query.*;<br><br>/**<br> *<br> * @author Stevech<br> */<br>public class InsertObj2Db4o {<br>    <br>    /** Creates a new instance of InsertObj2Db4o */<br>    public InsertObj2Db4o() {<br>    }<br>    <br>    public static void main(String[] args) {<br>        ObjectContainer db = Db4o.openFile("student.yap");<br>        try {<br>            storeStudents(db);<br>            retrieveAllStudents(db);<br>            retrieveStudentByName(db);<br>            retrieveStudentByPoints(db);<br>            updateStudent(db);<br>            deleteStudent(db);<br>            descendStudents(db);<br>            retrievePartStudents(db);<br>        } finally {<br>            db.close();<br>        }<br>    }<br>    <br>    public static void storeStudents(ObjectContainer db) {<br>        Student bg = new Student("Bill Gates", 119);<br>        Student sm = new Student("Scott McNealy", 102);<br>        Student sj = new Student("Steve Jobs", 150);<br>        Student rs = new Student("Richard Stallman", 500);<br>        Student le = new Student("Larry Elison", 105);<br>        Student sc = new Student("Steve Cheng", 95);<br>        <br>        db.set(bg);<br>        db.set(sm);<br>        db.set(sj);<br>        db.set(rs);<br>        db.set(le);<br>        db.set(sc);<br>        <br>        System.out.println("Added " + bg + ", " + sm + ", " + sj);<br>        System.out.println("Added " + rs + ", " + le + ", " + sc);<br>    }<br>    <br>    public static void retrieveAllStudents(ObjectContainer db) {<br>        ObjectSet<Student> result = db.get(Student.class);<br>        listResult(result);<br>    }<br>    <br>    public static void retrieveStudentByName(ObjectContainer db) {<br>        Student proto = new Student("Bill Gates", 0); // Note: 0 is  default value for int<br>        ObjectSet<Student> result = db.get(proto);<br>        listResult(result);<br>    }<br>    <br>    public static void retrieveStudentByPoints(ObjectContainer db) {<br>        Student proto = new Student(null, 500);<br>        ObjectSet<Student> result = db.get(proto);<br>        listResult(result);<br>    }<br>    <br>    public static void updateStudent(ObjectContainer db) {<br>        ObjectSet<Student> result = db.get(new Student("Steve Cheng", 95));<br>        Student found = result.next();<br>        found.addPoints(10);<br>        db.set(found);<br>        retrieveAllStudents(db);<br>        System.out.println("Added 10 points for " + found);<br>    }<br>    <br>    public static void deleteStudent(ObjectContainer db) {<br>        ObjectSet<Student> result = db.get(new Student("Steve Cheng", 0));<br>        Student found = result.next();<br>        db.delete(found);<br>        retrieveAllStudents(db);<br>        System.out.println("Deleted " + found);<br>    }<br>    <br>    public static void descendStudents(ObjectContainer db) {<br>        Query query = db.query();<br>        query.constrain(Student.class);<br>        Query descendQuery = query.descend("points").orderDescending();<br>        ObjectSet<Student> result = query.execute();<br>        listResult(result);<br>    }<br>    <br>    public static void retrievePartStudents(ObjectContainer db) {<br>        List<Student> result = db.query(new Predicate<Student>() {<br>            public boolean match(Student s) {<br>                return s.getPoints() > 120 && s.getPoints() < 500 || s.getName().equals("Bill Gates");<br>            }<br>        });<br>        listResult(result);<br>    }<br>    <br>    public static void listResult(ObjectSet result) {<br>        //System.out.println(result.size());<br>        System.out.println("************************************");<br>        while(result.hasNext()) {<br>            System.out.println(result.next());<br>        }<br>    }<br>    <br>    public static void listResult(java.util.List result){<br>        //System.out.println(result.size());<br>        System.out.println("************************************");<br>        for(int x = 0; x < result.size(); x++)<br>            System.out.println(result.get(x));<br>    }    <br>}<br><br>鎴戜滑涓鐐逛竴鐐瑰湴鐪嬶細(xì)<br>棣? 鍏堬紝涓嶳DBMS涓鏍鳳紝鎴戜滑闇瑕佽繛鎺ュ埌鏁版嵁搴撱俤b4o鍙互榪愯涓篊/S妯″紡錛堟垨鑰呭彨Remote妯″紡錛屽氨鍍廜racle, PostgreSQL, MSSQLSERVER, etc錛夛紝涔熷彲浠ユ槸local妯″紡錛堟垨鑰呭彨embed妯″紡錛夈侭orland鐨凧DataStore涔熶笌姝ょ浉浼鹼紝涓嶅悓鐨勬槸JDataStore鏄? RDBMS銆傛垜浠繖閲岀敤local妯″紡錛?br><br>        ObjectContainer db = Db4o.openFile("student.yap");<br><br>瀹冩墦寮褰撳墠鐩綍涓嬬殑student.yap鏂囦歡錛堜篃鍗蟲暟鎹簱鏂囦歡錛夛紝濡傛灉娌℃湁錛屽氨鑷姩鏂板緩涓涓傜劧鍚庯紝灝辮寰閲岄潰娣繪暟鎹簡(jiǎn)錛?storeStudents method)<br><br>        Student bg = new Student("Bill Gates", 119);<br>    ...<br>        db.set(bg);<br><br>闈炲父鍦扮畝鍗曘?br>鍚屾牱錛屽彇鍑烘暟鎹篃鏄竴鏍峰湴綆鍗曪細(xì)(retrieveAllStudents method)<br><br>        ObjectSet<Student> result = db.get(Student.class);<br><br>鍏堝憡璇塪b錛堜竴涓狾bjectContainer瀹炰緥錛夋垜浠鍙栧嚭鏁版嵁鐨勭被鍨嬫槸Student錛岀劧鍚庢墍鏈夌殑Student綾誨瀷鐨勬暟鎹氨瀛樺湪ObjectSet涓簡(jiǎn)銆?br>鐜板疄涓紝緇濆ぇ澶氭暟鏃跺欐垜浠彧瀵歸偅浜涙弧瓚崇壒瀹氭潯浠剁殑鏁版嵁鎰熷叴瓚o紝姣斿璇達(dá)紝鎴戜滑瀵笲ill Gates鍚屽鏈夋瀬澶х殑鍏磋叮錛?retrieveStudentByName method)<br><br>        Student proto = new Student("Bill Gates", 0); // Note: 0 is  default value for int<br>        ObjectSet<Student> result = db.get(proto);<br><br>鎴? 浠厛寤虹珛涓涓猄tudent鐨勬ā鏉匡紝name涓築ill Gates錛岃宲oints涓轟換鎰忓箋傜劧鍚庡皢榪欎釜妯℃澘閫掔粰db鍗沖彲銆傚煎緱娉ㄦ剰鐨勬槸榪欓噷points鍊間負(fù)0錛岃繖騫朵笉鏄垜浠笇鏈汢ill Gates鍚屽鐨勫垎鏁頒負(fù)楦泲錛岃屼粎浠呭洜涓?鏄痠nt鐨勯粯璁ゅ鹼紝濡傛灉榪欎釜鍙傛暟鏄疧bject綾誨瀷錛屾垜浠繖閲屽氨浼?xì)璧嬩簣瀹冮粯璁ゅ糿ull錛堝弬瑙? retrieveStudentByPoints method錛夊綋鎸囧畾鐨勫弬鏁頒負(fù)榛樿鍊兼椂錛屾剰鍛崇潃鎴戜滑涓嶅瀹冭繘琛屼換浣曢檺鍒躲傝繖緇欏仛妯℃澘鐨勬柟娉曞湪db4o涓О浣淨(jìng)BE (Query by Example)錛岀敱浜庢樉鑰屾槗瑙佺殑緙虹偣錛屽疄闄呬笂寰寰鎴戜滑浣跨敤鐨勬槸鍙︿竴縐嶇О浣淣ative Queries鐨勬柟娉曟潵閫夊彇鏁版嵁錛堣鍚庨潰retrievePartStudents method錛?br>鐜板湪錛屾垜浠寰桽teve Cheng鍚屽澶彲鎬滀簡(jiǎn)錛屽洜涓哄彧鏈変粬鐨勫垎鏁板湪100浠ヤ笅錛屽洜姝ゆ垜浠喅瀹氱粰浠栧姞涓?0鍒嗭紙涓婂笣淇濅綉浣犵鍒拌繖鏍風(fēng)殑鏁欏笀錛夛細(xì)(updateStudent method)<br><br>        ObjectSet<Student> result = db.get(new Student("Steve Cheng", 95));<br>        Student found = result.next();<br>        found.addPoints(10);<br>        db.set(found);<br><br>鎴? 浠厛灝哠teve Cheng浠庢暟鎹簱涓彇鍑烘潵鏀懼湪涓涓悕涓篺ound鐨凷tudent瀵硅薄涓紝鐒跺悗璋冪敤Student鐨刬nstance method: addPoints(int points)鏉ョ粰found鍔犱笂10鍒嗐傜劧鍚庯紝灝唂ound閲嶆柊鏀懼叆db涓傝繖灝卞畬鎴愪簡(jiǎn)鏇存柊鎿嶄綔銆?br>鎴? 浠啀鏉ョ湅鐪嬭繖涓彮綰ч噷鐨勫鐢熴傗淥h, my God!鈥?鏈変漢鍚堜笉涓婂槾浜?jiǎn)锛屸滆繖涓彮閲屽叏鏄ぇ鑵曞効綰х殑浜虹墿錛丅ut wait, 榪欎釜鍙玈teve Cheng鐨勬槸浠涔堜笢瑗垮晩錛熺珶鐒惰窡Bill Gates (RMS錛屽鏋滆璇濈殑浜烘槸GNU fellow鐨勮瘽)鍒楀湪涓璧楓傚己鐑堣姹傚簾浜?jiǎn)浠栧Q侊紒鈥濋【瀹㈠氨鏄笂甯濓紝鎴戜滑鍙緱瀵逛笉璧稴teve Cheng浜?jiǎn)锛尀畣浠栦粠鏁版嵁搴撲腑鍒犻櫎锛?xì)(deleteStudent method)<br><br>        ObjectSet<Student> result = db.get(new Student("Steve Cheng", 0));<br>        Student found = result.next();<br>        db.delete(found);<br><br>涓庢洿鏂扮被浼鹼紝鎴戜滑鍏堝緱閫夊嚭Steve Cheng鏀懼埌found瀵硅薄涓紝鐒跺悗錛宒b.delete(found)錛孲teve Cheng灝變粠榪欎釜瀛愯櫄涔屾湁鐨勭彮綰т腑娑堝け浜?jiǎn)銆?br>濂戒簡(jiǎn)錛屽墿涓嬬殑閮芥槸鑻遍泟濂芥眽錛屾垜浠寜浠栦滑鍚勮嚜鐨勫垎鏁版潵緇欎粬浠帓搴ф錛堣繖鑷沖皯姣旀灞卞ソ姹夋悶澶╅檷铦岃毆鏂囨帓搴ф鍏鉤錛夛細(xì)(descendStudents method)<br><br>        Query query = db.query();<br>        query.constrain(Student.class);<br>        Query descendQuery = query.descend("points").orderDescending();<br>        ObjectSet<Student> result = query.execute();<br><br>榪欓噷鐨勫仛娉曚笉鍚屼簬QBE鎴栨槸Native Queriy錛屽彨鍋歋ODA Query錛屾槸灞炰簬姣旇緝搴曞眰鐨勬柟娉曪紝浣嗚繕鏄緢瀹規(guī)槗鐪嬫槑鐧界殑銆傝櫧鐒舵病鏈塏ative Queriy閭d箞鏄撲簬浣跨敤錛屼絾鍔熻兘鍗存槸寰堝己澶х殑銆傚洜姝ゅ湪瀹為檯涓竴浜涘湴鏂硅繕鏄渶瑕佺敤鍒癝ODA Query鐨勩?br>鎺? 浜?jiǎn)羼攱啤锛屾垜浠浠幘_捐嫳涔嬩腑閫夊垢榪愬効鍘誨弬鍔犵敱HAL鍏徃璧炲姪鐨勫浠よ惀媧誨姩浜?jiǎn)锛屽彧鏈夐偅浜涙垚鐕W浠嬩簬120鍒?00涔嬮棿鐨勬墠鑳借幏寰楄繖涓ぉ涓婃帀鐨勯鍎塊ゼ錛岋紙< 500錛岃繖涓嶆槸鏄庢樉鎺掓枼RMS鍢涳級(jí)錛屼笉榪囧彧瑕佷綘鏄疊ill Gates鍒欎笉綆′綘鎴愮嘩濡備綍浣犻兘鑳芥崱榪欎釜棣呭効楗煎悆錛堬紵錛燂級(jí)錛?retrievePartStudents method)<br><br>        List<Student> result = db.query(new Predicate<Student>() {<br>            public boolean match(Student s) {<br>                return s.getPoints() > 120 && s.getPoints() < 500 || s.getName().equals("Bill Gates");<br>            }<br>        });<br><br>榪欐槸涓涓吀鍨嬬殑Native Query錛堣繖鍙槸db4o澶т功鐗逛功寮曚互涓哄偛鐨勪笢涓滐級(jí)錛孭redicate鏄畾涔夊湪import com.db4o.query.*閲岀殑涓涓娊璞$被錛?br>        public abstract class Predicate<ExtentType>extends java.lang.Objectimplements java.io.Serializable<br>瀹? 涔変簡(jiǎn)public abstract boolean match(ExtentType candidate)鏂規(guī)硶銆傚鏋滆繖涓柟娉曡繑鍥瀟rue錛屽垯candidate琚斁鍏esult涓傝屾潯浠惰鍙ヤ篃鏄爣鍑嗙殑Java璇彞錛堝鏋滀嬌鐢?Net 鍒欐槸鏍囧噯鐨?Net璇彞錛夛紙鑰屼笉鏄儚RDBMS鐨凷QL錛夛紝榪欎篃鏄痙b4o鑷豹鐨勫湴鏂廣?br>鏇村鏈夊叧db4o鐨勬秷鎭紝璇瘋闂?a >http://www.db4o.com</a></span><img src ="http://www.tkk7.com/stevech/aggbug/26610.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/stevech/" target="_blank">瑗塊棬鐢哄澹?/a> 2006-01-04 22:10 <a href="http://www.tkk7.com/stevech/articles/26610.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> 主站蜘蛛池模板: <a href="http://ydxcsh.com" target="_blank">好猛好深好爽好硬免费视频</a>| <a href="http://socgl.com" target="_blank">av大片在线无码免费</a>| <a href="http://zzhjnmzp.com" target="_blank">亚洲爆乳无码一区二区三区</a>| <a href="http://tiantangapp.com" target="_blank">国产成人精品一区二区三区免费</a>| <a href="http://jlzjjy.com" target="_blank">99热亚洲色精品国产88</a>| <a href="http://nh-car.com" target="_blank">亚洲国产精品一区二区九九</a>| <a href="http://c9133.com" target="_blank">99久久精品免费精品国产</a>| <a href="http://whyandroid.com" target="_blank">亚洲AV无码一区二区大桥未久</a>| <a href="http://xianzznn.com" target="_blank">亚洲国产另类久久久精品黑人</a>| <a href="http://udlmw.com" target="_blank">最近中文字幕mv手机免费高清</a>| <a href="http://liulian88.com" target="_blank">国产免费黄色无码视频</a>| <a href="http://cqkalai.com" target="_blank">亚洲国产成人久久三区</a>| <a href="http://zibochanglong.com" target="_blank">亚洲伊人久久综合中文成人网</a>| <a href="http://udlmw.com" target="_blank">免费观看激色视频网站(性色)</a>| <a href="http://hnkangshi.com" target="_blank">五月天婷婷精品免费视频</a>| <a href="http://fanhaogo.com" target="_blank">亚洲av永久无码嘿嘿嘿</a>| <a href="http://48eh.com" target="_blank">亚洲精品中文字幕乱码三区</a>| <a href="http://633223.com" target="_blank">在线观看免费为成年视频</a>| <a href="http://ningxialanh.com" target="_blank">久久国产精品萌白酱免费</a>| <a href="http://6nn5.com" target="_blank">美美女高清毛片视频黄的一免费 </a>| <a href="http://www999973.com" target="_blank">日韩亚洲国产综合高清</a>| <a href="http://ettedia.com" target="_blank">色噜噜AV亚洲色一区二区</a>| <a href="http://bdykdq.com" target="_blank">在线观看免费为成年视频</a>| <a href="http://ncmyw.com" target="_blank">最近中文字幕大全免费视频</a>| <a href="http://yy6767.com" target="_blank">全部一级一级毛片免费看</a>| <a href="http://wwwvv99.com" target="_blank">亚洲中文字幕乱码熟女在线</a>| <a href="http://628669.com" target="_blank">午夜亚洲www湿好大</a>| <a href="http://359777b.com" target="_blank">亚洲精品在线视频</a>| <a href="http://023439.com" target="_blank">蜜臀91精品国产免费观看</a>| <a href="http://fkg675.com" target="_blank">曰批视频免费40分钟试看天天</a>| <a href="http://huafagz.com" target="_blank">国产激情久久久久影院老熟女免费</a>| <a href="http://99999pp.com" target="_blank">亚洲欧洲AV无码专区</a>| <a href="http://wuiso.com" target="_blank">亚洲欧洲校园自拍都市</a>| <a href="http://nh-car.com" target="_blank">亚洲国产精品无码AAA片</a>| <a href="http://dazngt.com" target="_blank">亚洲国产精品尤物yw在线</a>| <a href="http://6006769.com" target="_blank">日本免费一区二区三区最新</a>| <a href="http://zaidongmaixi.com" target="_blank">可以免费看黄视频的网站</a>| <a href="http://kimnote.com" target="_blank">特级无码毛片免费视频尤物</a>| <a href="http://455zx.com" target="_blank">国产线视频精品免费观看视频</a>| <a href="http://1314c.com" target="_blank">十八禁的黄污污免费网站</a>| <a href="http://48eh.com" target="_blank">激情小说亚洲色图</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>