关闭

Spring与MongoDB

标签: springmongodb框架
130人阅读 评论(0) 收藏 举报
分类:

之前学习过一段时间的Spring框架,但是只限于很初级的样子,这里还是要总结一下啦~~,以后可能会用的到
我的一个配置文件,参考自网上

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mongo="http://www.springframework.org/schema/data/mongo"
    xsi:schemaLocation="http://www.springframework.org/schema/context   
          http://www.springframework.org/schema/context/spring-context-3.0.xsd   
          http://www.springframework.org/schema/data/mongo   
          http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd   
          http://www.springframework.org/schema/beans   
          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

    <mongo:mongo host="192.168.1.202" port="27017" />

    <context:annotation-config />

    <bean id="mongoTemplate" class="org.springframework.data.document.mongodb.MongoTemplate">
        <constructor-arg ref="mongo" />
        <constructor-arg name="databaseName" value="test" />
        <!-- <constructor-arg name="defaultCollectionName" value="test" /> -->//默认的表名,当然也可以不用写,但是在调用方法的时候就不能使用默认的表名,需要指明所要处理的表
    </bean>

    <bean id="personRepository" class="com.mongo.dao.impl.PersonRepository">
        <property name="mongoTemplate" ref="mongoTemplate"></property>//
    </bean>
</beans> 

然后是获取实体,也就是 beans

public class test {
    private static Log log = LogFactory.getLog(test.class.getName());

    private  static PersonRepository pr = null;

    public static PersonRepository getPr() {
        return pr;
    }
    public void setPr(PersonRepository pr) {
        this.pr = pr;
    }

    public static void init(){
         log.debug("开始启动");
         ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
         pr= (PersonRepository)ctx.getBean("personRepository");

    }
}

配置文件也能提示我们一点就是
MongoTemplate(Mongo mongo, String databaseName)
MongoTemplate的构造函数,需要MongoDB数据库的连接地址,以及所连接的数据库的名称
而另外的一个实体personRepository,引用另外我们构建的实体MongoTemplate的原因是因为personRepository本身这个类就有一个MongoTemplate的属性,这里就涉及到beans的注入方法
http://blog.csdn.net/dwt1220/article/details/7265159
http://blog.csdn.net/cuiran/article/details/8287204

<mongo:mongo host="192.168.1.202" port="27017" />
也可以这样来写
<bean id="mongo" class ="com.mongodb.Mongo">
<constructor-arg value="${db.host}"/>
<constructor-arg value="${db.port}" />构造函数注入

public Mongo(String host, int port)//Mongo的构造,连接ip以及端口号。
下次接着写喽~~

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:20935次
    • 积分:781
    • 等级:
    • 排名:千里之外
    • 原创:57篇
    • 转载:1篇
    • 译文:0篇
    • 评论:4条