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 ...
随机推荐
- JavaScript学习03 JS函数
JavaScript学习03 JS函数 函数就是包裹在花括号中的代码块,前面使用了关键词function: function functionName() { 这里是要执行的代码 } 函数参数 函数的 ...
- RapidFloatingActionButton框架正式出炉
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4474748.html RapidFloatingActionB ...
- oc TableView 分割线(separator)部分显示问题
问题:当TableView的cell不能显示完整个屏幕(屏幕有剩余),则没有显示cell的地方也会显示分割线,这不是我们想要的,正常情况下,如果没有cell则应没有分割线.如下图所示:左图为遇到问题, ...
- 数据存储与IO(二)
一.NSBundle资源包. 只要把文件拖到Xcode左边项目导航面板中,选择复制文件到项目中,该文件就包含进bundle中了.用[NSBundle mainBundle]获取应用程序包,常用的方法: ...
- css字体家族
名词解释: 衬线指的是字体起始末端的细节装饰.
- 教你怎么检测Heartbleed OpenSSL漏洞
Heartbleed错误是一个严重的漏洞.这个弱点可以窃取信息,在正常情况下,由SSL / TLS加密保护互联网.Heartbleed错误允许任何人在互联网上阅读系统的内存保护脆弱的OpenSSL的软 ...
- Entity Framework 4.1 - Code First 指定外键名称
Entity Framework 4.1 中,生成外键的方式有以下几种: 1-指定导航属性,会自动生成外键,命名规则为:“表名_主键名”2-默认情况下与导航属性的主键名称相同的字段会自动被标记为外键, ...
- 使用sql server profilter跟踪sql
最近在研究EF延迟加载和贪婪加载的用法时,想要查看Linq生成的sql.一开始通过VS-->调试-->窗口-->IntelliTrace事件,来查看生成的sql,并不是十分准确.然后 ...
- Android简化xml sax解析
dom解析占用内存大(我这边需要解析各种各样的kml文件,有时4-5M的kml文件使用dom解析很多手机就内存溢出了),也需要引入第三方库,所以使用相对于节省内存很多.不需引入其他库的sax解析就是很 ...
- java自定义Annotation(载自百度文库)
java中自定义annotation需要@interface关键字和用到几个内置annotation. 用到的注解有@Target,@Retention,@Documented,@Inherited ...