問題タブ [jdbctemplate]

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 投票する
1 に答える
1659 参照

jdbctemplate - jdbcTemplateおよびOracle10

挿入を実行しようとすると、次のようになります。jdbcTemplate.update( "insert into ...."、new Object [] {foo.getId()、foo.getName()})foo.getId()はlongを返し、 getName()文字列。OracleのIDタイプとして「NUMBER」を使用し、名前フィールドにvarchar2を使用しています。

SQLtypeの不明な問題が発生しています。updateメソッドには、SQLタイプを入力する必要がないバージョンがありますが、入力する必要がありますか?入力する必要がある場合は、どのように入力しますか?

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

mysql - MySQLを使用したSpringJDBCTemplateテーブルのロック

アプリケーションの1つを純粋なJDBCからSpringのJDBCTemplateに移行するだけです。テーブルの書き込みロックを作成する方法を考えていました。「LOCKTABLEfoo」クエリを実行するだけですか、それともJDBCTemplateでこれを行うための一般的な方法がありますか?

ありがとう!

0 投票する
4 に答える
10122 参照

java - Spring と JDBCTemplate を使用して実行時間の長いクエリをキャンセルするにはどうすればよいですか?

JDBCjava.sql.Statementクラスにはcancel()メソッドがあります。これを別のスレッドで呼び出して、現在実行中のステートメントをキャンセルできます。

Spring を使用してこれを達成するにはどうすればよいですか? クエリの実行時にステートメントへの参照を取得する方法が見つかりません。また、キャンセルのような方法も見つかりません。

ここにいくつかのサンプルコードがあります。これを実行するのに最大 10 秒かかると想像してください。ユーザーの要求に応じて、キャンセルしたい場合があります。

java.sql.Statementオブジェクトへの参照を取得するには、これをどのように変更すればよいでしょうか?

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

jdbc - SimpleJdbcTemplate で QueryTimeout を設定するにはどうすればよいですか?

Spring Framework には 2 つの類似したクラスがあります。JdbcTemplate は古い Java 1.4 クラスで、SimpleJdbcTemplate は新しく、より優れたメソッドを備えています。

JdbcTemplate にはメソッドsetQueryTimeoutがあり、基本的に、基になる Statement オブジェクトで同じ名前のメソッドにアクセスできます。

SimpleJdbcTemplateで同様のことを行う方法はありますか?

解決策: skaffman の回答に基づいて、SimpleJdbcTemplateオブジェクトを自分で から作成するJdbcTemplateので、やりたいことが何でもできるようになりました。コード:

少し一口ですが、仕事を終わらせます。

更新:これは確かに必要以上に複雑です。答えを見てください。

0 投票する
5 に答える
202525 参照

java - SpringのJDBCTemplateを使用してIN()SQLクエリを効果的に実行するにはどうすればよいですか?

SpringのJDBCTemplateを使用してIN()クエリを実行するためのより洗練された方法があるかどうか疑問に思いました。現在、私はそのようなことをしています:

IN()クエリの句を作成するためだけに9行あるとしたら、これは非常に苦痛です。プリペアドステートメントのパラメータ置換のようなものが欲しいのですが

0 投票する
3 に答える
12127 参照

java - Hibernate SessionFactoryでJDBCTemplateを使用していますか?

Spring / Hibernateアプリがあり、パフォーマンスと開発時間に関する理由から、少量のJDBCを追加したいと考えています。このdaoサブクラスHibernateDaoSupportを作成し、セッションの接続を使用してJDBCを実行できますが、JdbcTemplateを使用したいと思います。ただし、JdbcTemplateは、java.sql.Datasourceを使用して初期化されます。既存のHibernateSessionFactoryを使用して初期化するにはどうすればよいですか?

0 投票する
4 に答える
633 参照

mysql - MySQL キーの一意性の確保

キー (文字列) がサードパーティのソースから読み取られる MySQL DB があります。ただし、これらは常に一意であるとは限りません (映画のタイトルです)。したがって、キーの一意性を確認し、一意でない場合は、キーの末尾に増分カウントを追加するなどして、一意になるように修正する必要があります。

これを行うための最良のパターンは何ですか?私は現在、サードパーティから受け取ったすべてのキーを格納し、カウントを格納するテーブルを持っているので、次のようにします:

jdbcTemplate と keyHolder を使用して、新しい (または更新された) 行の ID を取得しています。問題は、カウントを戻す必要があることです。もちろん、2 番目のクエリ (SELECT) を実行して、その ID を持つレコードを取得できます。ただし、ここでの問題は並行性にあります。SELECT を実行する直前に、同じサードパーティ キーを使用した別の INSERT が発生する可能性があります (可能性は低いですが)。この場合、カウントが 2 回インクリメントされ、間違ったカウントが返されます。

何か案は?

ありがとうリチャード。

0 投票する
2 に答える
2363 参照

java - postgresqlのJdbcTemplateバッチ更新-日付は時間を失いますか?

( )java.util.dateの形式でオブジェクトのリストを挿入しています。YYYY-MM-DDThh:mm:ssTZD2008-09-26T14:34:59+02:00

SQL:

INSERT INTO cdate(key、valuedate、user_id)VALUES(?、?、?)

日付正しい形式ですが、PostgreSQLでは次のようにしか保存されません: " 2008-09-26 00:00:00+02"

編集:私は前に急いでいました...私は十分な情報を提供しませんでした、ごめんなさい。

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

java - NamedParameterJdbcTemplate を使用して配列フィールドを更新する

dblArrayFldテーブルに倍精度配列フィールドがあり、 myTableSpring を使用して更新したいと考えていますNamedParameterJdbcTemplate(私は Postgres を使用しています)。

私は次のようなコードを実行しています:

これは、"$2" またはその付近で構文エラーを読み取るエラーを返します。

ここでは、:myarray の構文に問題があると想定しています。:myarrayまた、次の方法で囲み込みを試みました。

  • dblArrayFld={:myarray}
  • dblArrayFld={ :myarray }
  • dblArrayFld=[:myarray]
  • dblArrayFld=ARRAY[:myarray]
  • dblArrayFld=(:myarray)

ここで正しい構文は何ですか?

0 投票する
3 に答える
36246 参照

java - Java プログラミング - Spring と JDBCTemplate - クエリ、queryForList、または queryForRowSet を使用しますか?

私の Java (JDK6) プロジェクトでは、すべてのデータベース アクセスにSpringJDBCTemplateを使用しています。最近、Spring 2.5 から Spring 3 (RC1) にアップグレードしました。プロジェクトはHibernateEJBのような ORM を使用しません。

大量のレコードを読み取り、内部処理を行う必要がある場合、いくつかの (オーバーロードされた) メソッドがあるようです: query、queryForList、および queryForRowSet

一方を他方の代わりに使用する基準は何ですか? パフォーマンスの違いはありますか? ベストプラクティス?

このトピックに関するさらなる研究のために、いくつかの外部参照を推奨できますか?