java问题小总结
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问题小总结的更多相关文章
- Java开发小技巧(三):Maven多工程依赖项目
前言 本篇文章基于Java开发小技巧(二):自定义Maven依赖中创建的父工程project-monitor实现,运用我们自定义的依赖包进行多工程依赖项目的开发. 下面以多可执行Jar包项目的开发为例 ...
- 微信机器人 返现机器人 pc版本 移动版本 java开发 小范省钱
微信机器人 返现机器人 pc版本 移动版本 java开发 小范省钱 微信搜索微信号 fanli-x 或 扫描下方二维码,可查看效果. 非web版微信,pc/移动版微信 支持新号24小时 不封号! 有任 ...
- java的小程序在html中的运行测试
java的小程序在html中的运行测试,打开vs2012,以网站模式打开,生成,调用iis临时服务器运行.
- java 编写小工具 尝试 学习(七)
1.在java 编写小工具 尝试 学习(六)里学会了,控件 的随意摆放, 以及大小(x,y,width,height),又根据前面学习的按钮 被点击 的事件监控 的方法 ,点击 按钮 在显示区域显示“ ...
- 第一个java的小东西
第一次自己写的一个java的小东西,毕竟自己第一次写的,其中可谓是历经艰难,最后总结下来就是java实在是不适合写界面化的东西代码量比较大,这还不是最关键的,最关键的是控件的位置实在是太难控制了. 这 ...
- Java太阳系小游戏分析和源代码
Java太阳系小游戏分析和源代码 -20150809 近期看了面向对象的一些知识.然后跟着老师的解说做了一个太阳系各行星绕太阳转的小游戏,来练习巩固一下近期学的知识: 用到知识点:类的继承.方法的重载 ...
- 福利贴——爬取美女图片的Java爬虫小程序代码
自己做的一个Java爬虫小程序 废话不多说.先上图. 目录命名是用标签缩写,假设大家看得不顺眼能够等完成下载后手动改一下,比方像有强迫症的我一样... 这是挂了一个晚上下载的总大小,只是还有非常多由于 ...
- Java五子棋小游戏(控制台纯Ai算法)
Java五子棋小游戏(控制台纯Ai算法) 继续之前的那个五子棋程序 修复了一些已知的小Bug 这里是之前的五子棋程序 原文链接 修复了一些算法缺陷 本次增加了AI算法 可以人机对战 也可以Ai对Ai看 ...
- Java web 小测验
题目要求: 1登录账号:要求由6到12位字母.数字.下划线组成,只有字母可以开头:(1分) 2登录密码:要求显示“• ”或“*”表示输入位数,密码要求八位以上字母.数字组成.(1分) 3性别:要求用单 ...
- Java 获取小程序openid(基于SpringBoot)
Java 获取小程序openid(基于SpringBoot) 官方文档 wx.login 1.引入Request封装依赖 <!--Request依赖--> <dependency&g ...
随机推荐
- OPENGLES 基础(一些链接和随笔)
http://imgtec.eetrend.com/blog/3912 http://blog.csdn.net/zj8792612/article/details/16116145 在线着色器编 ...
- java使用动态代理来实现AOP(日志记录)
以下内容为原创,转载时请注明链接地址:http://www.cnblogs.com/tiantianbyconan/p/3336627.html AOP(面向方面)的思想,就是把项目共同的那部分功能分 ...
- MonoDevelop编辑器中文乱码解决
说解决乱码分几步,总共分三部! 1. Tools -> Options 2. 3.点击Font->点击TextEditor会出现下边选框,选取喜欢风格并且不乱码即可.
- FMDB的简单使用
1.什么是FMDB? FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API. 无论项目中使用 ARC 还是 MRC,对 FMDB 都没有任何影响,FMDB ...
- 后台管理UI皮肤的选择
后台管理UI的选择 目录 一.EasyUI 二.DWZ JUI 三.HUI 四.BUI 五.Ace Admin 六.Metronic 七.H+ UI 八.Admin LTE 九.INSPINIA 十. ...
- Maven在Windows上的安装与配置
下载Maven 1.进入Maven官网下载:maven.apache.org(点击进入或复制浏览器地址栏,回车进入) 注意事项:需要大家要注意的是(截至目前2015年12月1日)最新版本的Maven3 ...
- 将long数字序列化为json时,转换为字符串
由于javascript中所有数字都是64位的浮点数,所以整数只能精确的表示53bit长的数字. 在从server得到的json数据中,有ID是长整数类型,在客户端根据此ID生成的link也是不准确的 ...
- Tomcat:基于HTTP协议的Connector配置
Tomcat Connector 是请求接收环节与请求处理环节的连接器,具体点说,就是将接收到的请求传递给Tomcat WEB容器进行处理. Tomcat可以处理的不同协议的请求,例如HTTP协议.A ...
- 今天说一下where 中 exists 和 in 里面的一些区别
in 和 exists 已经成为我们日常查询时候的常客了.很多时候他们2个都是可以互通实现的,但是,无论兄弟怎么亲,还是会有那么一些差别的. 先搞个测试表 )) ),Col2 )) INSERT IN ...
- 使用For XML PATH 会影响Cross Apply 返回
昨天在写语句的时候,遇到了一个现象,其实就是使用 Cross Apply做一个拼接字符串的而已.比如 CREATE TABLE GoodsCatalog (ID INT, Name )) CREATE ...