1.在使用equals的时候,把  "".equals(name);放在左边

如果右边的没有初始化,可以避免出错。

2.对于 ObjectId id;

在mongodb里面对其进行操作。q.field("id").equal(new ObjectId(id));

3.把对象加入json

<1>.

  List<MediaUnionModel> list = query.asList();
Map<String,Object> dataMap =new HashMap<>();
dataMap.put("modelList",list);
dataMap.put("pageCount",10);
modelMap.addAttribute("json",StringUtils.toJson(dataMap));
return "json";

然后创建一个json页面,里面可以写入${json}

4.rand.nextint()

public int nextInt(int n)
  给定一个参数n,nextInt(n)将返回一个大于等于0小于n的随机数,即:0 <= nextInt(n) < n。

5.java运行时多态

Employee e; e.getDatils();  具体的结果就决定于运行时刻变量 e 所指向的对象的类型。而不是编译时刻的类型。这就是对外一个接口,内部多种实现,多态的本质含义。

联编:讲一个方法调用和一个方法体连接到一起,就称为联编。若在程序运行之前就执行联编操作,称为“早联编”,在运行时刻执行联编就是晚联编。c语言的编译器值执行早联编。

在晚联编中,必须提供一些机制在程序运行期间根据对象的具体类型进行的,并进一步调用适当的方法。也即是说,在晚联编时此时编译器依然不知道对象的类型,但在运行的时刻的方法调用机制能够自己找到正确的方法。

在java中,除了定义为final的方法,其余所有的方法都采用晚编联的技术。

使用final时,一方面可以防止子类中对该方法的重写,另一方面,也可以有效的阻止晚编联。

6.把MediaUnionModel的类传递

参数是MediaUnionModel.class.

 private int getModelPageCount(Class clazz,int step,String category){
Query query = datastore.createQuery(clazz);
query.field("category").equal(category);
return (int)Math.ceil(query.countAll()/(float)step);
}

7.关于mongodb的一些操作

Query<WeiboMediaModel> q = datastore.createQuery(WeiboMediaModel.class);
q.field("id").equal(new ObjectId(id));
List<WeiboMediaModel> list = q.asList();
if(list.size() != 0){
WeiboMediaModel weiboMediaModel = list.get(0);
modelMap.addAttribute("weiboId", weiboMediaModel.getWeiboId());
}

8.关于returnMap的应用

 modelMap.addAttribute("json",StringUtils.toJson(new ReturnMap(searchUnionMedia(MediaUnionModel.class, keyword, page, step, category))));

  private  HashMap searchUnionMedia(Class clazz,String keyword, int page, int step, String category){
keyword = ".*" + keyword +".*";
Pattern pattern = Pattern.compile(keyword);
Query<T> query = datastore.createQuery(clazz).filter("name", pattern).offset((page - 1) * step).limit(step);
if(category != null){
category = category.trim();
if(category.length()>0) {
query.field("category").equal(category);
}
}
HashMap<String,Object> data = new HashMap<>();
data.put("total", datastore.getCount(query));
data.put("step", step);
data.put("list", query.asList());
return data;
}

9. datastore.save(cpModel);

关于保存数据。

10.  MediaUnionModel mediaUnionModel = datastore.get(MediaUnionModel.class, new ObjectId(id));

通过id得到数据

