問題タブ [jdbi]

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 に答える
1699 参照

java - JDBI のドライバーを手動で設定する

現在、プラグインとして既存のアプリケーションにプラグインされるプログラムを Java で作成しています。プラグインで JDBI を使用したいと考えており (非常に快適で、慣れているため)、MySQL データベースに接続する必要があります。

通常、ドライバーを含めた後は問題なく動作しますが、既存のアプリケーションには問題があります。明らかに、すでに mysql-driver がありますが、古いものです。

これによりエラーが発生し、クエリをデータベースに送信できなくなります。(エラーは既知です: 古いドライバーには、新しい MySQL バージョンでは使用できない非推奨のメソッドがあります)

jar をシェーディングすると役立つと思いましたが (Maven を使用しています)、それでもエラーが発生します。しかし、私は自分のドライバーの影付きの名前を知っています。JDBI がそれを利用できるように、それをロードする方法を知る必要があるだけです。今、私はこのようなものを持っています:

jdbiに使用する必要があることを伝えるにはどうすればよいmyapp.mysql.jdbc.Driverですか?

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

java - @BindBean パラメータをチェーンできますか?

@BindBeanBean のプロパティを params - として使用できますmyObj.a
bean- のプロパティのプロパティを使用できますmyObj.a.bか?

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

java - JDBI で一般的な挿入を行うにはどうすればよいですか?

私はMySQLでJDBIを使用しており、このメソッドがあるGenericDaoインターフェースを持っています

SQLObjects の代わりに流暢なクエリを使用して、JDBI でこのメソッドを実装するにはどうすればよいですか?

これのどちらかを使用することは可能ですか?

また

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

java - @UseStringTemplate3StatementLocator を使用すると、JDBI で「ORA-00900: 無効な SQL ステートメント」というエラーが発生する

dao.sql.stg 文字列テンプレート ファイルとリンクする DAO インターフェイスを作成しようとしています。クエリは非常に単純で、ID で選択するだけです。

MyDao.groovy:

MyDao.sql.stg:

私のバックエンド データベースは oracle です。Oracle SQL Developer でこのクエリを試してみましたが、問題なく動作しますが、アプリと sql.stg ファイルを使用してクエリを実行すると、次のようになります。

リソースディレクトリをPOMに含めたにもかかわらず、使用するsql.stgファイルが何らかの形で見つからないのではないかと思います。

JDBI で正しい sql.stg 文字列テンプレート ファイルを見つけるにはどうすればよいですか? 私はこのアプリの他の DAO の例に従いましたが、まったく同じ設定を使用しています。

編集: stringtemplate ファイルを使用する代わりに、クエリ文字列を DAO インターフェイスの @SqlQuery 注釈にハードコーディングすると、正常に動作することに注意してください。したがって、問題は間違いなく、dao が stringtemplate ファイルを正しく検出または処理できないことです。完全なスタック トレースは次のとおりです。

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

java - JDBI ResultSetMapper を使用したオプション フィールドのマッピング

エンティティが持つすべての属性をマップする 1 つの EntityMapper を持つエンティティがあります。

次に、私のDAOインターフェイスで、DBから@SqlQueryを使用してフェッチしています

  • 場合によってはすべてのエンティティの属性 --> これで問題ありません
  • ただし、特定の属性のみをフェッチする場合もあります --> ここで、マッパーは「SQLException Column xxx not found」で失敗します

この問題の推奨される解決策は何ですか? エンティティごとにマッパーを 1 つだけ持ちたいのですが、常にすべての属性をフェッチするわけではありません。