此文只是为了记录几个基本操作,首先Upsert,有多种方法可以进行,但是都需要指定UpdateOptions.upsert(true),其中最简单的办法如下(eqq是一个用来filter的BSON,具体用法请查看之前文章): dbColl.replaceOne(eqq("_id", y.get("_id")), y, new UpdateOptions().upsert(true)) 其次是InsertMany,在InsertMany中,如果出现dup-key会导致…
MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写,一般生产上建议以共享分片的形式来部署. 但是MongoDB官方也提供了其它语言的客户端操作API.如下图所示: 提供了C.C++.C#..net.GO.java.Node.js.PHP.python.scala等各种语言的版本. MongoDB的操作分为同步操作和异步操作一.同步操作API 官方JAVA API的路径:https://docs.mongodb.com/ecosystem/drivers/java/  我们这里…
MongoDB为Java提供了非常丰富的API操作,相比关系型数据库,这种NoSQL本身的数据也有点面向对象的意思,所以对于Java来说,Mongo的数据结构更加友好. MongoDB在今年做了一次重大升级,版本来到了3.0. 相比之前的版本,这个版本中又很大的变化,相应地,本文中的方法可能在旧的版本中无法使用. 安装MongoDB Java Driver 使用maven的用户在pom.xml中使用以下的dependency. <dependency> <groupId>org.m…
servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码:用户名:user.密码:yufei 需要改变的地方: 地方一:web.xml <?xml version="1.0"     encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/…
要正确使用Mongodb Java Driver,MongoClientOptions参数配置对数据库访问的并发性能影响极大. connectionsPerHost:与目标数据库能够建立的最大connection数量.这些connection用于与数据库之间读写数据. threadAllowedToBlockForConnectionMultiplier:如果当前所有的connection都在使用中,则每个connection上可以有多少个线程排队等待. connectionsPerHost与t…
MongoDB的增删查改基本操作 先决条件建库.建集合.建文档 连接mongo,如果连接不上什么连接拒绝,输入mongod命令,启动服务后 输入mongo show dbs 显示当前的所有的数据库 一般会显示local 我们创建别的数据库 创建数据库,录入数据 use maliang db.movies.insert({title:"北京爱上西雅图"}) db.movies.insert({title:"大唐玄奘"}) 这样两条数据就录入到数据库[maliang]集…
这篇文章主要介绍了Linux系统下MongoDB的简单安装与基本操作,需要的朋友可以参考下   Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备受当前IT从业人员的青睐.Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo DB中 每一条记录都是一个Document对象.Mongo DB最大的优势在于所有的数据持久操作都无需开发人员手动编写SQL语句,直接调用方法就可以轻松的实现CRUD操作. 一.下载mongodb 前往m…
package com.mongodb.text; import java.net.UnknownHostException; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.Mongo; import com.mongodb.MongoException; import com.…
MongoDB 连接 标准 URI 连接语法: mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]] mongodb:// 这是固定的格式,必须要指定. username:password@ 可选项,如果设置,在连接数据库服务器之后,驱动都会尝试登录这个数据库 host1 必须的指定至少一个host, host1 是这个URI唯一要填写的.它指定…
这篇文章主要介绍了java使double类型保留两位小数的方法,大家参考使用吧 复制代码 代码如下: mport java.text.DecimalFormat; DecimalFormat    df   = new DecimalFormat("######0.00"); double d1 = 3.23456  double d2 = 0.0;double d3 = 2.0;df.format(d1); df.format(d2); df.format(d3); 3个结果分别为:…
java比较两个对象是否相等直接使用equals方法进行判断肯定是不会相同的. 例如: Person  person1  =new Person("张三"); Person  person2  =new Person("张三"); boolean  falg = person1.equals(person1); falg 的值是false; 如果要判断两个对象相同就需要重写父类的equals方法和hashCode方法: 这时再次测试时falg的值就是true.…
java保留两位小数问题: 方式一: 四舍五入  double   f   =   111231.5585;  BigDecimal   b   =   new   BigDecimal(f);  double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();  保留两位小数  ---------------------------------------------------------------   方…
Java中有两种类型的变量,一种是对象类型,另一种是基础类型(primitive type). 对象类型普遍采用引用的方式,比如 List a = new ArrayList(); List b = a; 这将会构造一个列表对象,并在a和b中各自保存该对象的一个引用,所以a与b将指向同一个列表对象.所以如果往a中加入元素的话,可以发现b也有相同的变化. 基础类型只有8种,boolean, byte, char, short, int, long, float, double,这种类型的变量,ja…
JAVA 中两种判断输入的是否是数字的方法 package t0806; import java.io.*; import java.util.regex.*; public class zhengzehua_test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try { System.out.println("请输入第一个数字:"…
前言 :mongoDb 是一种比较常用的非关系数据库,文档数据库, 格式为json ,redis 有五种格式. 1. 项目中要使用,这里简单做个示例.首先是连接mongoDB,用的最多的robomongodb,下载,安装, 连接. 连接成功结构是这样的. 2.第二个maven引入jar包.我用的是springboot,里面直接有 <dependency>  <groupId>org.springframework.boot</groupId>  <artifact…
http://code.google.com/p/bugumongo/ 简介 BuguMongo是一个MongoDB Java开发框架,它的主要功能包括: 基于注解的对象-文档映射(Object-Document Mapping,简称ODM). DAO支持.提供了大量常用的DAO方法. Query支持.提供了生成查询的简便方法. 基于注解的Lucene索引. 简单方便的Lucene搜索.支持关键词高亮显示. 支持集群环境下的Lucene索引和搜索. 简单方便的GridFS文件上传.支持上传的时候…
本文转载自:http://www.linuxidc.com/Linux/2013-12/93690.htm#0-tsina-1-14812-397232819ff9a47a7b7e80a40613cfe1 Java中有两种实现多线程的方式.一是直接继承Thread类,二是实现Runnable接口.那么这两种实现多线程的方式在应用上有什么区别呢? 为了回答这个问题,我们可以通过编写一段代码来进行分析.我们用代码来模拟铁路售票系统,实现通过四个售票点发售某日某次列车的100张车票,一个售票点用一个线…
java计算两个日期相差多少天 public class DateUtil{ public static int betweenDays(Date startDate, Date endDate ) throws Exception { Calendar beginCalendar = Calendar.getInstance(); Calendar endCalendar = Calendar.getInstance() ; try { beginCalendar.setTime( start…
算法(JAVA)----两道小小课后题   LZ最近翻了翻JAVA版的数据结构与算法,无聊之下将书中的课后题一一给做了一遍,在此给出书中课后题的答案(非标准答案,是LZ的答案,猿友们可以贡献出自己更快的算法). 1.编写一个程序解决选择问题.令k=N/2,画出表格显示程序对于N种不同的值的运行时间. 分析:选择问题是指从N个数当中,按升序(降序也可以)排列,找出第k个数.LZ的写法是采用书中给出的算法自己实现的,分别采用冒泡排序和分批处理的方式.以下为LZ写出的算法代码. import java…
Java中两个List对比的算法:   // 测试数据 // tdcsDdt.add("Z"); // tdcsDdt.add("B"); // tdcsDdt.add("C"); // tdmsDdt.add("D"); // tdmsDdt.add("A"); // tdmsDdt.add("F"); // java中排序与SQL中排序不一致,需要按照java中的方式重排一下: Co…
1.先在MongoDB官网下载Java驱动包 MongoDB Java Driver: http://mongodb.github.io/mongo-java-driver/ JAR包下载列表 https://oss.sonatype.org/content/repositories/releases/org/mongodb/mongodb-driver/3.5.0/ 2.程序样例 package com.test; import java.util.Arrays; import org.bso…
MongoDB Java 环境配置 在Java程序中如果要使用MongoDB,你需要确保已经安装了Java环境及MongoDB JDBC 驱动. 你可以参考本站的Java教程来安装Java程序.现在让我们来检测你是否安装了 MongoDB JDBC 驱动. 首先你必须下载mongo jar包,下载地址:https://github.com/mongodb/mongo-java-driver/downloads, 请确保下载最新版本. 你需要将mongo.jar包含在你的 classpath 中.…
Java的两大数据类型 基本数据类型 byte,short,int,long,float,double,boolean,char byte 类别 内容 类型 byte 简介 byte 数据类型是8位.有符号的,以二进制补码表示的整数 特点 byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一 最小值 -128(-2^7) 最大值 127(2^7-1) 默认值 0 占用存储空间 1字节 例子 byte a = 100; byte b = -…
java对redis的基本操作 http://www.cnblogs.com/edisonfeng/p/3571870.html…
一.java保留两位小数方式 public static void main(String[] args) { System.out.println("=======DecimalFormat(四舍五入,五入可能失败)========="); DecimalFormat decimalFormat = new DecimalFormat("0.00"); System.out.println(decimalFormat.format(0.235)); //0.23…
前言:直接上代码 java 获取两个日期之间的所有日期(年月日) /** * 获取两个日期之间的日期,包括开始结束日期 * @param start 开始日期 * @param end 结束日期 * @return 日期集合 */ private List<Date> getBetweenDates(Date start, Date end) { List<Date> result = new ArrayList<Date>(); Calendar tempStart…
java如何计算两个日期之间相差多少天? public static void main(String [] args) { Date now = new Date(); Calendar cal = Calendar.getInstance(); cal.set(2015,2,24);// cal.set(Calendar.YEAR, 2015);// cal.set(Calendar.MONTH, 2);// cal.set(Calendar.DATE, 24); long interval…
Java计算两个字符串日期之间的天数差 调用方法: public static void main(String[] args) throws ParseException { String a = "2017-12-01"; // 时间字符串 String b = "2017-12-31"; Long between_dayInteger = between_days(a, b); System.out.println(between_dayInteger); }…
看到一个面试题.问两种实现多线程的方法.没事去网上找了找答案. 网上流传很广的是一个网上售票系统讲解.转发过来.已经不知道原文到底是出自哪里了. Java中有两种实现多线程的方式.一是直接继承Thread类,二是实现Runnable接口.那么这两种实现多线程的方式在应用上有什么区别呢? 为了回答这个问题,我们可以通过编写一段代码来进行分析.我们用代码来模拟铁路售票系统,实现通过四个售票点发售某日某次列车的100张车票,一个售票点用一个线程表示. 我们首先这样编写这个程序: class Threa…
转载申明:本文主要是用于自己学习使用,为了完善自己的只是框架,没有任何的商业目的. 原文来源:有关Java中两个整数的交换问题 如果侵权,麻烦告之,立刻删除. 在程序开发的过程,要交换两个变量的内容,是一种比较常见的事情.在排序算法中,就有一种就叫做“交换排序法”.在所有的排序算法,交换要排序的集合中的两个元素,几乎是必须的过程.在Java中交换两个元素的内容,如果你是程序员新手,你可能碰到意想不到的问题. 众所周知,java和C.C++中都不能通过值传递的方式实现两个整数的交换. 即下面的函数…