oyhk 学习笔记
Spring Data MongoDB 去掉_class属性字段
相信大家使用java 操作mongodb ,很多人会选择了spring data mongodb ,我也是其中一个选择了spring data mongodb,我也相当喜欢spring的东西..哈
在开始的时候,我使用spring data mongodb ,当添加了一条数据的时候,我用MongoVUE查询了数据...如图
看到了_class属性了吗?
简单地说下这个字段,spring data mongodb 为什么要加上去,大概是为了查询数据的类型转换吧...具体大家再去查查了...
但是,你会发现,有这个字段跟没这个字段,在查询数据的时候,同样可以转换成对象....所以...还是不要吧,这样不但数据大了,虽然只是一点点..
但是看着有这个字段也非常不习惯...去掉吧...
下面两种去掉_class这个字段的属性......我个人就喜欢用xml配置方式了....
第一种是注释方式
@Configuration public class SpringMongoConfig{ public @Bean MongoDbFactory mongoDbFactory() throws Exception { return new SimpleMongoDbFactory(new Mongo(), "database"); } public @Bean MongoTemplate mongoTemplate() throws Exception { //remove _class MappingMongoConverter converter = new MappingMongoConverter(mongoDbFactory(), new MongoMappingContext()); converter.setTypeMapper(new DefaultMongoTypeMapper(null)); MongoTemplate mongoTemplate = new MongoTemplate(mongoDbFactory(), converter); return mongoTemplate; } }
第二种:xml配置方式
<?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.1.xsd http://www.springframework.org/schema/data/mongo http://www.springframework.org/schema/data/mongo/spring-mongo-1.1.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> <!-- Default bean name is 'mongo' --> <mongo:mongo host="192.168.56.101" port="27018" /> <mongo:db-factory dbname="mongoTest" mongo-ref="mongo" username="root" password="87980879nihao" /> <!-- 自动扫描以下包的类 --> <mongo:mapping-converter base-package="com.mkfree.**.domain" /> <bean id="mappingContext" class="org.springframework.data.mongodb.core.mapping.MongoMappingContext" /> <!-- 配置mongodb映射类型 --> <bean id="mappingMongoConverter" class="org.springframework.data.mongodb.core.convert.MappingMongoConverter"> <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" /> <constructor-arg name="mappingContext" ref="mappingContext" /> <property name="typeMapper" ref="defaultMongoTypeMapper" /> </bean> <!-- 默认Mongodb类型映射 --> <bean id="defaultMongoTypeMapper" class="org.springframework.data.mongodb.core.convert.DefaultMongoTypeMapper"> <constructor-arg name="typeKey"> <null /><!-- 这里设置为空,可以把 spring data mongodb 多余保存的_class字段去掉 --> </constructor-arg> </bean> <!-- 操作mongodb --> <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"> <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" /> <constructor-arg name="mongoConverter" ref="mappingMongoConverter" /> </bean> </beans>
好了,现在就配置完成了,那么我再运行一次插入数据的代码,再看看情况,好下图
现在舒服了吧...._class的字段没了...OK,搞定了...
源代码下载:Mongodb.rar
相关推荐
<bean id="mongo" class="org.springframework.data.mongodb.core.MongoFactoryBean"> ``` 一旦有了`MongoDBTemplate`,你就可以开始执行各种数据库操作了。比如,你可以使用`save()`方法保存一个对象到...
**Spring Data MongoDB: 更新文档** 在现代Web应用开发中,数据存储是至关重要的部分,而MongoDB作为NoSQL数据库中的代表,因其灵活性和高性能而受到广泛欢迎。Spring Data MongoDB是Spring框架的一个模块,它简化...
在Spring Data MongoDB中,你可以通过`@TextIndexed`注解在实体类的字段上标记为全文索引,然后在Repository中使用`textSearch()`方法进行搜索。 ```java @Document(collection = "posts") public class Post { @...
在Spring Data MongoDB中,聚合(Aggregation)是用于处理数据集合的一种强大工具,它允许开发者进行数据统计、分析和汇总。本篇文章将详细介绍如何利用Spring Data MongoDB API进行聚合查询,并提供一个具体的步骤...
在Spring框架中,Spring Data MongoDB是一个强大的库,它简化了与MongoDB数据库的交互。这个库允许开发者通过使用注解和基于Java的配置来处理MongoDB的操作。以下是对标题和描述中提到的知识点的详细说明: 1. **@...
《Spring Data MongoDB 配置详解》 在Java开发中,Spring框架因其强大的功能和灵活性而备受推崇,而在处理NoSQL数据库如MongoDB时,Spring Data MongoDB提供了便捷的接口和抽象,使得开发者能更加专注于业务逻辑,...
在Spring应用中集成MongoDB,你需要在配置文件中设置MongoDB的相关属性,如数据库名称、服务器地址和端口。这些信息可以通过`@Configuration`和`@EnableMongoRepositories`注解的类来提供。例如: ```java @...
在本项目中,我们主要探讨的是如何利用SpringBoot框架与MongoDB数据库进行集成,并通过SpringData模块进行数据操作。MongoDB是一种非关系型数据库(NoSQL),它以其灵活性、高性能和高可扩展性在现代Web应用中得到...
**Spring Data MongoDB** Spring Data MongoDB 是 Spring 框架的一个扩展,它为使用 MongoDB 数据库提供了简化的方法。MongoDB 是一个非关系型数据库(NoSQL),以文档存储为数据模型,适合处理大量非结构化数据。...
【Spring Data MongoDB 持久化文档数据方法教程】 在当今的软件开发中,Spring框架以其高度可扩展性和模块化特性被广泛应用于企业级应用程序。MongoDB作为一个流行的NoSQL数据库,以其灵活的数据模型和高性能而受到...
<bean id="mongo" class="org.springframework.data.mongodb.core.MongoFactoryBean"> <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"> ``` 这里指定了...
在Spring Data MongoDB中,开发人员经常遇到需要处理对象间的级联操作,比如级联保存(Cascade Save)。在关系型数据库中,类似的功能可以通过ORM框架如Hibernate实现,但在NoSQL数据库如MongoDB中,这种功能需要...
Spring Data MongoDB是Spring Data项目的一部分,提供了与MongoDB数据库交互的简单API。它使得开发者可以快速地在应用程序中实现对MongoDB的操作,无需关注底层的MongoDB驱动程序细节。 **2. 设置MongoDB连接** 在...
在Java中使用MongoDB,我们可以借助Spring Data MongoDB框架,它提供了一种简化的方式来操作MongoDB数据库。 首先,让我们了解Spring Data MongoDB的核心概念。Spring Data MongoDB为MongoDB提供了数据访问抽象层,...
要启用字段级加密,我们需要依赖MongoDB的Java驱动程序、Spring Data MongoDB以及用于加密的库,例如Bouncy Castle。 1. **配置依赖**: 在`pom.xml`中添加必要的依赖,包括Spring Boot的MongoDB starter、MongoDB...
Spring Data MongoDB则是Spring Data框架的一个子项目,它为MongoDB提供了全面的支持,使得Java开发者能够轻松地进行数据操作,而无需深入理解MongoDB的底层细节。本项目基于Spring Data MongoDB封装了一套API,旨在...
《深入理解Spring Data MongoDB与Java集成的地理空间查询》 在现代软件开发中,数据库的使用至关重要,尤其是在Java领域。Spring Data MongoDB作为一个强大的框架,它为开发者提供了与MongoDB数据库的无缝集成,...
此外,还可以使用Spring Data MongoDB的注解如`@Document`(用于标记实体类)、`@Id`(标识主键)以及`@Query`(自定义MongoDB查询语句)来增强功能。例如: ```java @Document(collection = "users") public class...
首先,整合MongoDB与Spring的关键在于Spring Data MongoDB模块,它提供了对MongoDB的数据访问支持。安装Spring Data MongoDB需要在项目中添加对应的Maven或Gradle依赖。在Maven的pom.xml文件中,你可以添加以下依赖...
2. **Spring Data MongoDB**:Spring Data 提供了对 MongoDB 的支持,简化了数据库操作。在项目中引入 Spring Data MongoDB 相关依赖: ```xml <groupId>org.springframework.data <artifactId>spring-data-...