タグ付けされた質問 「java」

Javaは人気のある高水準プログラミング言語です。言語自体の使用または理解に問題がある場合は、このタグを使用してください。このタグが単独で使用されることはめったになく、[spring]、[spring-boot]、[jakarta-ee]、[android]、[javafx]、[gradle]、および[maven]と組み合わせて使用​​されることがほとんどです。


8
ConcurrentModificationExceptionがスローされる理由とそのデバッグ方法
私はCollection(HashMapJPAによって間接的に使用されているため、そうなります)を使用していますが、明らかにランダムにコードがをスローしConcurrentModificationExceptionます。何が原因で、この問題を解決するにはどうすればよいですか?同期を使用することで、おそらく? ここに完全なスタックトレースがあります: Exception in thread "pool-1-thread-1" java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(Unknown Source) at java.util.HashMap$ValueIterator.next(Unknown Source) at org.hibernate.collection.AbstractPersistentCollection$IteratorProxy.next(AbstractPersistentCollection.java:555) at org.hibernate.engine.Cascade.cascadeCollectionElements(Cascade.java:296) at org.hibernate.engine.Cascade.cascadeCollection(Cascade.java:242) at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:219) at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169) at org.hibernate.engine.Cascade.cascade(Cascade.java:130)

13
指定されたURLからドメイン名を取得します
URLを指定して、ドメイン名を抽出したい( 'www'の部分は含めないでください)。URLにはhttp / httpsを含めることができます。これが私が書いたJavaコードです。それはうまく機能しているように見えますが、より良いアプローチはありますか、それとも失敗する可能性があるいくつかのエッジケースがありますか? public static String getDomainName(String url) throws MalformedURLException{ if(!url.startsWith("http") && !url.startsWith("https")){ url = "http://" + url; } URL netUrl = new URL(url); String host = netUrl.getHost(); if(host.startsWith("www")){ host = host.substring("www".length()+1); } return host; } 入力:http : //google.com/blah 出力:google.com
130 java  url 

9
すべてのテストが最新の状態でGradleテストを実行するにはどうすればよいですか?
成績スクリプトを設定しました。Gradleビルドを実行すると、すべてが機能し、jUnitテストが実行されます。 その後、Gradleテストを実行すると、次のようになります。 C:\Users\..\..\Project>gradle test :compileJava UP-TO-DATE :processResources UP-TO-DATE :classes UP-TO-DATE :compileTestJava UP-TO-DATE :processTestResources UP-TO-DATE :testClasses UP-TO-DATE :test UP-TO-DATE を実行するとgradle clean、もちろんGradleビルドが機能します...プロジェクト全体をビルドするのではなく、テストのみをリセットできるようにしたいのですが、どうすればよいですか?

5
Gradle、「sourceCompatibility」対「targetCompatibility」?
関係/違いは何であるsourceCompatibilityとはtargetCompatibility?異なる値に設定するとどうなりますか? Gradleのドキュメントによると: sourceCompatibility「Javaソースのコンパイル時に使用するJavaバージョンの互換性」です。 targetCompatibility「クラスを生成するJavaバージョン」です。 私の理解はtargetCompatibility、Javaの特定のバージョンと互換性のあるJavaバイトコードを生成することですが、これはの機能のサブセットsourceCompatibilityですか?
130 gradle  java 

2
プロジェクト内の*プラグイン*のMaven依存関係ツリーをどのように表示できますか?
一般的なMavenデバッグ手法は、mvn dependency:treeを使用してプロジェクトの依存関係のグラフを表示することです。 ただし、このリストには、各プラグインのプラグイン依存関係ツリーではなく、プロジェクトの依存関係が表示されます。プロジェクトからこれを行う方法はありますか?
130 java  plugins  maven 

