問題タブ [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.
java - iBatisに相当するMyBatisは何ですか鬼ごっこ?
古い iBatis バージョン 2 を移植しています。<isParameterPresent>
タグを置き換える方法を知りたいですか?MyBatis ユーザー ガイドを読みましたが、できることはわかっていますが<if test="">
、パラメーター オブジェクトを参照する方法がわかりません。特別な名前はありますか?使用する別のタグはありますか?
mybatis - 異なるテーブルでフィールド名が重複していると、mybatisでの`SELECT`クエリが複雑になります
created_at
行が挿入されたときに表すタイムスタンプである、という名前のフィールドを持つテーブルがいくつかあります。
今、私は永続層としてmybatis 3を使用していますが、で何かをクエリすると少し退屈であることがわかりましたjoin
。
私がすべての質問とその答えを得ると期待した単純なSQLを見てください:
しかしquestions
、answers
両方にフィールドがあるため、結果セットに2が含まれているcreated_at
ことがわかりました。また、2番目のフィールドは無視されます。したがって、回答の値は、正しくありません。select q.*, a.*
created_at
created_at
questions
これを避けるために、私は2つの方法を見つけましたが、どちらも良くありません。
各テーブルのフィールド名を変更し、それらが同じでないことを確認します。例:
questions.created_at
->questions.q_created_at
、answers.created_at
->answers.a_created_at
。id
、、、などのフィールドがたくさんあるため、これは良くありませんname
。データベースを読みにくくし、これらの名前を変更するために維持するのが難しくなりますtitle
。updated_at
SQLを変更します。次のように、SQLのフィールド名を変更します。
SQLのすべてのフィールド名を変更する必要があるため、これは良くありません。非常に長くて読みにくくなり、そのようなSQLを毎回書くのは面倒です。
私はmybatisを初めて使用しますが、この問題に対するより良い解決策はありますか?
java - Spring MVC にクライアント/サーバー アプリケーションをデプロイする
スタンドアロンのクライアント サーバー アプリケーションが 1 つあります。一部のサーバー(TOMCATなど)にデプロイできるように、Spring MVCに移動したいと考えています。
多くの Spring MVC チュートリアルなどを参照しましたが、独自のアプリをデプロイする方法がわかりませんでした。
募集要項は以下の通りです。
SERVERはクライアントからデータを受け取って処理し、データが既に存在するか DB にあるかどうかを確認し、そうでない場合は DB に挿入し、クライアントによって指定された ID に基づいて特定のファイルに書き込みます。
CLIENTは、現時点ではランダムに生成されたデータのみを送信します。
今私がしたいのは、ボタンをクリックしてクライアントを開始し、サーバーにデータを送信し、クライアントページに応答を表示できるWebページを作成することです(例:接続、受信したデータ、挿入されたデータ) DB、データがすでにDBに存在するなど)
_ 私はここでひどく立ち往生しており、先に進む方法がわからないので、ここで私を助けてください. _
編集で必要な場合は、コードを投稿できます。
前もって感謝します。:)
spring - myBatis と Spring でトランザクションをセットアップする方法
トランザクションを設定しようとしていますが、成功しません。これが私のコードです:
その processTransaction メソッドは、1 つのトランザクションだけでなく、複数のトランザクションのセットのようです。
Spring 3.0.5、myBatis 3.0.4、mybatis-spring-1.0.1、Tomcat 7.0.19、Oracle 11.1.0.6.0 を使用しています。
手伝ってくれてありがとう。
spring - Spring と iBatis を使用した JSR-303 Bean 検証
JSR-303 Bean 検証を使用して、バックエンド サービスと通信できるカスタム アノテーションを作成することは可能ですか?
このタイプの検証は、「古い学校の」Spring バリデーターで実現しました。その場合、バリデーターは Spring Bean であり、他のサービスを注入することができました。次に、そのバリデーターがコントローラーに挿入されます。
例としては、電子メールが既に存在するかどうかを確認するための注釈 (おそらく @EmailExists) があります。これは、当社のサービスの 1 つを使用した SQL クエリでのみ実行できます。これを他の注釈と一緒に「検証」し、できるだけ早くチェックし、バックエンド サービスで明示的に行う必要はありません。
注: iBatis/MyBatis を使用しているため、JPA/Hibernate のトリックは使用できません :-)
ありがとう!
mybatis - MyBatis で、SelectProvider の結果タイプを指定する方法
これは私の下手な英語を使用した最初の投稿です...
MyBatis3.0を使用しています
クエリでは、次のようなメソッドで SqlBuilder を使用しました。
次のようなマッパーインターフェース:
public interface DataStatisticMapper {
@SelectProvider(type=DataStatisticSqlBuilder.class, method="getDataQtyListSql")
私が電話したとき
コンソールに次の結果出力が表示されました。
上記の出力に基づいて、期待される結果はリスト [Map, Map, ...] になるはずですが、実際の結果は [null, null] です。結果が HashMap にマップされていないようです。このクエリで結果タイプを HashMap に設定するにはどうすればよいですか?
いくつかの注釈を使用するかもしれませんが、見つかりませんでした。
どうもありがとう。
mysql - MySqlとMybatisは、値<=##である別個の行を選択します
ユーザー、ロール、権限の3つのテーブルがあります
ユーザー
役割
当局
渡すINTよりも高いroleLevelと最も低いroleLevelを持つすべてのDISTINCTユーザーを取得する必要があります
私が今持っているのは:
しかし、それは私に複数の役割を持つユーザーのための複数の行を与えます。渡したものよりも低いroleLevelを持つユーザーを取得するにはどうすればよいですか?
spring - MyBatis を使用しているときに、作成日/変更日などのフィールドをどのように自動的に更新しますか?
私は MyBatis を使用しており、「作成」、「変更」されたすべてのテーブルに 2 つのフィールドを実装したいと考えています。どちらも日付フィールドです。挿入または更新時にこれらのフィールドを自動的に更新する方法はありますか? もちろん、マッピングを調整することはできますが、これを行うためのより一般的で DRY な方法があるかどうか疑問に思っていました。
java - Spring/MyBatis でトランザクションを使用するには? ベストプラクティス?
MyBatis と Spring でトランザクションを使用しようとしていますが、これを達成するためのベスト プラクティスがあるかどうか疑問に思っていましたか? ヒントや考えをいただければ幸いです。
私のアプリケーションは、MySQL データベースに対して tomcat コンテナーで実行されます。
java - MyBatisが一度に複数のSQLステートメントを実行することは可能ですか?
一度に複数のSQLステートメントを実行できるかどうか疑問に思いました。たとえば、複数のテーブルから行を削除したいというシナリオでは、次のようなことができる方法があります。