mongodb java spring data
- 关于如何集成spring-data-mongodb到项目中,已经有很多人介绍了,这里只给出几个链接。
- GETTING STARTED Accessing Data with MongoDB: http://spring.io/guides/gs/accessing-data-mongodb/
- MongoDB初探(二)----使用spring-data配置mongodb :http://yangjizhong.iteye.com/blog/1206901
- spring与mongodb使用教程之整合的三种方式: http://my.oschina.net/yilian/blog/175525
- 项目背景
- 开始用C#完成项目,采用mongodb数据库,客户要求完成一个b\s版本的对应程序。
- b\s版本采用java语言,数据库底层需要完成对mongodb的CRUD操作。
- 调研了下,最后决定还是用spring data mongodb来完成这个任务,具体的开发配置不做赘述。
- 遇到问题
熟悉C#的人都知道,C#都是用属性生成对象的特征,而属性一般首字母是大写的,那就意味着如果不作处理,C#这边的程序如果存到mongodb里面的话将会是首字母大写的。同平台,同语言就不会有接下来的问题了。java的bean写法一般都是getter setter,然后一个私有的字段,当然字段首字母要小写!so 存到mongo里面就会是首字母小写。所以问题就来了,已经有库是大写,那么java这边读数据就读不回来了,读到的都是null。万般无奈,只好改做大写,问题解决。
但是第二个问题又来了,在查询时,条件key是string,omg,大牛们的convert自动转为小写了,然后就异常了(找不到属性)。好吧,我只能再找另一种方案,@Filed,就是他了。
第三个问题,java不建库直接存mongo,多了一个字段_class,里面存的值是这个document的类型,但我真不需要这个东西,如果多了这个东西,我C#的程序又该报错了。幸好有google,http://www.mkyong.com/mongodb/spring-data-mongodb-remove-_class-column/。
总结:
- spring是个好东西,spring data也是大树底下好乘凉,so还是多学学spring-data吧。
- 大牛们造轮子的速度,是远超过我等用轮子的速度,每个框架都有各自的应用场景,尽量选合适的技术。
- 跨语言确实是个问题,最好提前设计好这些问题。
- maven做项目引用管理还是要比nuget好用。
- 没有lamda的日子只能多敲代码了,坐等项目升级java 8.。
- mongodb的驱动封装千千万,抽空挨个试下吧。
PS:没有代码,欢迎交流,有砖轻拍。
mongodb java spring data的更多相关文章
- MongoDB学习-->Spring Data Mongodb-->MongodbTemplate
配置文件application-dev.yml: server: port: 8888 mongo: host: localhost port: 27017 timeout: 60000 db: ma ...
- MongoDB学习-->Spring Data Mongodb框架之Repository
application-dev.yml server: port: 8888 mongo: host: localhost port: 27017 timeout: 60000 db: mamabik ...
- mongodb Decimal Spring data mongodb Decimal128 SpringMvc 序列化字符串 json converter
Mongodb 3.4 就开始支持Decimal 类型,解决double的精度问题,但是不太好用,MapReduce的时候Array.sum 也不能计算 Decimal.比较坑,但是聚合可以用 Spr ...
- elasticSearch Java Spring Data Api
1. BoolQueryBuilder qb=QueryBuilders. boolQuery(); qb.should(QueryBuilders.matchQuery("keyWord& ...
- Introduction to Spring Data MongoDB
Introduction to Spring Data MongoDB I just announced the new Spring 5 modules in REST With Spring: & ...
- Spring Data Commons 官方文档学习
Spring Data Commons 官方文档学习 -by LarryZeal Version 1.12.6.Release, 2017-07-27 为知笔记版本在这里,带格式. Table o ...
- SpringBoot第九篇:整合Spring Data JPA
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10910059.html 版权声明:本文为博主原创文章,转载请附上博文链接! 前言 前面几章, ...
- 初入spring boot(八 )Spring Data REST
1. 什么是Spring Data REST Spring Data JPA是基于Spring Data 的Repository之上,可以将Repository自动输出为REST资源.目前Spring ...
- 简化RESTful开发,Spring Data REST让你少掉发
1 前言 欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章! 前言 Springboot + Spring MVC大大简化了Web应用的RESTful开发,而Spring Data RE ...
随机推荐
- html之间的传值
传值:window.location.href=“eidit.html?activityId=“+acytivityIDd: 将id放进地址栏传到另一html页面 接受 再用var str=wind ...
- First class ,6 examples anlaysisi
http://www.fgm.cc/learn/ First class ,6 examples anlaysisi <!DOCTYPE html> <!-- To change t ...
- webview loadUrl() 弹出系统浏览器解决办法
有很多时候,我们请求的网站会直接跳转到一个位置,这样会直接全屏浏览器加载被跳转的网页,或者弹出浏览器选择(除了系统的,你还自己安装了其他浏览器). 于是解决办法的原理就是,在webview中跳转. 办 ...
- OD使用教程9
先运行程序打开about,发现这是一个未注册的软件需要注册后才能使用里面的工具,所以随便注册一下,跳出一个提示说注册的是非法的邮箱,所以就可以以此做为突破口来破解这个程序 将提示的语句作为关键字去找出 ...
- C#中的using和yield return混合使用
最近写代码为了为了省事儿用了几个yield return,因为我不想New一个List<T>或者T[]对象再往里放元素,就直接返回IEnumerable<T>了.我的代码里还有 ...
- js性能优化
使用局部变量(尽量缩短作用域链)JavaScript引擎对变量的解析时间跟作用域链的深度有关.局部变量由于处于链尾,存取速度是最快的,因此,一个好的经验是:任何非局部变量使用超过一次时,请使用局部变量 ...
- 【洛谷P3143】Diamond Collector
算是一道dp 首先,排序好每一个架子上都是一段区间,然后只需要统计每个点向左向右最长延伸的区间. 所以我们预处理出每个点以左.以右最大能延伸的长度(最多能选几个差值不超过k的) 然后枚举每个点作为断点 ...
- Redis多机常用架构-主从
本文内容摘录自同事Perry Zhang的讲解,如需转载须本人同意. 1.主从 命令:slaveof <IP><PORT> redis主从配置:redis支持master-sl ...
- CentOS 7下设置DNS服务器
在CentOS 7下,手工设置 /etc/resolv.conf 里的DNS,过了一会,发现被系统重新覆盖或者清除了.和CentOS 6下的设置DNS方法不同,有几种方式: 1.使用全新的命令行工具 ...
- C#实现HttpPost提交文件
先建立一个WebApplication Web.config <?xml version="1.0" encoding="utf-8"?> < ...