問題タブ [mybatis]

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

java - ID/UUIDがバイナリとして保存されている場合、MyBatisを使用して挿入後にキーを返す方法は?

現在、データベースには、挿入するすべてのレコードに uuid を渡すトリガーがあります。mybatis でレコードを挿入するときに、挿入された行数ではなく、その uuid を取得したいと考えています。

以前の投稿から、私はそれを行うことができると読みました

しかし、uuid をバイナリとして保存するので、挿入から非バイナリ uuid を取得したいと思います。ものを挿入するときは、「uuid2bin」や「bin2uuid」などの関数を使用するため、このような関数を使用して、新しく生成された uuid をデータベース (MySQL) から取得したいと考えていました。

新しく生成されたuuidを取り戻す方法について何か提案はありますか??

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

java - spring mybatis を使用してオブジェクトの Arraylist をプロシージャに渡す方法

たとえば、オブジェクトのArraylistを渡したい

SomeObjectにはkeyvalueの 2 つの属性があります。

DB側では、変数のテーブルタイプがあります

今、タイプ SomeObject の各オブジェクトを listOFSomeObject から tableTypeVariable にマップたい思います 。

それを手伝ってくれる体はありますか?

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

java - MybatisがSQLを出力するようにlog4jを設定する方法

私のプロジェクトは SpringMVC+Mybatis+EXTJS4 でセットアップされています。これは私の構成です:

しかし、コンソールにSQLを出力しません。誰か助けてもらえますか? 色々ありがとう

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

eclipse - Red5でmybatis-springを設定する際の問題

全て、

Red5サーバーで実行されているアプリケーションでMyBatisを構成しようとしています。これらのBeanを構成する追加のSpring構成ファイルを作成しましたred5-ibatis.xmlWEB-INFmybatis-springユーザーガイドで説明されています)。

アプリをデプロイした状態でサーバーを実行すると、次の例外が発生します。

よくわかりませんが、SpringはインターフェースをSqlSessionFactoryBean実装していることを認識していFactoryBeanないため、変換する方法を見つけることができませんSqlSessionFactory

とにかく、それを修正する方法はありますか?

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

mybatis - MyBatis & RefCursor パラメータ

現在、iBatis から myBatis へのアップグレードに取り組んでいます。Ibatisでは、次のようなSQLマップがあります

myBatis が提供する機能 (マッパーの実装を実装する必要がない、parameterMap などの非推奨の機能を使用しないなど) を最大限に活用したいのですが、いくつか問題があります。戻り値のプロパティを設定しようとしてエラーが発生し続けたので、resultSet オブジェクトをラッパー オブジェクトでラップする必要がありましたが、これは避けたいものです。

ConstraintHierarchyLevel クラス

mapper.xml

別の解決策を試みましたが失敗しました。このソリューションでは、param アノテーションを利用します

mapper.java

上記と同じresultMapを使用していますが、選択ブロックが異なります

mapper.xml

これを実行するとき、MapperMethod クラスを実行メソッドにデバッグし、Object パラメータは結果セットから正しいデータを取得しますが、これは送信された引数 (List) に配置されないため、これらの値は返されません。オブジェクトラッパーで最初のメソッドを実行すると、オブジェクトは送信された引数に配置されるため、取得可能になります。

ありがとう

0 投票する
10 に答える
53213 参照

sql - (方法)MyBatisでDBに依存しないSQLクエリで「LIKE」を安全に使用できますか?

MyBatisでは、次のように、SQLにパラメーターを挿入する場所をマークします。

SELECT * FROM Person WHERE id = #{id}

この構文は、特にSQLインジェクション攻撃を回避するために、適切なエスケープなどをアクティブにします。入力を信頼していて、エスケープをスキップしたい場合は、パラメーターを逐語的に挿入できます。

SELECT * FROM {tableName} WHERE id =#{id}

ここで、安全でない入力に対してLIKE検索を実行したいので、実行したいのは次のとおりです。

