問題タブ [scrollableresults]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
739 参照

jpa - Eclipselink ScrollableCursor が 2 回目の next() 呼び出しで失敗する

システムのすべてのユーザーをメモリにロードするために ScrollableCursor を使用しようとしています。私はこのようなコードを持っています:

クエリは次のとおりです。SELECT s FROM UserEntity u order by u.userId

scrollableCursor.next(nextSize); の場合、結果テーブルのサイズは 100 です。呼び出され、次の例外が発生します。

next(10) を呼び出すと、最初の行が正常にロードされ、2 行目に例外が発生します。理由がわかりません。このエラーを回避する方法を教えてください。

0 投票する
1 に答える
265 参照

java - Hibernate - 最適なページネーション方法

私は、ニュースを縦に(次々に)表示する必要があるWebサイトに取り組んでいます。100 件ほどのニュースがあり、スクロールするだけで 10 件ずつ表示したいとしましょう。表示した最初の 10 件のニュースを削除したくありません。スクロールを続けてニュースを追加してください。適切なページネーション方法を探していましたが、ScrollableResultsがこの場合に最適なオプションであるか、別のオプションを使用する必要があるかはわかりません。

これは、前方に広告を後方に移動する一般的なグリッドではなく、下にスクロールしてより多くのニュースを表示するだけです.

ところで、私はクライアントにextjsを使用しています。

ありがとう、

PS: このサイトを見てきました

0 投票する
0 に答える
41 参照

java - Hibernate で setFetchSize() を使用し、scroll() を使用せずにすべての行を「選択」するだけで、検索の合計行数を取得する方法は? 出来ますか?

まず、Java と Hibernate (setFech() メソッドと ScrollableResults クラスを使用) を使用しています。

2 番目に、数十億の行と 100 を超える列を持つテーブルを使用しています。そして、このテーブルは他の 2 つと結合します。したがって、単純な「select count(*)」には 1 分かかります。

以下のコードを使用して、数百万行とすべての列を返す選択の結果を取得しています。したがって、フェッチを使用することは必須です。

この最初の選択の後、検索の合計行数を知る必要がありますが、別の選択を行いたくなく (1 分かかります)、すべての scroll.next() を呼び出すことはできません。それは可能ですか?

0 投票する
1 に答える
6045 参照

java - 原因: org.hibernate.QueryException: CAST の要求された型を解決できませんでした: INT

原因: org.hibernate.QueryException: 要求された CAST の型を解決できませんでした: INT [ SELECT SUBSTRING(referenceComptable , 8, 14) AS seqNum, SUBSTRING(referenceComptable, 4,7) AS yearCegid, SUBSTRING(referenceComptable, 1,3) AS ジャーナル FROM com.dso.model.comptabilite.cegid.EtapeJudiciaireLnkFactureActesHonoraires WHERE dateCegidGenerated BETWEEN :date AND :dateYearIntervalDate ORDER BY CAST(seqNum AS INT), CAST(yearCegid AS INT), CAST(journal AS INT) ASC ]

HQL クエリ: public Sc​​rollableResults retrieveSequenceNumberForCegidGenerated(){

INTとしてCASTしようとしたときもうまくいきませんでした。文字列から整数にキャストするにはどうすればよいですか?

スタックトレース

原因: org.hibernate.QueryException: 要求された CAST の型を解決できませんでした: INTEGER [ SELECT SUBSTRING(referenceComptable , 8, 7) AS seqNum, SUBSTRING(referenceComptable, 4,4) AS yearCegid, SUBSTRING(referenceComptable, 1,3) AS journal FROM com.dso.model.comptabilite.cegid.EtapeJudiciaireLnkFactureActesHonoraires WHERE dateCegidGenerated BETWEEN :date AND :dateYearIntervalDate ORDER BY CAST(SUBSTRING(referenceComptable , 8, 14) AS INTEGER), CAST(SUBSTRING(referenceComptable, 4,7) AS INTEGER )、ジャーナル ASC ] at org.hibernate.QueryException.generateQueryException(QueryException.java:120) ~[hibernate-core-5.0.2.Final.jar:5.0.2.Final] at org.hibernate.QueryException.wrapWithQueryString(QueryException. .java:103) ~[hibernate-core-5.0.2.Final.jar:5.0.2.Final] org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:218) ~[hibernate-core-5.0.2.Final.jar:5.0.2.Final] at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:142) ~ [hibernate-core-5.0.2.Final.jar:5.0.2.Final] at org.hibernate.engine.query.spi.HQLQueryPlan.(HQLQueryPlan.java:115) ~[hibernate-core-5.0.2.Final] .jar:5.0.2.Final] at org.hibernate.engine.query.spi.HQLQueryPlan.(HQLQueryPlan.java:76) ~[hibernate-core-5.0.2.Final.jar:5.0.2.Final] at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:150) ~[hibernate-core-5.0.2.Final.jar:5.0.2.Final] at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan (AbstractSessionImpl.java:298) ~[hibernate-core-5.0.2.Final.jar:5.0.2.Final] org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:236) ~[hibernate-core-5.0.2.Final.jar:5.0.2.Final] at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1825) ~[hibernate-core-5.0.2 .Final.jar:5.0.2.Final] com.dso.dao.comptabilite.cegid.impl.ReferenceComptableSequenceDAOImpl.retrieveSequenceNumberForCegidGenerated で