8
Javaで連続した整数のリストまたは配列を生成するにはどうすればよいですか?
短いと甘い生成する方法があるList<Integer>、または多分 Integer[]またはint[]、いくつかの連続した値でstartの値end値は? つまり、次のものよりも短いが1に相当するものです。 void List<Integer> makeSequence(int begin, int end) { List<Integer> ret = new ArrayList<>(end - begin + 1); for (int i=begin; i<=end; i++) { ret.add(i); } return ret; } グアバの使用は問題ありません。 更新: パフォーマンス分析 この質問は、ネイティブJava 8とサードパーティのライブラリの両方を使用して、いくつかの良い答えを受け取ったので、すべてのソリューションのパフォーマンスをテストすると思いました。 最初のテスト[1..10]は、次のメソッドを使用して、10要素のリストの作成をテストするだけです。 classicArrayList:私の質問で上記のコード(そして基本的にはadarshrの回答と同じ)。 eclipseCollections:Eclipseコレクション8.0を使用して、以下のドナルドの回答で提供されるコード。 guavaRange:以下のdavebの回答で与えられたコード。技術的には、これはaを作成するのList<Integer>ではなく、aを作成します。ただし、順序どおりにContiguousSet<Integer>実装さIterable<Integer>れるため、ほとんどの場合私の目的で機能します。 intStreamRange:以下のVladimirの回答に記載されているコードを使用IntStream.rangeClosed()します。これはJava 8で導入されました。 streamIterate:Java 8で導入された機能も使用する、以下のCatalinの回答に示されているコードIntStream 上記のすべてのサイズ10のリストについて、1秒あたりのキロオペレーションの結果を次に示します(数値が大きいほど優れています)。 ...そしてサイズが10,000のリストの場合: その最後のチャートは正しいです-EclipseとGuava以外のソリューションは遅すぎて、1ピクセルのバーを取得することさえできません!高速ソリューションは、他のソリューションよりも10,000〜20,000 倍高速です。 もちろん、ここで起こっているのは、guavaとeclipseのソリューションが実際には10,000要素のリストの種類を具体化しないことです。これらは、開始と終了の周りの固定サイズのラッパーにすぎません。各要素は、反復中に必要に応じて作成されます。このテストでは実際には反復しないため、コストは延期されます。他のすべてのソリューションは、実際に完全なリストをメモリに具体化し、作成のみのベンチマークで高額を支払います。 もう少し現実的なことをして、すべての整数を繰り返して合計します。したがって、IntStream.rangeClosedバリアントの場合、ベンチマークは次のようになります。 @Benchmark …

4
フィールドインジェクションとは正確には何であり、それを回避する方法は?
フィールドインジェクションは推奨されないというSpring MVCおよびポートレットに関するいくつかの投稿を読みました。私が理解しているように、フィールドインジェクションとは、次の@AutowiredようなBeanをインジェクトすることです。 @Component public class MyComponent { @Autowired private Cart cart; } 私の研究中に、コンストラクター注入についても読みました: @Component public class MyComponent { private final Cart cart; @Autowired public MyComponent(Cart cart){ this.cart = cart; } } これらのタイプの注射の両方の長所と短所は何ですか? EDIT 1:この質問はの重複としてマークされているとおり、この質問私はそれをチェックします。質問にも回答にもコード例がないため、使用している注入タイプを推測して正しいかどうかはわかりません。

20
android.view.InflateExceptionクラスandroid.webkit.WebViewの膨張エラー
Lollipop(API 22)では、アプリケーションで毎回、アプリケーションがクラッシュするwebviewを表示しています。このイベントに関連して、Android開発者コンソールで複数のクラッシュが発生しました。 Android 4、6、7で動作することは言うまでもありません。 スタックトレース(この投稿の最後に投稿)を読むと、何かが私を悩ませます Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x2040003 明らかにIDが存在しないため、生成されたR.javaを検索しましたが、運が悪かったのですが、試してみる価値はありました。 問題をググるのは、ロリポップがウェブビューを処理する方法に関連しているようです。GDCのクラッシュレポーターで見つけたデバイスに基づいて、ロリポップで新しいAVDを開始しました。問題を再現できます。 完全なスタックトレース: android.view.InflateException: Binary XML file line #7: Error inflating class android.webkit.WebView at android.view.LayoutInflater.createView(LayoutInflater.java:633) at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:55) at android.view.LayoutInflater.onCreateView(LayoutInflater.java:682) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:741) at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) at android.view.LayoutInflater.inflate(LayoutInflater.java:504) at android.view.LayoutInflater.inflate(LayoutInflater.java:414) at it.artecoop.ibreviary.WebViewFragment.onCreateView(WebViewFragment.java:67) at android.support.v4.app.Fragment.performCreateView(Fragment.java:2087) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1113) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1295) at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:801) at …
130 java  android  webview 

