問題タブ [jxpath]
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 - パフォーマンスに関するJibxとJXPathの比較
膨大な量の XML ファイルを処理して RDBMS にロードするプロジェクトを扱っています。変換レイヤーでは、XML ファイルを Java pojo に変換し、エンリッチして検証し、DB に挿入する必要があります。
ファイルサイズはappxです。10キロバイト
問題は、変換レイヤーでどのフレームワークを使用するかです。ただ、その反面、気になるのがパフォーマンス。
私はまだ両方のアプローチで手を試していません。あなたのアドバイスに感謝します。
xslt - JXPATH を使用してノードを追加する
jxpath を使用してすべてのノードを出力し、この xml の機能タグに子ノードを追加しています
これは私のコードがどのように見えるかです(少なくとも機能する部分-いくつかの情報を出力します):
私の要件の最初の部分 (これらのノードを出力すること) は簡単です。
私の要件の 2 番目の部分は、私に到達するものです
新しいエントリを追加する必要があります --<features>< extract >プログラムで既存のタグの下に新しい< feature >3< /feature >ノードを追加する必要があります
それは、そのノードを分離し、それに子を追加するという行に沿ったものである可能性があります-私はそれについてどうすればよいかわかりません:
任意のアイデア/ヘルプをいただければ幸いです
java - jxpath で text() を使用する方法
jxpath 要素の text() を取得できますか、それとも機能しませんか?
素敵なxmlが与えられた場合:
//動作しません:
//動作しません:
//動作しません:
を使用してテキストを取得できることを知っています
しかし、それは重要ではありません。動作しませんtext()か?私は例を見つけることができませんでした....
PSまた、大文字と小文字の区別についても非常にうるさいです。どうにかオフにできませんか?
ありがとう、-G
java - JXPath での // 演算子の使用
一部のルート オブジェクトにはフィールドがありますMyCollection myCollection。クラスはインターフェイスをMyCollection実装しCollectionます。要素の名前は呼び出すことで利用できるので、クラスsomeService().getName()を作成しました。Rules
context.getValue("/myCollection");
myCollection を返します - OK
context.getValue("//myCollection");
myCollection を返します - OK
context.getValue("/myCollection/.[rules:getName() = 'secondName']");「secondName」を返すIMyNodeインスタンスを
返します - OKsomeService().getName()
行
context.getValue("/myCollection//.[rules:getName() = 'secondName']");
の後、次の行は実行されません。また例外なく、寛大なモードは設定されていません。何が起こっているのかわかりません。クラスの 8 行目は、 をRules印刷し"POINTER SET ON /myCollection[1]"ます。この例で取得したい要素は にあり/myCollection[2]ます。
これは、要素の名前が取得される場所です。このクラスは正しいと思います。
編集: この質問はJXPathに関するものです。jxpath の代わりに xpath タグを追加するのは間違っていました。
java - Apache Commons JXPath 検索は、XPath による検索中にオブジェクトをマーシャリングしますか?
式言語は初めてなので、org.apache.commons.jxpathユーティリティについてもっと学びたいと思っています。しかし、JXPath ユーティリティの実装について疑問に思っています。オブジェクトは最初にマーシャリングされ、XPath 検索が適用されますか、それともオブジェクトは元の状態、つまりマーシャリングせずに保持されますか?
可能であれば、適切な参照コード スニペットを提供してください。
ありがとう。
java - jxpath の Java 列挙型
私はいくつかの jxpath を列挙に入れたいと思っています。マップを使用して JSF ページと共有します。これにより、jxpath が createPathAndSetValue を実行するためのキーとしてそれらを EL で使用できるようになります。
そうすれば、大量のゲッターとセッターを作成することなく、モデルを簡単に埋めることができます。このような:
私はこのようなものを持っています
大文字の名前の代わりに isGiftJoin またはbillingAddress_postalCode という名前を使用し、コンストラクターで _ を / に置き換えます (したがって、xpath 属性は実際の xpath です)。どのプロパティにも名前に _ が含まれていない (含まれていない) 限り、作業は完了です。列挙は「大文字」にはなりませんが、RED が定数であるという意味で、列挙は実際には定数ではありません。ここでは、それらはデータを指すクラスのインスタンスであり、そのように「定数」であることを意図していません。
これらの名前は奇妙で標準的ではありませんか? C スタイルの定数である UPPERCASE 標準に連鎖するのはばかげていますか?
java - jxpathで高価なクエリをどのように実装しますか?
JXPathを、メモリに保持するのに非現実的に大きいか高価なコレクションを表す特定のノードを持つツリーへのアクセス言語として使用していたと想像してください。
顧客は実際にデータベースにあり、何億もの顧客がいます。想像できるすべてのクエリの完全な一般性は必要ありません。このような適切にインデックス付けされたクエリのほんの数種類です。
jxpathのカスタマイズ機能を使用してこれらを実装する実用的な方法はありますか?もしそうなら、例、関連するドキュメントなどを教えていただけますか?
java - スーパークラスの jXPath クエリ属性
BaseDomain クラスを継承するいくつかのドメイン クラスがあります。
この BaseDomain クラスには、 public final String name; であるフィールドがあります。
name の値はコンストラクターで設定されます。
この BaseDomain はいくつかのクラスによって拡張されています
ここまでは順調ですね。
JXPath を使用して、Trip のオブジェクト インスタンス内のフィールド「name」の値を取得したいのですが、取得できません。「id」フィールドにはアクセスできますが、「name」フィールドにはアクセスできません。
この設定とJXPathで「name」の値を取得することは可能ですか?
コードに構文エラーやその他のエラーがある可能性があります。皆さんが私の質問を理解して理解してくれることを願っています。
ヘルプやポインタは大歓迎です。
最初に: ケリー S. フレンチの素早いリプレイに感謝したいと思います。もう少し説明しなければならないことに気づきました。
最終的にはより深い検索を行うため、jxpath を使用したいと考えています。例: Trip は、BaseDomain も拡張する Locations のリストを保持する場合があります。各 Location は、BaseDomain を拡張する PointOfInterest のリストを保持できます。
コードの他の部分のリフレクションを介して、タイプに基づいて BaseDomain のリストを取得できるようにしたい (class.getCanonicalName())
オブジェクト ツリーは xml に基づいておらず、純粋な POJO です。
私が理解している限り、タイプ、クラス名などに基づいてオブジェクトのリストを見つけるための jxpath-query を作成する方法はありません。
これは正しいです?誰かがそれを行う方法を知っていますか?
見苦しくても、最も簡単な方法は、スーパークラスにクラス名を保持するフィールドを用意することです。それが私がこの醜い解決策を行った理由です。
最終的に、トリップに基づいて、任意の深さで BaseDomain のインスタンスであるオブジェクトの反復子を返す jxpath-query を作成したいと思います。オブジェクトツリーのどのブランチにノードが配置されているかに依存しません。探しているオブジェクトのクラス名を取得します。
jxpath-queryでこれを達成できるかどうか知っている人はいますか?
コード例、ブログまたはその他のドキュメントへのリンクは大歓迎です。
以前のように、私はどんな助けにもとても感謝しています.
java - List を反復処理する Java JXPath
空のイテレータによる rateCode 値の Bean のリストでの JXPath 検索。
rateCode=R1 を持つすべてのアイテムをフェッチしたい Bean のリストがあります。以下は私のコードです。