MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Cách chuyển BigDecimal thành Double trong Spring-data-mongodb framework

Đây là cách bạn có thể thêm trình chuyển đổi của riêng mình:

<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
    <constructor-arg ref="mongoDbFactory"/>
    <constructor-arg ref="mappingConverter"/>
    <property name="writeConcern">
        <util:constant static-field="com.mongodb.WriteConcern.FSYNC_SAFE"/>
    </property>
    <property name="writeResultChecking">
        <util:constant static-field="org.springframework.data.mongodb.core.WriteResultChecking.EXCEPTION"/>
    </property>
</bean>

<mongo:mapping-converter id="mappingConverter">
    <mongo:custom-converters base-package="com.vladmihalcea.**.mongo.converter"/>
</mongo:mapping-converter>

Bây giờ các trình chuyển đổi của bạn trông giống như sau:

@Component
public class DoubleToBigDecimalConverter implements Converter<Double, BigDecimal> {

    @Override
    public BigDecimal convert(Double source) {
        return new BigDecimal(source);
    }
}

@Component
public class BigDecimalToDoubleConverter implements Converter<BigDecimal, Double> {

    @Override
    public Double convert(BigDecimal source) {
        return source.doubleValue();
    }
}

Trước khi thêm trình chuyển đổi, tôi đã nhận:

update test.product query: { _id: 123 } update: { _id: 123, _class: "com.vladmihalcea.mongo.model.Product", name: "Tv", quantity: "10", discount: "12.34", version: 0 } nscanned:0 nupdated:1 upsert:1 keyUpdates:0 locks(micros) w:49328 50ms

Sau khi thêm trình chuyển đổi:

update test.product query: { _id: 123 } update: { _id: 123, _class: "com.vladmihalcea.mongo.model.Product", name: "Tv", quantity: "10", discount: 12.34, version: 0 } nscanned:0 nupdated:1 upsert:1 keyUpdates:0 locks(micros) w:64689 65ms



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tài liệu của MongoDB có ý nghĩa gì khi nói rằng các ObjectID có thể là duy nhất?

  2. Thiết kế lược đồ MongoDB - Trò chuyện thời gian thực

  3. Làm thế nào để loại bỏ bộ sưu tập từ cơ sở dữ liệu trong MongoDB bằng cách sử dụng trình điều khiển Mongo DB JAVA?

  4. Cách lấy dữ liệu Mongo dữ liệu bằng cách sử dụng MongoDB tổng hợp

  5. Làm thế nào bạn có thể biết nếu một bộ sưu tập được giới hạn?