摘要: 1.persist和merge的区别: Persist:添加 Merge : 分两种情况,当对象存在id,则修改;当对象不存在id则添加。 看个例子: 问题说明: role是从数据库中查询出来的,在这种情况下 用persist方法保存account对象,persist同时会将role也保存,这时候因 阅读全文
posted @ 2018-05-03 20:39 zailushan 阅读(2937) 评论(1) 推荐(0) 编辑
摘要: 按以上代码, 假如说现在要获取当天的最小时间: 阅读全文
posted @ 2018-04-24 18:01 zailushan 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 有一个经典的多线程面试题:启三个线程,按序打印ABC 上代码: 打印的结果,就是循环的打印abcabcabcabc 阅读全文
posted @ 2018-04-11 10:33 zailushan 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 这篇直接贴代码了 因为思想跟上一篇的Java多线程之wait和notify:http://www.cnblogs.com/WNof11020520/p/8780875.html 讲的差不多,所以在这里就不累赘了。 阅读全文
posted @ 2018-04-11 10:16 zailushan 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 第三点比较重要, 那代码来理解一下: 假如说有两个线程分别是a、b, 并且都是执行这个run方法,分两种情况分析: 如果这个程序用第7行,没有第8行,当a线程执行到第7行时,其它线程可能马上可以得到被释放的锁对象,并被唤醒,然后就继续执行这个同步代码块。 如果这个程序用第8行,没有第7行,当a线程执 阅读全文
posted @ 2018-04-10 18:01 zailushan 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 1.首先我们来从概念上理解一下这两个方法: (1)obj.wait(),当obj对象调用wait方法时,这个方法会让当前执行了这条语句的线程处于等待状态(或者说阻塞状态),并释放调用wait方法的对象的对象锁。 当线程执行了obj.wait()这个语句之后,这个线程处于等待状态,需要其它线程用同一个 阅读全文
posted @ 2018-04-10 17:35 zailushan 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 我们来对比一下hashMap和hashTable吧: 1.hashMap允许键、值可以为空,hashTable键和值都不可以为空,为什么这样呢,我们来看一下他们的put方法的源码。 先看hashMap的put方法: 在这里可以看出它对key=null的情况做了处理。再从putVal 方法中,没有对v 阅读全文
posted @ 2018-04-09 09:50 zailushan 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 区别: (1)@Get 一般用于查询或获取资源信息, @Post一般是用于更新资源信息。 (2)Url不同, @Get 请求的url: http://localhost:8080/imeter-cms/rest/device/queryDevice?serialNo=1&type=1 它会把参数这样 阅读全文
posted @ 2018-04-03 22:19 zailushan 阅读(1186) 评论(0) 推荐(0) 编辑
摘要: 比如说有表devicedata: 问题: 现在我想将devicedata这个表中的数据,先按device_id这个字段分组,然后每组中的数据按时间字段ts从大到小的排列, 如何解决呢? 错误的sql:首先分组,然后order by 排序, select * from devicedata GROUP 阅读全文
posted @ 2018-04-02 20:41 zailushan 阅读(10482) 评论(0) 推荐(0) 编辑
摘要: 问题描述:表如下,如何让这个表按device_id这个字段分组,且组中的每条数据都查寻出来?(假如说这个表名为:devicedata) 错误答案:select * from devicedata GROUP BY device_id 这个sql得到的结果是: 每一组只显示了一条数据, 显然没达到我们 阅读全文
posted @ 2018-04-02 20:23 zailushan 阅读(4230) 评论(0) 推荐(2) 编辑