<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        MongoDBJavaORM的設想

        來源:懂視網 責編:小采 時間:2020-11-09 13:33:13
        文檔

        MongoDBJavaORM的設想

        MongoDBJavaORM的設想:搞技術的手藝人都有個習慣,沒事喜歡瞎折騰。我也不例外,懂點Java、ORM 之類的技術,最近又有點迷上了MongoDB,目前對MongoDB了解的還不算太多,但興趣到挺大。有句俗語:癮大水平低。通常是指某人某項技藝不高,但偏偏喜歡耍弄這項自己不精的技藝。這句話
        推薦度:
        導讀MongoDBJavaORM的設想:搞技術的手藝人都有個習慣,沒事喜歡瞎折騰。我也不例外,懂點Java、ORM 之類的技術,最近又有點迷上了MongoDB,目前對MongoDB了解的還不算太多,但興趣到挺大。有句俗語:癮大水平低。通常是指某人某項技藝不高,但偏偏喜歡耍弄這項自己不精的技藝。這句話

        搞技術的手藝人都有個習慣,沒事喜歡瞎折騰。我也不例外,懂點Java、ORM 之類的技術,最近又有點迷上了MongoDB,目前對MongoDB了解的還不算太多,但興趣到挺大。有句俗語:癮大水平低。通常是指某人某項技藝不高,但偏偏喜歡耍弄這項自己不精的技藝。這句話

        搞技術的手藝人都有個習慣,沒事喜歡瞎折騰。我也不例外,懂點Java、ORM 之類的技術,最近又有點迷上了MongoDB,目前對MongoDB了解的還不算太多,但興趣到挺大。有句俗語:癮大水平低。通常是指某人某項技藝不高,但偏偏喜歡耍弄這項自己不精的技藝。這句話對我現在挺適合。

        why
        ORM給眾多的Javaer留下了很多美好的印象,原因只有一個“方便”,口水:雖然Hibernate也是ORM,但使用起來并不方便。

        打算自己寫個類里面封裝一套CRUD的方法,用這個類去調用 BasicDBObject ,DBCursor 等一些MongoDB Java API 里面的類。 現在的想法暫且不是很完美,但是可以簡化一些web應用的開發,說一個場景:用戶輸入表單信息,將輸入的表單信息,通過action層轉換成表單對象,對象傳入Service層操作具體的業務邏輯,再傳入底層通過API操作MongoDB,這是一個常見的場景。

        但是如果一個表單上有很多字段,那么對象到了操作MongoDB的時候將需要手工取出來,在一個個的put進去,一個頁面上有20、30個字段需要存入,這么一來一旦這樣的場景多了,我會崩潰的。如果還要來輸入的數據從MongoDB中在get出來,還要一個個的取,我會更加崩潰。。。。這樣的假象讓我不得不去折騰一下了。

        場景如圖所示:
        http://1aqpcg.bay.livefilestore.com/y1pnkPGdc-f_cm0xY9qX96lvUQh0dpDHopOYf1zhoZ0hSBWCuyqxBFyi5ddDGQEKTIGj3MaAH3iGxf91JkWBdMeYwN8Y5UTjXhf/mongodb_orm.png

        注釋:用戶通過HTML/JSP前端頁面提交參數,Action層將參數轉換成對象傳到 Service層,Service層再 傳 對象 到DAO層,DAO層 把對象轉換成參數 調用API ,到了調用底層API的時候需要一個個get/put參數,如果一多就是個悲劇啊。

        how
        就因為這樣讓我想到折騰可以進行的辦法,通過通過java反射加上SDK中注釋的功能,這樣可以靈活的操作,廢話少說,進行介紹具體怎么反射和采用注釋的折騰過程,主要思路如下:

        1.主要實現程序 MyMongoDBORMImpl
        class MyMongoDBORMImpl {
        // 添加數據
        public void addObject(Object clazz) { //傳入 new 對象,獲得表名和對象實例化參數
        Map map= MappingTools.copyABeanToMap(clazz ); //調用自己寫的 映射工具
        System.out.println(map );
        Iterator val=map.values().iterator(); // 通過反射得到 new 對象中的值
        Iterator key=map.keySet().iterator(); // 通過反射得到 new 對象中的屬性
        BasicDBObject doc = new BasicDBObject();
        while (key.hasNext()){
        doc.put(key.next().toString() , val.next() ); // 對 MongoDB BasicDBObject 對象 進行賦值
        }
        coll.insert(doc);
        }
        }

        2.測試程序 TestMongoDBORMCase
        public class TestMongoDBORMCase {

        public static void main(String[] args) throws Exception {
        MyMongoDBORMImpl impl= new MyMongoDBORMImpl();
        // 實例化Users 對象,并且插入
        Users user= new Users();
        user.setUsername("javabloger");
        user.setId(12);
        user.setPassword("www.javabloger.com ");
        user.setDept("dept");
        impl.addObject(user );

        // 實例化TestPojo 對象,并且插入
        TestPojo pojo1= new TestPojo();
        pojo1.setIds(2);
        pojo1.setUsernames("username–javabloger");
        impl.addObject(pojo1 );
        }
        }

        主要代碼介紹:
        1.Users.java、TestPojo.java 是pojo對象,里面set/get一些參數值;
        2.ORMappingTools.java 是pojo 對象和 MongoDB對象映射的工具類;
        3.ColumnMapping.java 是 注釋程序,可以讓對象屬性和表屬性更加靈活;
        4.MyMongoDBORMImpl.java 是一個封裝 MongoDB API 的程序;
        5.TestMongoDBORMCase.java 測試程序。

        詳細內容如圖所示:
        http://1aqpcg.bay.livefilestore.com/y1podfjBkRIXcs9fMoPanrQC5R1As8ed2qte5LhXailB-aOt0QCEhiw1pCLh9bVFkRTyZm8bSiR9CM5JX5tEHKaYXxUq6ZDBoBC/MongoDB_ORM_class_uml.png

        從這里下載代碼 MongoDBJavaORM.zip

        還可以從這里下載代碼 MongoDBJavaORM.zip

        因為只是草稿,代碼有些粗糙里面只寫了一個添加的方法,主要想把精力還是在構思上,這也許只是個開始,有必要的話下面將寫一個小工具完善這個想法,給大家進行分享。

        相關文章:
        mongodb 入門 介紹
        MongoDB 集群
        Java操作 MongoDB NoSQL數據庫

        –end–

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        MongoDBJavaORM的設想

        MongoDBJavaORM的設想:搞技術的手藝人都有個習慣,沒事喜歡瞎折騰。我也不例外,懂點Java、ORM 之類的技術,最近又有點迷上了MongoDB,目前對MongoDB了解的還不算太多,但興趣到挺大。有句俗語:癮大水平低。通常是指某人某項技藝不高,但偏偏喜歡耍弄這項自己不精的技藝。這句話
        推薦度:
        標簽: 人都 技術 java
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 成人午夜影视全部免费看| 亚洲s码欧洲m码吹潮| 中文字幕在线免费看线人| 亚洲美女在线国产| 免费国产黄网站在线观看动图| 国产大片91精品免费看3| 亚洲日本va一区二区三区| 无码日韩人妻av一区免费| 亚洲综合中文字幕无线码| 成**人免费一级毛片| 看亚洲a级一级毛片| 亚洲精品视频在线看| 91福利免费网站在线观看| 国产成人亚洲综合无码精品| 一区二区在线免费观看| 亚洲另类古典武侠| 日本黄色免费观看| 一个人晚上在线观看的免费视频| 国产亚洲综合色就色| 国产成人免费在线| 亚洲欧洲无卡二区视頻| 亚洲精品tv久久久久久久久久| 久久国产免费直播| 亚洲黄色在线视频| 成年人在线免费观看| 手机永久免费的AV在线电影网| 国产成人无码综合亚洲日韩| 日本免费xxxx| 美女被免费视频网站| 亚洲AV中文无码字幕色三| 青春禁区视频在线观看直播免费| 午夜亚洲WWW湿好爽| 久久亚洲国产午夜精品理论片| 成人女人A级毛片免费软件| 免费大片av手机看片高清| 亚洲人成无码网站| 免费无码黄十八禁网站在线观看| 又黄又大的激情视频在线观看免费视频社区在线| 亚洲情侣偷拍精品| 在线永久免费的视频草莓| a级毛片免费观看在线|