- 浏览: 312551 次
- 性别:
- 来自: 宁波
文章分类
最新评论
-
bqlin1987:
请问是不是ITeye的代码莫名的换行了?
学习SSO-1 Tomcat启用ssl -
a6821122:
在data-config.xml 里的javascript 不 ...
solr导入Oracle日期时间数据的处理 -
jie_kong:
是flexigrid不是flexgrid
FlexGrid自己用的经验 -
zjnbshifox:
呵呵,我也在摸索阶段,谢谢提醒ligywin 写道还需要补充以 ...
CAS自定义Credentials登录 -
ligywin:
还需要补充以下方法import org.apache.comm ...
CAS自定义Credentials登录
这两天自己配置了一个通过Spring Data来连接Mongodb的测试项目,并采用dsl来进行查询和分页,首先是pom
然后是spring的配置文件
Document的映射
Repository
测试代码如下:
这里有一个问题,在eclipse里面,似乎不会自动生成QCustomer这些查询类,需要按Ctrl+F11打开Maven的任务列表运行Generate source,才会在target目录下生成QCustomer,还需要复制到src/main/java下才可以,对maven插件不熟,不知道有什么插件可以自动将那个目录加为src目录
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.nbrc</groupId> <artifactId>sample</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>sample mongodb</name> <properties> <spring.version>3.2.1.RELEASE</spring.version> <spring.data.mongo.version>1.1.1.RELEASE</spring.data.mongo.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <!-- Spring 3 dependencies --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-mongodb</artifactId> <version>${spring.data.mongo.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.version}</version> <scope>test</scope> </dependency> <!-- MongoDB Java Driver --> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>2.7.1</version> </dependency> <dependency> <groupId>cglib</groupId> <artifactId>cglib</artifactId> <version>2.2</version> </dependency> <dependency> <groupId>com.mysema.querydsl</groupId> <artifactId>querydsl-core</artifactId> <version>2.9.0</version> </dependency> <dependency> <groupId>com.mysema.querydsl</groupId> <artifactId>querydsl-apt</artifactId> <version>2.9.0</version> </dependency> <dependency> <groupId>com.mysema.querydsl</groupId> <artifactId>querydsl-mongodb</artifactId> <version>2.9.0</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>2.0.2</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> <plugin> <groupId>com.mysema.maven</groupId> <artifactId>apt-maven-plugin</artifactId> <version>1.0.6</version> <executions> <execution> <phase>generate-sources</phase> <goals> <goal>process</goal> </goals> <configuration> <outputDirectory>target/generated-sources/java</outputDirectory> <processor>org.springframework.data.mongodb.repository.support.MongoAnnotationProcessor</processor> <logOnlyOnError>true</logOnlyOnError> </configuration> </execution> </executions> </plugin> </plugins> </build> <repositories> <repository> <id>spring-maven-release</id> <name>Spring Maven Release Repository</name> <url>http://maven.springframework.org/release</url> </repository> <repository> <id>querydsl-releases</id> <name>Query DSL</name> <url>http://source.mysema.com/maven2/releases</url> </repository> </repositories> </project>
然后是spring的配置文件
<?xml version="1.0"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:mongo="http://www.springframework.org/schema/data/mongo" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/data/mongo http://www.springframework.org/schema/data/mongo/spring-mongo.xsd "> <!-- Connection to MongoDB server --> <mongo:db-factory host="localhost" port="27017" dbname="mytest" /> <!-- MongoDB Template --> <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"> <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" /> </bean> <!-- Package w/ automagic repositories --> <mongo:repositories base-package="com.nbrc.sample.repository" /> <context:annotation-config /> <context:component-scan base-package="com.nbrc"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan> </beans>
Document的映射
package com.nbrc.sample.mapping; import java.util.HashSet; import java.util.Set; import org.springframework.data.mongodb.core.mapping.Document; import org.springframework.data.mongodb.core.mapping.Field; @Document public class Customer extends AbstractDocument { private String firstname, lastname; @Field("email") private EmailAddress emailAddress; private Set<Address> addresses = new HashSet<Address>(); public Customer(String firstname, String lastname) { this.firstname = firstname; this.lastname = lastname; } //getter and setter }
Repository
package com.nbrc.sample.repository; import org.bson.types.ObjectId; import org.springframework.data.querydsl.QueryDslPredicateExecutor; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository; import com.nbrc.sample.mapping.Customer; @Repository public interface CustomerRepository extends CrudRepository<Customer, ObjectId> ,QueryDslPredicateExecutor<Customer>{ }
测试代码如下:
package com.nbrc.sample; import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests; import com.nbrc.sample.mapping.Customer; import com.nbrc.sample.mapping.EmailAddress; import com.nbrc.sample.mapping.QCustomer; import com.nbrc.sample.repository.CustomerRepository; @ContextConfiguration(locations={"classpath:mongodb/mongotest-context.xml"}) public class TestMongo extends AbstractJUnit4SpringContextTests { @Autowired CustomerRepository repo; @Before public void setup(){ for(int i=0;i<=10;i++){ Customer c = new Customer("fox" + i , "red" + i); //c.setEmailAddress(new EmailAddress("zjnb" + i + "@163.com")); repo.save(c); } } @Test public void testpage(){ QCustomer query = QCustomer.customer; PageRequest pr = new PageRequest(1, 3); Page<Customer> pg = repo.findAll(query.firstname.like("%f%"), pr); Assert.assertNotNull(pg); Assert.assertTrue(pg.getSize()==3); Customer c = pg.getContent().get(0); System.out.println(c.getId()); Assert.assertEquals("fox3", c.getFirstname()); } @After public void clear(){ repo.deleteAll(); } }
这里有一个问题,在eclipse里面,似乎不会自动生成QCustomer这些查询类,需要按Ctrl+F11打开Maven的任务列表运行Generate source,才会在target目录下生成QCustomer,还需要复制到src/main/java下才可以,对maven插件不熟,不知道有什么插件可以自动将那个目录加为src目录
发表评论
-
jasper report与Spring mvc整合
2015-10-19 16:02 1598配置jasper view resolver <be ... -
solr导入Oracle日期时间数据的处理
2013-02-08 10:01 5098参考文章: http://stackoverflow.com/ ... -
solr服务端加亮设置
2013-02-06 23:25 1273在${solr.home}/conf/solrconfig.x ... -
Solr客户端自定义开发
2013-02-06 16:52 1615@Service @Qualifier(" ... -
CAS 客户端获取Credentials额外信息
2013-02-06 09:40 3936服务端的配置 1、在deployerContext.xml中加 ... -
CAS自定义Credentials登录
2013-02-02 00:03 7939先看了这篇文章http://www.blogjava.net/ ... -
Spring MVC和freemarker配置
2013-01-21 13:45 2434参考文章:http://www.cnblogs.com/hoo ... -
我自己的maven环境
2013-01-17 14:37 1065今天把自己的maven环境记录下来,准备重装系统能找到 mav ... -
Spring-data jpa学习
2013-01-17 14:25 1771一个早上加一个中午就耗在这里了啊,就一个小问题,让我吐血不已, ... -
今天学会的DetachedCriteria用法
2013-01-12 22:01 10138以前用hibernate,一般都是使用hql语句的,因为和sq ... -
学习SSO-1 Tomcat启用ssl
2012-11-29 10:41 6944根据网上的http://www.kafeitu.me/sso/ ... -
学习使用spring data连接mongodb replset
2012-04-27 16:52 48091、分别在两个命令窗口中以replset方式启动两个mongo ... -
Solr连接数据库
2012-04-10 09:40 6181要建立自己的全文检索 ... -
Solr试用小记
2012-04-10 09:15 15361、下载tomcat7、solr 3.5.0 以及IKAnal ... -
java生成二维码,qrcode
2012-03-22 15:41 6986通过barcode4j生成 @Controller @R ... -
使用HttpClient 4.1.2调用webservice
2012-01-19 14:22 19133下载httpclient,把压缩包里lib目录的所有jar放到 ... -
Spring MVC3 Hibernate3 Annotation 补充
2011-05-30 11:59 1368通过配置文件进行事务声明 app-config.xml & ... -
Spring MVC3 Hibernate3 Annotation
2011-05-30 11:56 1741web.xml <?xml version=&quo ... -
Tomcat Mod_jk负载均衡Session复制的几点补充
2010-02-24 16:49 1310tomcat和mod_jk进行负载均衡的时候,如果要实现Ses ... -
第一次实际应用Spring MVC
2009-11-17 08:37 1560要做一个简单的投票的东西,看spring mvc的文章已经很久 ...
相关推荐
Spring Data MongoDB API。 Spring Data MongoDB 开发文档。
Spring Data MongoDB中文文档 便宜下载了。
Spring Data MongoDB 2.1中的新特性 5.2。Spring Data MongoDB 2.0中的新特性 5.3。Spring Data MongoDB 1.10中的新特性 5.4。Spring Data MongoDB 1.9中的新特性 5.5。Spring Data MongoDB 1.8中的新特性 5.6。...
springdata mongodb api文档、springdata mongodb api文档
Spring Data MongoDB 中文参考文档和Springboot使用例子,其中还介绍了spring-data-mongodb 如何使用mongodb的全文检索。
spring data mongodb代码参考 个人使用
Spring-data-mongodb_1.9.4_API_docs
spring data mongodb 聚合 管道
Spring Data MongoDB 1.1.0 API CHM版 制作成chm版,方便大家查阅
Spring集成MongoDB官方指定jar包:spring-data-mongodb-1.4.1.RELEASE.jar
使用Spring Data MongoDB和MongoDB 3.0 17.1.1。配置选项 17.1.2。WriteConcern和WriteConcernChecking 17.1.3。认证 17.1.4。服务器端验证 17.1.5。其他事情要注意 附录 附录A:命名空间参考 元素 附录B:Poppers...
这个是Spring Data MongoDB API 1.8.1版本的chm格式文档,希望可以帮助到有需要的人
spring-data-mongodb-1.8.0.RELEASE(含源码)
Spring-data + MongoDb简单环境搭建源码
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)-英语-对照版.zip】 jar包下载地址:【***.jar下载地址(官方地址+国内镜像地址).txt】 ...
Spring data mongodb实例 可以运行
spring boot项目,使用springdata来操作数据库mongodb
spring mongodb mongodb实例,spring data mongodb 操作实例总结
spring支持mongodb的jar包