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

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

5
JavaロギングAPIを使用しているときに、デフォルトのコンソールハンドラーを無効にするにはどうすればよいですか?
こんにちは、アプリケーションにJavaロギングを実装しようとしています。2つのハンドラを使用したい。ファイルハンドラーと自分のコンソールハンドラー。私のハンドラーはどちらも正常に動作します。私のログはファイルとコンソールに送信されます。ロギングはデフォルトのコンソールハンドラーにも送信されますが、これは不要です。私のコードを実行すると、コンソールに送信される追加の2行が表示されます。デフォルトのコンソールハンドラーを使用したくありません。デフォルトのコンソールハンドラーを無効にする方法を知っている人はいますか?作成した2つのハンドラーのみを使用します。 Handler fh = new FileHandler("test.txt"); fh.setFormatter(formatter); logger.addHandler(fh); Handler ch = new ConsoleHandler(); ch.setFormatter(formatter); logger.addHandler(ch); import java.util.Date; import java.util.logging.ConsoleHandler; import java.util.logging.FileHandler; import java.util.logging.Formatter; import java.util.logging.Handler; import java.util.logging.Level; import java.util.logging.LogManager; import java.util.logging.LogRecord; import java.util.logging.Logger; public class LoggingExample { private static Logger logger = Logger.getLogger("test"); static { try { logger.setLevel(Level.INFO); Formatter formatter …

3
Spring Security式言語アノテーションで使用するカスタムメソッドを作成する方法
アノテーションを介したメソッドベースの承認のために、Spring Security Expression Languageで使用するカスタムメソッドを追加するクラスを作成したいと思います。 たとえば、「customMethodReturningBoolean」のようなカスタムメソッドを作成して、次のように使用します。 @PreAuthorize("customMethodReturningBoolean()") public void myMethodToSecure() { // whatever } 私の質問はこれです。可能であれば、カスタムクラスを作成するためにどのクラスをサブクラス化する必要がありますか、Spring xml構成ファイルでそれを構成するにはどうすればよいですか?

1
enumをhibernateの文字列にマッピングする
私はカテゴリ休止モデルを持っています: @Entity @Table(name = "category") public class Category { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name = "id") private long id; @Column(name = "type") private String type; タイプ文字列フィールドがあります。また、カテゴリのタイプを表すJava列挙型も用意しています。 public enum CategoryType { INCOME, OUTCOME; } 文字列型の代わりに使用したい。SQLは、varcharパラメータで2つの異なる値(CategoryIncomeまたは)を受け入れますCategoryOutcome。カテゴリモデルクラスが列挙型変数を受け入れて、休止状態が要求するたびに何らかの方法で文字列にマッピングしたいと思います。 出来ますか?
92 java  hibernate  enums 

1
HashSet <T> .removeAllメソッドは驚くほど遅い
Jon Skeetは最近彼のブログで興味深いプログラミングトピックを取り上げました:「私の抽象化には、穴があります。 私はセットを持っています– HashSet実際、。いくつかのアイテムを削除したいのですが、アイテムの多くが存在しない可能性があります。実際、私たちのテストケースでは、「removals」コレクションの項目はいずれも元のセットには含まれません。これは、実際にコーディングが非常に簡単に聞こえます。結局のところ、私たちはSet&lt;T&gt;.removeAll私たちを助ける必要がありますよね? 「ソース」セットのサイズと「削除」コレクションのサイズをコマンドラインで指定し、両方をビルドします。ソースセットには負でない整数のみが含まれています。削除セットには負の整数のみが含まれています。を使用してすべての要素を削除するのにかかる時間を測定しますSystem.currentTimeMillis()。これは、世界で最も正確なストップウォッチではありませんが、この例では十分すぎるほどです。これがコードです: import java.util.*; public class Test { public static void main(String[] args) { int sourceSize = Integer.parseInt(args[0]); int removalsSize = Integer.parseInt(args[1]); Set&lt;Integer&gt; source = new HashSet&lt;Integer&gt;(); Collection&lt;Integer&gt; removals = new ArrayList&lt;Integer&gt;(); for (int i = 0; i &lt; sourceSize; i++) { source.add(i); } for (int i …


8
Javaでログインユーザー名を取得する
Javaでユーザー名/ログイン名を取得するにはどうすればよいですか? これは私が試したコードです... try{ LoginContext lc = new LoginContext(appName,new TextCallbackHandler()); lc.login(); Subject subject = lc.getSubject(); Principal principals[] = (Principal[])subject.getPrincipals().toArray(new Principal[0]); for (int i=0; i&lt;principals.length; i++) { if (principals[i] instanceof NTUserPrincipal || principals[i] instanceof UnixPrincipal) { String loggedInUserName = principals[i].getName(); } } } catch(SecurityException se){ System.out.println("SecurityException: " + se.getMessage()); } 私が取得SecurityException私はこのコードを実行しようとします。誰かが私が正しい方向に進んでいるかどうか教えてください、そして私が問題を理解するのを助けてください。
92 java  username 

3
Intellij IDEAで正規表現を使用して大文字を小文字に置き換えるにはどうすればよいですか?
私はこれをググって、他の正規表現パーサーをどのように扱うかを見つけました: http://vim.wikia.com/wiki/Changing_case_with_regular_expressions http://www.regular-expressions.info/replacecase.html 私はこれらを試しましたが、どちらも機能しませんでした。例として、これを変更するために正規表現を使用したいと思います。 private String Name; private Integer Bar = 2; これに: private String name; private Integer bar = 2; 私はこのようなものを試しました: replace: private (\S+) (\S+) with: private $1 $L$2 with: private $1 \L$2 with: &lt;etc.&gt; それらのどれも動作しません。これをintellijで行うことは可能ですか、それとも欠落している機能ですか?これは単なる教育目的であり、例は不自然なものです。intellijでこれが可能かどうかを知りたいだけです。

8
JavaソケットAPI:接続が閉じているかどうかを確認する方法は?
JavaソケットAPIでいくつかの問題が発生しています。ゲームに現在接続しているプレーヤーの数を表示しようとしています。プレーヤーがいつ接続したかは簡単に判断できます。ただし、ソケットAPIを使用してプレーヤーがいつ切断されたかを判断するのは不必要に難しいようです。 isConnected()リモートで切断されたソケットを呼び出すと、常に戻るように見えtrueます。同様に、isClosed()リモートで閉じられたソケットを呼び出すと、常に戻るように見えfalseます。実際にソケットが閉じられているかどうかを判断するには、データを出力ストリームに書き込み、例外をキャッチする必要があることを読みました。これは、この状況を処理するための本当に不潔な方法のようです。ソケットがいつ閉じられたかを知るために、ネットワークを介してゴミメッセージを絶えず送信する必要があります。 他の解決策はありますか?

5
配列からストリーミングするときに整数を文字列にマッピングできないのはなぜですか?
このコードは動作します(Javadocで取得): List&lt;Integer&gt; numbers = Arrays.asList(1, 2, 3, 4); String commaSeparatedNumbers = numbers.stream() .map(i -&gt; i.toString()) .collect(Collectors.joining(", ")); これはコンパイルできません: int[] numbers = {1, 2, 3, 4}; String commaSeparatedNumbers = Arrays.stream(numbers) .map((Integer i) -&gt; i.toString()) .collect(Collectors.joining(", ")); IDEAは、「ラムダ式の互換性のない戻り値の型文字列」があることを教えてくれます。 どうして ?そしてそれを修正するには?

3
_(アンダースコア)は予約済みのキーワードです
交換しました s次のラムダ式を次のようにました_: s -&gt; Integer.parseInt(s) Eclipseコンパイラは言う: '_'は、ソースレベル1.8以降の予約キーワードであるため、識別子として使用しないでください。 JLS§3.9字句構造/キーワードには説明がありません。
92 java  lambda  java-8 

6
Javaでデフォルトの文字セット/エンコーディングを見つける方法は?
明白な答えは使用することですCharset.defaultCharset()が、最近これが正しい答えではない可能性があることがわかりました。結果は、いくつかの場面でjava.ioクラスが使用する実際のデフォルトの文字セットとは異なると言われました。Javaは2セットのデフォルト文字セットを保持しているようです。誰かがこの問題について何か洞察を持っていますか? フェイルケースを1つ再現することができました。これは一種のユーザーエラーですが、他のすべての問題の根本的な原因が明らかになる可能性があります。これがコードです public class CharSetTest { public static void main(String[] args) { System.out.println("Default Charset=" + Charset.defaultCharset()); System.setProperty("file.encoding", "Latin-1"); System.out.println("file.encoding=" + System.getProperty("file.encoding")); System.out.println("Default Charset=" + Charset.defaultCharset()); System.out.println("Default Charset in Use=" + getDefaultCharSet()); } private static String getDefaultCharSet() { OutputStreamWriter writer = new OutputStreamWriter(new ByteArrayOutputStream()); String enc = writer.getEncoding(); return enc; } …

6
CDIの@ApplicationScopedスコープと@Singletonスコープの違いは何ですか?
CDIには、@ApplicationScopedおよび(javax.inject)@Singleton疑似スコープがあります。それらの違いは何ですか?@ApplicationScopedプロキシされているという事実に加えて、プロキシされて@Singletonいません。 @SingletonBeanをに変更できます@ApplicationScopedか?@ApplicationScopedBeanは2つ(またはそれ以上)のインスタンスを持つことができますか?
92 java  scope  cdi 

6
Java FutureをCompletableFutureに変換する
Java 8ではCompletableFuture、構成可能なFutureの新しい実装であるが導入されています(thenXxxメソッドの束が含まれています)。これを排他的に使用したいのですが、使用したいライブラリの多くは、合成できないものだけを返しますFutureインスタンスます。 返されたFutureインスタンスをの中にラップして、CompleteableFutureそれを作成できるようにする方法はありますか?
92 java  java-8  future 

2
JavaでのMANIFEST.MFファイルの使用
JAR、WAR、およびEARファイルにはMANIFEST.MF、META-INFフォルダーの下にファイルがあることに気付きました。 MANIFEST.MFファイルの用途は何ですか?このファイルで指定できるものは何ですか?
92 java  manifest.mf 

4
クラスがJavaでインターフェースを実装するかどうかを判別する
Classオブジェクトがあります。Classオブジェクトが表すタイプが特定のインターフェイスを実装しているかどうかを確認したいと思います。どうすればこれを達成できるのだろうかと思っていました。 私は次のコードを持っています。基本的には、指定されたパッケージ内のすべてのクラスの配列を取得します。次に、配列を調べて、インターフェイスを実装するClassオブジェクトをマップに追加します。問題は、isInstance()オブジェクトをパラメータとして受け取ることです。インターフェイスをインスタンス化できません。だから私はこれに少し戸惑っています。何か案は? Class[] classes = ClassUtils.getClasses(handlersPackage); for(Class clazz : classes) { if(clazz.isInstance(/*Some object*/)) //Need something in this if statement { retVal.put(clazz.getSimpleName(), clazz); } }
92 java  reflection 

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