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

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

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

    我的漫漫程序之旅

    專注于JavaWeb開發(fā)
    隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
    數(shù)據(jù)加載中……

    Spring mongodb 之簡單CRUD

    官方文檔參考:http://www.mkyong.com/mongodb/  
    用MyEclipse添加maven-Project工程,在這之前你可能需要配置你的m2eclipse
    1.將maven配置成你自己安裝的版本。


    2.設(shè)置User Settings
    當(dāng)然也可以修改倉庫默認(rèn)目錄,打maven安裝目錄conf/setting.xml
    在<settings>節(jié)點(diǎn)里
    添加:<localRepository>d:/myrepository</localRepository>即可


    pom.xml

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.test</groupId>
      <artifactId>mongodb</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <name>springmongodb</name>
      <description>This is test case</description>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
              <source>1.6</source>
              <target>1.6</target>
            </configuration>
          </plugin>
        </plugins>
      </build>
      
      <repositories>
            <repository>
                <id>spring-milestone</id>
                <name>Spring Maven MILESTONE Repository</name>
                <url>http://maven.springframework.org/milestone</url>
            </repository>
        </repositories>
     
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.8.2</version>
                <scope>test</scope>
            </dependency>
     
            <!-- Spring framework -->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-core</artifactId>
                <version>3.0.5.RELEASE</version>
            </dependency>
     
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
                <version>3.0.5.RELEASE</version>
            </dependency>
     
            <!-- mongodb java driver -->
            <dependency>
                <groupId>org.mongodb</groupId>
                <artifactId>mongo-java-driver</artifactId>
                <version>2.5.2</version>
            </dependency>
     
            <dependency>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-mongodb</artifactId>
                <version>1.0.0.M2</version>
            </dependency>
     
            <dependency>
                <groupId>cglib</groupId>
                <artifactId>cglib</artifactId>
                <version>2.2</version>
            </dependency>
     
        </dependencies>
        
    </project>
    寫完pom.xml后,執(zhí)行 項(xiàng)目-右鍵-run-maven install 
    下載完jar包,Test 成功后,就可以寫代碼了。
    SpringMongoConfig.java
    package com.config;

    import org.springframework.context.annotation.Bean;
    import org.springframework.data.document.mongodb.MongoTemplate;
    import org.springframework.data.document.mongodb.config.AbstractMongoConfiguration;

    import com.mongodb.Mongo;

    public class SpringMongoConfig extends AbstractMongoConfiguration
    {
        //主機(jī)
        @Override
        public Mongo mongo() throws Exception {
            return new Mongo("localhost");
        }
        //數(shù)據(jù)庫
        @Override
        public @Bean MongoTemplate mongoTemplate() throws Exception {
            return new MongoTemplate(mongo(), "test");
        }

    }
    實(shí)體類:
    package entity;

    import java.util.List;

    public class User
    {

        private String id;
        private String username;
        private String password;
        //文檔中的集合
        private List<String> position;

        // 要有聲明默認(rèn)的構(gòu)造方法,不然查詢的時(shí)候會(huì)報(bào)錯(cuò)(無法實(shí)例化)
        public User()
        {

        }

        public String getId()
        {
            return id;
        }

        public void setId(String id)
        {
            this.id = id;
        }

        public String getUsername()
        {
            return username;
        }

        public void setUsername(String username)
        {
            this.username = username;
        }

        public String getPassword()
        {
            return password;
        }

        public void setPassword(String password)
        {
            this.password = password;
        }

        public List<String> getPosition()
        {
            return position;
        }

        public void setPosition(List<String> position)
        {
            this.position = position;
        }

        public User(String id, String username, String password,
                List<String> position)
        {
            super();
            this.id = id;
            this.username = username;
            this.password = password;
            this.position = position;
        }

        public User(String username, String password, List<String> position)
        {
            super();
            this.username = username;
            this.password = password;
            this.position = position;
        }

    }
    測試類:
    package run;

    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Set;

    import org.junit.Test;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.annotation.AnnotationConfigApplicationContext;
    import org.springframework.data.document.mongodb.MongoOperations;
    import org.springframework.data.document.mongodb.query.Criteria;
    import org.springframework.data.document.mongodb.query.Query;
    import org.springframework.data.document.mongodb.query.Update;

    import com.config.SpringMongoConfig;

    import entity.User;

    public class App
    {
        private ApplicationContext ctx = new AnnotationConfigApplicationContext(
                SpringMongoConfig.class);
        private MongoOperations mongoOperations = (MongoOperations) ctx
                .getBean("mongoTemplate");

        @Test
        public void testSave()
        {
            List<String> list = new ArrayList<String>();
            for(int i =0; i < 100; i ++)
            {
                list.add("開發(fā)" + i);
                list.add("經(jīng)理" + i);
                User user = new User("John" + i,"123" + i,list);
                //第一個(gè)參數(shù):要保存的表名,默認(rèn)為實(shí)例名user同名的集合(表)
                
    //如果表不存在會(huì)自動(dòng)創(chuàng)建, 表名user為關(guān)鍵字不要使用
                mongoOperations.save("userinfo", user);
                list.clear();
            }
        }

        @Test
        public void testUpdate()
        {
            mongoOperations.updateFirst("userinfo",
                    new Query(Criteria.where("username").is("John0")),
                    Update.update("password", "newpassword"));
        }

        @Test
        public void testDelete()
        {
            mongoOperations.remove("userinfo",new Query(Criteria.where("id").is("4ffe3486b41f8ed41269a729")),User.class);
        }

        @Test
        public void testQuery()
        {
            //輸出所有表名
            Set<String> set = mongoOperations.getCollectionNames();
            Iterator<String> it =  set.iterator();
            while(it.hasNext())
            {
                System.out.println(it.next());
            }
            //user:要查詢的表名
            List<User> users = mongoOperations.getCollection("userinfo", User.class);
            System.out.println(users.size());
            for(User u : users)
            {
                System.out.println(u.getId());
            }
        }

    }

    源碼下載

    posted on 2012-07-12 10:42 々上善若水々 閱讀(5441) 評論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫

    主站蜘蛛池模板: 国产免费av片在线无码免费看| 亚洲免费视频在线观看| 国产精品久久免费| igao激情在线视频免费| 亚洲综合色一区二区三区| 老司机亚洲精品影院无码| 中文字幕第13亚洲另类| 永久久久免费浮力影院| 久久精品免费全国观看国产| 99久久国产精品免费一区二区| 国产成人综合亚洲一区| 亚洲精品无码久久久久秋霞 | 99久久久国产精品免费牛牛四川| 美女扒开屁股让男人桶爽免费| 亚洲天堂免费在线视频| 日韩中文字幕在线免费观看| 香蕉97超级碰碰碰免费公| 无码人妻AV免费一区二区三区| 巨胸喷奶水www永久免费| 免费一级全黄少妇性色生活片| 久久亚洲国产视频| 亚洲一区二区三区香蕉| 青娱分类视频精品免费2| 99re视频精品全部免费| 日韩av无码久久精品免费 | 亚洲亚洲人成综合网络| 亚洲av日韩av欧v在线天堂| 成人免费无码精品国产电影| 97无码免费人妻超级碰碰碰碰 | 亚洲精品无码久久久久去q| AV在线亚洲男人的天堂| 亚洲伊人久久综合影院| 亚洲精品国产综合久久一线| 免费人成在线观看视频播放| 免费看国产精品麻豆| 免费国产成人高清视频网站 | 免费一级特黄特色大片| 日本永久免费a∨在线视频| 免费在线观看一区| 好吊色永久免费视频大全| 国产精品美女久久久免费|