(Keplerを使用しています)
このStringUtils
プラグインは非常に見栄えがします:http://marketplace.eclipse.org/content/stringutils-plugin(スクリーンショットをクリックしてください)。
- インストール用のEclipseマーケットプレイスダイアログに見つかりません
- GITリポジトリからマスターZIPをダウンロードしましたが、ソリューション5を支持しませんでした。
Java Multi-Line String Editor
プラグインと一緒に、そのようなSQLステートメントを書く/読む/デバッグするのは本当に簡単です:https ://marketplace.eclipse.org/content/java-multi-line-string-editor
- インストール用のEclipseマーケットプレイスダイアログに見つかりません
もう1つの優れた解決策は、javadocで文字列を維持できるMultiline
注釈のようです(コンパイル時に適切にフォーマットされた文字列に変換されます): https ://github.com/benelog/multiline
大きな文字列/SQLを別々の*.sql
ファイルに外部化する(そして、たとえばクラスパスからそれらを読み取る)ことが適切な場合、2番目に良いオプションになります。
私たちにとって最善の解決策は、Javaコードと一緒にGroovy (「Javaスクリプト拡張機能」)を使用することでした。
- Groovyプラグイン をインストールする必要がありますhttps://github.com/groovy/groovy-eclipse/wiki
- Groovy Nature
New -> Groovy Class
をプロジェクトに自動的に追加したと言っただけで、その後、SQLを次のような定数または列挙型として実装できます。
- Java(編集者)がサポートするほとんどすべて(Java-Groovyバリア間でも)をサポートします。
- コードの強調表示
- リファクタリング(名前変更)、ただしGroovyファイル内からのみ
- オートコンプリート/-
CTRL+rightclick
ナビゲーション
- Javadocヒント
src/my/pkg/SQLs.groovy
:
package my.pkg
class SQLs {
/** comment X */
static final String SEL_X = ```
select
bla,
foo
from
bar
where
x in (1,2,3)
```
}
src/my/pkg/SqlExec.java
:
// ...
stmt.executeQuery( SQLs.getSEL_X() ) ; /* Groovy auto-created this getSEL_X()
interface method transparently/auto-
suggested, but the "comment X" is not
hinted */
そして、私たちのユースケースにとってより適切なのは、SQLを列挙型として使用することでした。
enum SQLs {
/** comment X */
SEL_X(```
select
...
x in (1,2,3)
```)
String sql
SQLs( String sql ) { this.sql = sql }
}
これは、次のようにアクセスできますsrc/my/pkg/SqlExec.java
。
// the JavaDoc comment "comment X" works and the getSql() is transparently
// auto-generated by Groovy
stmt.executeQuery( SQLs.SEL_X.getSql() ) ;
そして、DTPを使用してEclipse内ですべてをデバッグすることでより多くの砂糖:-)
=>したがって、これらのSQLのデバッグは次のように簡単になります。
SQLs.groovy
file => Open with ... => Other => SQL Editor(from the very nice Eclipse Data Tools Platform (DTP) plugin
:https ://eclipse.org/datatools/ )
- いつでも好きなようにエディターを切り替えることができます(Eclipseはファイルごとに最後に使用されたものを記憶しています)
カスタムの事前構成されたデータベース接続からこのファイルの適切な接続を選択します(まだ行われていない場合は、開いている/接続されている必要があります)
デバッグ対象のSQLのマーキング+ALT+X
クエリ結果をタブ付きまたはテキストのみの結果としてデバッグします...