小编Lan*_*uhn的帖子

如何使用 Hibernate 测试表是否为空

使用 Hibernate,确定表是空还是非空的最有效方法是什么?换句话说,该表是否有 0 行或多于 0 行?

我可以执行 HQL 查询select count(*) from tablename,然后检查结果是 0 还是非 0,但这不是最佳选择,因为我会向数据库询问比我真正需要的更多细节。

hibernate

5
推荐指数
1
解决办法
4723
查看次数

Oracle数据库入门

我被分配了使Java Web应用程序与Oracle数据库一起工作的任务.我不知道从哪里开始.我希望有类似于使用MySQL或PostgreSQL的经验,但没有这样的运气.

这个问题的答案将是安装和部署Oracle数据库以供开发使用的步骤列表,基本操作(如启动和停止,创建和删除模式,甚至JDBC连接参数).

关于我的项目的一些背景知识(虽然理想情况下这个问题的答案将尽可能通用,而不是与我的环境的具体情况联系起来):

  1. 在Tomcat中部署的Java(和Scala)Web应用程序
  2. Hibernate(目前连接到PostgreSQL和MySQL)
  3. 开发人员工作站运行OS X; 生产部署是针对Red Hat Enterprise Linux的

java oracle

5
推荐指数
1
解决办法
220
查看次数

读取Hibernate实体标识值

Hibernate是否有用于读取实体身份字段值的API?在我的例子中,这将是Serializable由注释的字段返回的值@Id.例如,假设我有一个Person实体:

class Person {
    @Id private long id;
    // ... other fields, getters/setters, etc ...
}

Person p = new Person();
p.setId(42L);

Hibernate.unknownFunction(p); // returns 42L
Run Code Online (Sandbox Code Playgroud)

当然,我可以阅读注释以@Id自己找到该字段,但这似乎可能是内置的东西.

java hibernate

5
推荐指数
1
解决办法
1079
查看次数

如何在键盘事件之外读取键盘状态?

有没有办法在键盘事件处理程序之外读取键盘状态?具体来说,我需要检查页面加载期间Shift键是否按下。我正在使用jQuery。

javascript jquery

5
推荐指数
1
解决办法
1734
查看次数

如何防止Scala的XML PrettyPrinter类删除换行符

PrettyPrinterXML格式将删除字符数据换行符.我该如何防止这种情况?

scala> import scala.xml._
import scala.xml._

scala> """line one
     | line two"""
res0: java.lang.String = 
line one
line two

scala> new PrettyPrinter(999, 3).format(Elem(null, "multiline", Null, TopScope, PCData(res0)))
res1: String = <multiline><![CDATA[line one line two]]></multiline>
Run Code Online (Sandbox Code Playgroud)

另请参阅https://lampsvn.epfl.ch/trac/scala/ticket/4303.

xml scala

5
推荐指数
1
解决办法
968
查看次数

从ActiveRecord迁移中读取database.yml

如何访问database.ymlActiveRecord迁移内部的内容?具体来说,我需要database迁移数据库的密钥值.

ruby activerecord

4
推荐指数
1
解决办法
843
查看次数

在编译的Scala中,位图$ 0字段是什么?

我注意到我的一些Scala类包含一个名称bitmap$0类型的字段int.这是什么?

scala

4
推荐指数
1
解决办法
393
查看次数

使用反射访问Scala中的外部类

在Scala中,是否可以使用反射来访问内部类的外部类?例如:

class A { 
   val inner = new { 
      println(getClass.getConstructors.toList)  
      println(getClass.getDeclaredFields.toList)
   }
}

scala> val a = new A
List(public $line11.$read$$iw$$iw$A$$anon$1($line11.$read$$iw$$iw$A))
List()
a: A = A@45f76fc7
Run Code Online (Sandbox Code Playgroud)

我认为Scala编译器会在某处保存对外部类的引用,但是您可以在此处看到构造函数中打印的字段列表为空.此外,它看起来像构造函数引用外部类实例(但很难确定 - 我不确定这里到底发生了什么).我也注意到在某些情况下有一个$outer领域似乎是我需要的,但它并不总是存在,我不明白这一点.

为什么???!!!我有一个内部类,我需要创建一个使用反射的新实例.正在从现有实例复制新实例,并且需要具有相同的外部引用.

scala

4
推荐指数
2
解决办法
1797
查看次数

scala lazy val:垃圾收集器上的一个好方法吗?

我想知道是否有lazy val必要使用它来防止不必要的堆分配,从而使GC的工作更容易一些.例如,我习惯于像这样编写代码:

lazy val requiredParameterObject = new Foo {
    val a = new ...
    val b = new ...
    // etc
}

for (a <- collection) a.someFunction(requiredParameterObject)
Run Code Online (Sandbox Code Playgroud)

这里的想法是,通过使requiredParameterObject懒惰,我在collection空的情况下保存堆分配.但我想知道:做内部细节lazy使得这不是一次有效的表现胜利吗?

scala

4
推荐指数
1
解决办法
663
查看次数

了解Lucene领先的通配符性能

Lucene默认情况下不允许在搜索术语中使用前导通配符,但可以使用以下命令启用:

QueryParser#setAllowLeadingWildcard(true)
Run Code Online (Sandbox Code Playgroud)

我知道使用前导通配符会阻止Lucene使用索引.使用前导通配符搜索必须扫描整个索引.

如何演示领先的通配符查询的性能?什么时候可以使用setAllowLeadingWildcard(true)

我已经构建了一个包含1000万个文档的测试索引:

{ name: random_3_word_phrase }
Run Code Online (Sandbox Code Playgroud)

磁盘上的索引是360M.

我的测试查询运行良好,我无法真正演示性能问题.例如,查询name:*ing在不到1秒的时间内生成超过110万份文档.查询同时name:*ing*生成超过150万个文档.

这是怎么回事?为什么这不慢?10,000,000份文件还不够吗?文档是否需要包含多个字段?

lucene solr full-text-search

4
推荐指数
1
解决办法
6606
查看次数