10分 |
检索单个对象
Query和Criteria都提供了返回单个对象的方法uniqueResult(). 先调用setMaxResult(1)方法,把最大检索数目设为1,在调用uniqueResult()方法。 Hx hx = (Hx)session.createQuery(“from Hx”) |
你可以把 List 的两条数据看作下面的代码,对比Object a来说只是多占用了点内存,效率的问题还是要在你写的SQL中优化。
Object[] obj = {new A(), new A()}; int i = 2; |
|
如果说并发量大了,就为了查一条数据,我使用List<A> 返回一个列表,下面的方法: 但是我不知道数据库符合条件的是否只有一条数据,只查询单条的话 可能会报错的呀?? |
|
要是我不确定数据库只有一条符合条件的数据,那不就异常了吗?要是按照主键去查询 肯定是可以的了 |
|
查单条,你报错,那就查List 然后再去筛选了…效率只是在查询sql上。 一般不会有啥问题
|
|
70分 |
createQuery这个也是个数组对象(要不然也不能转换成list),一条数据与两条数据的写入之间所消耗的时间几乎可以忽略不计,你可以用System.arraycopy去测试读写所消耗的时间,这两种都会面临高并发,但是应该是扩容或者分布去解决问题而不是这种小的细节上。
|
如果你能保证数据库有数据的话,那么你用第一个最好,如果不能保证那么用第二个,因为不会报错…
|
|
能给个查询列表详细的实现过程源码就好了,这个都忘的差不多了! |
|
能给个查询列表详细的实现过程源码就好了,这个都忘的差不多了! |
|
等有空吧。现在忙 |