小编the*_*ega的帖子

Java Spring:AnnotationSessionFactoryBean,Hibernate-Dialect AutoDetection

我使用以下spring应用程序上下文:

<!-- Hibernate session factory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    <property name="dataSource" ref="dataSource"/>
    <property name="hibernateProperties">
      <props>
        <!--
             <prop key="hibernate.dialect">${hibernate.dialect}</prop>
          -->
            <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
            <prop key="hibernate.max_fetch_depth">${hibernate.max_fetch_depth}</prop>

            <prop key="hibernate.cache.use_second_level_cache">${hibernate.cache.use_second_level_cache}</prop>
            <prop key="hibernate.cache.use_query_cache">${hibernate.cache.use_query_cache}</prop>
            <prop key="hibernate.cache.provider_class">${hibernate.cache.provider}</prop>

            <prop key="hibernate.connection.pool_size">10</prop>
            <prop key="hibernate.jdbc.batch_size">1000</prop>
            <prop key="hibernate.bytecode.use_reflection_optimizer">true</prop>

        </props>
    </property>
    <property name="annotatedClasses">
        <list>
          ...
       </list>
    </property>

    <property name="schemaUpdate" value="${hibernate.schemaUpdate}"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

然后问题是:虽然Hibernate应该支持Dialect-Autodetection,但是这个代码不起作用: Uppon Application-Init抛出以下异常:

org.hibernate.HibernateException: The dialect was not set. Set the property hibernate.dialect.
    at org.hibernate.dialect.Dialect.instantiateDialect(Dialect.java:256)
    at org.hibernate.dialect.Dialect.getDialect(Dialect.java:234)
    at org.hibernate.dialect.Dialect.getDialect(Dialect.java:249)
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean$3.doInHibernate(LocalSessionFactoryBean.java:957)
    at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:419)
    at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean.updateDatabaseSchema(LocalSessionFactoryBean.java:953)
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterSessionFactoryCreation(LocalSessionFactoryBean.java:843)
    at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:213)
Run Code Online (Sandbox Code Playgroud)

我可以通过取消注释hibernate.dialect属性来避免此异常.为什么我要这样做?为什么不能休眠只是像它应该的那样自动检测方言?

我想删除dialect-property来解决 …

spring hibernate dialect

3
推荐指数
1
解决办法
6942
查看次数

更快的替代doBy/summaryBy

我目前使用包中的summaryBy命令doBy按特定函数对数据帧的行进行分组.这很好用.但:

doBy包加载速度非常慢,我想是因为它导入其他包.doBy加载大约需要3秒钟.我只需要summaryBy这个包中的简单功能.

是否有可能加快封装的加载时间,还是有一种替代的实现方式不能加载如此庞大的封装?

r dataframe

3
推荐指数
2
解决办法
4126
查看次数

ORDER BY只适用于列吗?

SELECT * FROM TABLE ORDER BY RAND()工作为什么?我认为ORDER BY只适用于列.

那么究竟是什么意思ORDER BY RAND()还是ORDER BY SUM()

sql

2
推荐指数
1
解决办法
493
查看次数

为什么在这里发生ArrayIndexOutOfBoundsException?

我的Android-App中有以下代码:

Event[] events = retrieveEvents();
if (events != null && events.length>0) {
   int eventNr = getFromUserInput();
   eventNr = eventNr % events.length;
   Event event = events[eventNr];
}
Run Code Online (Sandbox Code Playgroud)

retrieveEvents()Event从Internet 获取一些s,所以这可能会失败但是为空或者null.用户可以选择Event要显示的内容,以避免异常我使用模运算来确保eventNr它在边界内.这适用于我在BUT上测试的任何设备:

我从第二个最后一行(数组访问)抛出的其他用户那里得到错误报告ArrayIndexOutOfBoundsException.怎么会发生这种情况?我没有检查到什么条件?我的错误在哪里?

记住:retrieveEvents()getFromUserInput()函数都可以返回无效数据,但我想我检查了每一个案例,那么我的错在哪里?

java arrays android bounds

2
推荐指数
1
解决办法
269
查看次数

直接从另一个程序读取csv

如何从另一个程序的stdout而不是从文件R导入read.table命令中的csv-data ?我想R自己启动我的csv-export-utility.

r

2
推荐指数
1
解决办法
532
查看次数

如何使用HashSet实现HashTable

我被问到以下面试问题:

假设您有一个提供其普通接口的HashSet实现.你怎么能使用一个或多个HashSet实例来实现HashTable,它提供普通的HashTable接口呢?

我问了两次,但是他们的意思是这样,而不是相反(使用HashTable实现HashSet非常简单,例如Java就是这样).

我回答说这是不可能的.这个答案似乎没有让采访者满意,所以我正在寻找更好的答案.即使在互联网和Stack Overflow上搜索,我也找不到解决方案.

我认为这是一个棘手的问题,但为了确保我在这里发布这个问题.

hashtable data-structures

2
推荐指数
1
解决办法
452
查看次数

GROUP BY查询的"错误:无法打开数据库文件"

我有一个python脚本,它从一些外部数据创建一个sqlite数据库.这很好用.但每次我在这个数据库上执行GROUP BY查询时,都会出现"错误:无法打开数据库文件".正常的SELECT查询工作.

这对于python的sqlite3库和sqlite3 cli二进制文件都是一个问题:

sqlite> SELECT count(*) FROM REC;
count(*)
----------
528489
sqlite> SELECT count(*) FROM REC GROUP BY VERSION;
Error: unable to open database file
sqlite>
Run Code Online (Sandbox Code Playgroud)

我知道这些错误通常是权限错误(我已经阅读了有关StackOverflow上此主题的所有问题),但我确信这不是我的情况:

  1. 我在谈论一个容易创建的数据库和读取请求
  2. 我检查了权限:文件及其包含的文件夹都设置了写权限
  3. 我甚至可以写入数据库:创建一个新表是没有问题的.
  4. 该设备未满,它有足够的空间.

sqlite cygwin

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

使用"$ @"正确引用文件中的所有参数

我需要我的bashscript将其所有参数都捕获到一个文件中.我尝试使用cat它,因为我需要添加很多行:

#!/bin/sh
cat > /tmp/output << EOF
 I was called with the following parameters:
 "$@"
 or 
 $@
EOF

cat /tmp/output
Run Code Online (Sandbox Code Playgroud)

这导致以下输出

 $./test.sh "dsggdssgd" "dsggdssgd dgdsdsg"
 I was called with the following parameters:
 "dsggdssgd dsggdssgd dgdsdsg"
 or 
 dsggdssgd dsggdssgd dgdsdsg
Run Code Online (Sandbox Code Playgroud)

我不想要这两件事:我需要在命令行上使用的确切引用.我怎样才能做到这一点?我一直认为$@在报价方面做的一切都是正确的.

unix shell

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

我应该将哪个版本的TurboGears用于新项目?

我正在计划一个新项目,我想使用TurboGears.问题是:我不确定选择哪个版本.有三种选择:Turbogears 1.0.8(稳定)Turbogears 1.1(beta 3)Turbogears 2.0(beta 4)

由于这是一个新项目,我不想选择错误的框架.那么差异在哪里,"beta"如何是2.0?

谢谢你的帮助!

python project turbogears

0
推荐指数
1
解决办法
216
查看次数