12
記号、アクセント文字を英語のアルファベットに変換する
問題は、ご存じのように、Unicodeチャートには何千もの文字があり、類似の文字をすべて英語のアルファベットの文字に変換したいということです。 たとえば、ここにいくつかの変換があります: ҥ->H Ѷ->V Ȳ->Y Ǭ->O Ƈ->C tђє Ŧค๓เℓy --> the Family ... そして、私は手紙A / aの20以上のバージョンがあることを見ました。それらを分類する方法がわかりません。彼らは干し草の山の針のように見えます。 ユニコード文字の完全なリストはhttp://www.ssec.wisc.edu/~tomw/java/unicode.html またはhttp://unicode.org/charts/charindex.htmlにあります。下にスクロールしてみて、文字のバリエーションを確認してください。 これらすべてをJavaでどのように変換できますか?私を助けてください :(

6
LoaderManagerのinitLoaderとrestartLoaderの違い
との違いについて完全に迷っinitLoaderていますrestartLoader機能のますLoaderManager。 彼らは両方とも同じ署名を持っています。 restartLoader ローダーが存在しない場合は、それも作成します(「このマネージャーで新しいローダーを開始するか、既存のローダーを再起動します」)。 2つの方法の間に何らかの関係がありますか?呼び出しはrestartLoader常に呼び出しinitLoaderますか?電話しrestartLoaderなくても電話できますinitLoaderか?initLoader2回呼び出してデータを更新しても安全ですか?2つのうち1つを使用する必要があるのはなぜですか?


4
IntelliJのRegEx後方参照
IntelliJの検索と置換機能を使用して、次の変換を実行したいと思います。 // Replace this model.put('foo', 'bar') // With this model['foo'] = bar 私は以下を試しました: 検索するテキスト:model.put\((.*),(.*)\) 置換:model\[\\1\] = \\2 しかしのIntelliJは認識していないようです\\1し、\\2後方参照として。スラッシュも1つ試しましたが、それでもうまくいきません。

3
Spring Data JPAは、大規模プロジェクトのHibernateとどう違うのですか?
新しいプロジェクトでHibernateを使い続けるべきか、それともJPAと新しいSpring Dataの実装で足を踏み入れるべきかを判断するのに苦労しています。 Spring Dataフレームワークは、大規模なプロジェクトを対象としていますか? @Query注釈を使用することによるコード削減の利点は確かにわかりますが、動的クエリに対して何をしますか?非常に複雑なsave()メソッドを実装する場合はどうでしょうか? ドキュメントには、メインリポジトリが実装するカスタムインターフェイスと実装を作成するように記載されていますが、クラッドリポジトリ自体のスーパーメソッドにアクセスする必要がある場合はどうでしょうか。crudリポジトリはカスタムのリポジトリを実装します-逆ではありません。奇妙なデザインのようです。 このフレームワークが複雑で大規模なアプリケーションの課題に対応できるかどうかは非常に不確かです。私はHibernateで多くの問題に遭遇したことがなく、Spring Data JPAを使用するのではなく、古き良き信頼性を維持することを検討しています。 私は何をすべきか?Spring Data JPAを使用すると、予期せぬ複雑さとコストが発生しますか?

4
Spring MVCタイプ変換:PropertyEditorまたはConverter?
Spring MVCでデータをバインドして変換する最も簡単で最も簡単な方法を探しています。可能であれば、XML構成を行わないでください。 これまでのところ、PropertyEditorsを次のように使用しています。 public class CategoryEditor extends PropertyEditorSupport { // Converts a String to a Category (when submitting form) @Override public void setAsText(String text) { Category c = new Category(text); this.setValue(c); } // Converts a Category to a String (when displaying form) @Override public String getAsText() { Category c = …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.