SELECT * FROM Person WHERE name LIKE #{beginningOfName} || '%'

ただし、残念ながら、重要なDBサーバーは連結の構文をサポートしていません||

MSSQL-「||」の代わりに「+」演算子を使用して標準を破ります。

..。

MySQL-再定義することで標準をひどく破る|| ORを意味します。

だから、私はどちらかを行うことができます

SELECT * FROM Person WHERE name LIKE CONCAT(#{beginningOfName}、'%')

この場合はMySQLに限定されます。

SELECT * FROM Person WHERE name LIKE '{beginningOfName}%'

入力を自分でサニタイズする必要があります。

よりエレガントな解決策はありますか?

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

java - MyBatis 3.0.5 とマッパーの読み込みの問題

MyBatis 3.0.5 を使用していますが、マッパーをリソースとしてロードする際に問題があります。私は Windows 7 64 を使用しており、Eclipse Indigo 64 ビットと jdk7 64 を使用しています。

テスト用にのみ同じマッパーを使用しています。最初のマッパーはロードされ、2 番目のマッパーは機能しません。エラー:

私の英語でごめんなさい。

解決策: Maven プロジェクトでは、テスト用に src/main/resources および src/test/resources にリソースが必要です。したがって、解決策は、xml マッパーをこれらのフォルダーに配置することです。

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

jersey - 安らかな Web サービス内での ibatis / mybatis のキャッシュ

Jax-RS (Jersey) の安らかな Web アプリ内で mybatis を使用しています。したがって、自動的に、セッションまたは状態管理はありません。

質問は、 mybatis のキャッシュ機能をどのように使用できますか?

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

java - Mybatis 3.0.5 ネストされたコレクション マッピングの例

MyBatis 3.0.5 のマッピング機能を調べています。データベースは、組み込みモードで実行中の H2 (1.3.160) です。ユーザーマニュアルの助けを借りて、簡単な部品が機能するようになりました。しかし、バッキング ストレージとしてaSetを使用する a をマッピングするのに苦労しています。HashMap

カスタム セットをフィールドとして持つカスタム コレクションの Java コードを次に示します (簡潔にするために簡略化しています)。

これがCustomSetコードです(これも簡略化されています)

マッピング インターフェイスは次のとおりです。

これは、Mybatis フレームワークへの呼び出しを行うコードです。

これまでのところ、マッピング XML を考え出すことができました。

さまざまな反復を通じて、「結果が多すぎます」エラー、その他のエラー、または何も発生しませんでした (マッパー呼び出しから null が返されました) が、必要な結果は得られませんでした。SQL コードはそれ自体で正常に動作し、簡単な select ステートメントで List を要求すると、行と ArrayList が返されます。私が抱えている問題は、ネストされたコレクション オブジェクトが適切に設定されていることです。

私は何度もマニュアルを読み、例を探しましたが、この目的のための正しいマッピング XML を思いつくことができませんでした。誰かが私を助けてくれるか、助けてくれる情報源を教えてくれれば幸いです。

すべての助けを前もって感謝します。

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

java - Mybatis 3.0.5 複数の入力による挿入/更新ステートメントのマッピング

明らかな何かが欠けているのかもしれませんが、単純なマップされた挿入ステートメントを正常に実行できません。

次のインターフェースの使用

および次の XML マッピング

そしてこのコード

次のデバッグ出力が得られます。

idその後に SQL 例外が続きます (列に null を入力することはできません)。

したがって、適切に渡された唯一の値は、追加で提供された文字列です。この時点で、フィールド名が正しく、オブジェクトが null ではなく、フィールドが適切に入力されていることを確認しました。

parameterType="CustomItem"の代わりにも使ってみparameterType="map"ましたが結果は変わりませんでした。

ここで何が欠けているのか誰かが教えてくれれば幸いです。

前もって感謝します。

PS:insert ステートメントでも同じ問題が発生します。