java问题小总结的更多相关文章

  1. Java开发小技巧(三):Maven多工程依赖项目

    前言 本篇文章基于Java开发小技巧(二):自定义Maven依赖中创建的父工程project-monitor实现,运用我们自定义的依赖包进行多工程依赖项目的开发. 下面以多可执行Jar包项目的开发为例 ...

  2. 微信机器人 返现机器人 pc版本 移动版本 java开发 小范省钱

    微信机器人 返现机器人 pc版本 移动版本 java开发 小范省钱 微信搜索微信号 fanli-x 或 扫描下方二维码,可查看效果. 非web版微信,pc/移动版微信 支持新号24小时 不封号! 有任 ...

  3. java的小程序在html中的运行测试

    java的小程序在html中的运行测试,打开vs2012,以网站模式打开,生成,调用iis临时服务器运行.

  4. java 编写小工具 尝试 学习(七)

    1.在java 编写小工具 尝试 学习(六)里学会了,控件 的随意摆放, 以及大小(x,y,width,height),又根据前面学习的按钮 被点击 的事件监控 的方法 ,点击 按钮 在显示区域显示“ ...

  5. 第一个java的小东西

    第一次自己写的一个java的小东西,毕竟自己第一次写的,其中可谓是历经艰难,最后总结下来就是java实在是不适合写界面化的东西代码量比较大,这还不是最关键的,最关键的是控件的位置实在是太难控制了. 这 ...

  6. Java太阳系小游戏分析和源代码

    Java太阳系小游戏分析和源代码 -20150809 近期看了面向对象的一些知识.然后跟着老师的解说做了一个太阳系各行星绕太阳转的小游戏,来练习巩固一下近期学的知识: 用到知识点:类的继承.方法的重载 ...

  7. 福利贴——爬取美女图片的Java爬虫小程序代码

    自己做的一个Java爬虫小程序 废话不多说.先上图. 目录命名是用标签缩写,假设大家看得不顺眼能够等完成下载后手动改一下,比方像有强迫症的我一样... 这是挂了一个晚上下载的总大小,只是还有非常多由于 ...

  8. Java五子棋小游戏(控制台纯Ai算法)

    Java五子棋小游戏(控制台纯Ai算法) 继续之前的那个五子棋程序 修复了一些已知的小Bug 这里是之前的五子棋程序 原文链接 修复了一些算法缺陷 本次增加了AI算法 可以人机对战 也可以Ai对Ai看 ...

  9. Java web 小测验

    题目要求: 1登录账号:要求由6到12位字母.数字.下划线组成,只有字母可以开头:(1分) 2登录密码:要求显示“• ”或“*”表示输入位数,密码要求八位以上字母.数字组成.(1分) 3性别:要求用单 ...

  10. Java 获取小程序openid(基于SpringBoot)

    Java 获取小程序openid(基于SpringBoot) 官方文档 wx.login 1.引入Request封装依赖 <!--Request依赖--> <dependency&g ...

随机推荐

  1. IOS圆头像

    前言 随着腾讯QQ的普及,现在越来越多的社交类APP在显示好友头像时,都选择用圆形头像,效果如下(不包括黑底): 在ios开发中,大致有以下三种方案来实现圆形头像效果. 方案一:用Quartz2D绘制 ...

  2. html 出现的错误

    1.HTML页面为什么设置了UTF-8仍然中文乱码 用记事本写,保存后在网页上运行出现了乱码,换成GB2312能正确显示中文 代码没有问题,问题就出记事本身上. <meta charste=&q ...

  3. Base64与Bitmap转换

    Base64与Bitmap互转 /** * 将base64转为bitmap * * @param string * @return */ public Bitmap stringtoBitmap(St ...

  4. CEF3可行性

    Chromium Embedded Framework 顾名思义,内嵌式CHROME,详细的介绍参阅 http://yogurtcat.com/posts/cef/hello-cef.html 为什么 ...

  5. 传统模式下WebService与WebAPI的相同与不同

    1.WebService是利用HTTP管道实现了RPC的一种规范形式,放弃了对HTTP原生特征与语义的完备支持:而WebAPI是要保留HTTP原生特征与语义的同时实现RPC,但WebAPI的实现风格可 ...

  6. 转换Excel表格到MarkDown:exceltk

    源码和下载: 源码:https://github.com/fanfeilong/exceltk 下载:http://files.cnblogs.com/files/math/exceltk0.0.9. ...

  7. 查看centos版本号

    --写在开始-- 玩Linux,不同的版本会有一些细微区别: so,经常需要查看服务器版本号: --正文-- 有以下命令可以查看linux服务器版本号: # lsb_release -a LSB Ve ...

  8. ADO.Net(一)——增、删、改、查

    数据访问 对应命名空间:System.Data.SqlClient; SqlConnection:连接对象 SqlCommand:命令对象 SqlDataReader:读取器对象 CommandTex ...

  9. JDK动态代理和CGLIB的区别

    Aspect默认情况下不用实现接口,但对于目标对象,在默认情况下必须实现接口 如果没有实现接口必须引入CGLIB库 我们可以通过Advice中添加一个JoinPoint参数,这个值会由spring自动 ...

  10. mysql自动备份维护shell脚本 (copy)

    #!/bin/bash #Mysql 自动备份 压缩并上传到 指定ftp #设想每天凌晨3点备份mysql #编辑crontab配置文件 # * * * backupmysql.sh #压缩并以&qu ...