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

プログラミングでは、注釈を使用して、型システムでは表現できない情報をコード要素に追加します。


4
Spring ControllerのInitメソッド(アノテーション版)
コントローラを新しいアノテーションバージョンに変換しています。以前のバージョンでは、springmvc-servlet.xmlでinitメソッドを指定するために使用しました: <beans> <bean id="myBean" class="..." init-method="init"/> </beans> アノテーションバージョンを使用してinitメソッドを指定するにはどうすればよいですか?

10
MYSQL自動インクリメントフィールドにJPAアノテーションを付ける方法
端的に言うと、問題はオブジェクトオペレーターをMySQL DBに保存することです。保存する前に、このテーブルから選択してみます。それが機能するので、dbへの接続も同様です。 ここに私のOperatorオブジェクトがあります: @Entity public class Operator{ @Id @GeneratedValue private Long id; private String username; private String password; private Integer active; //Getters and setters... } 保存するには、JPA EntityManagerのpersistメソッドを使用します。 ここにいくつかのログがあります: Hibernate: insert into Operator (active, password, username, id) values (?, ?, ?, ?) com.mysql.jdbc.JDBC4PreparedStatement@15724a0: insert into Operator (active,password, username, id) values (0, …
105 java  mysql  orm  jpa  annotations 

3
Android Studioエラーの意味:アノテーションが付けられていないパラメーターは@NonNullパラメーターをオーバーライドします
Android Studioを試しています。新しいプロジェクトを作成し、デフォルトのonSaveInstanceStateメソッドをcreate MyActivityクラスに追加すると、コードをGitにコミットしようとすると、理解できない奇妙なエラーが発生します。コードはこれです: 私が得るエラーはこれです: メソッドシグネチャをに変更しようとするとprotected void onSaveInstanceState(@NotNull Bundle outState)、IDEは、シンボルを解決できないことを通知しますNotNull。 警告を取り除くには何をする必要がありますか?


9
Javaで注釈の値を読み取ることは可能ですか?
これは私のコードです: @Column(columnName="firstname") private String firstName; @Column(columnName="lastname") private String lastName; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } 別のクラスでアノテーション@Column(columnName = "xyz123")の値を読み取ることはできますか?

3
欠落したアノテーションが実行時にClassNotFoundExceptionを引き起こさないのはなぜですか?
次のコードを検討してください。 A.java: import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) @interface A{} C.java: import java.util.*; @A public class C { public static void main(String[] args){ System.out.println(Arrays.toString(C.class.getAnnotations())); } } コンパイルと実行は期待どおりに機能します。 $ javac *.java $ java -cp . C [@A()] しかし、これを考慮してください: $ rm A.class $ java -cp . C [] が欠落しているClassNotFoundExceptionので、それがをスローすると予想していまし@Aた。しかし、代わりに、それは静かに注釈を落とします。 この動作はJLSのどこかに記載されていますか、それともSunのJVMの癖ですか?その理由は何ですか? javax.annotation.Nonnull(@Retention(CLASS)とにかくそうであるはずだったように)のようなものには便利なようですが、他の多くの注釈では、実行時にさまざまな悪いことが発生する可能性があるようです。
91 java  annotations 

5
@Transactionalアノテーションはどこに置くべきですか:インターフェース定義または実装クラスですか?
コードのタイトルからの質問: @Transactional (readonly = true) public interface FooService { void doSmth (); } public class FooServiceImpl implements FooService { ... } vs public interface FooService { void doSmth (); } @Transactional (readonly = true) public class FooServiceImpl implements FooService { ... }

6
@Overrideのような注釈は、Javaの内部でどのように機能しますか?
誰かがJavaの内部で注釈がどのように機能するかを私に説明できますか? Javaでjava.lang.annotationライブラリを使用してカスタムアノテーションを作成する方法を知っています。しかし、たとえば、@ Overrideアノテーションなど、内部でどのように機能するかはまだわかりません。 どなたか詳しくご説明いただければ幸いです。
90 java  annotations 


16
@ Autowired-依存関係に適したタイプのBeanが見つかりません
SpringとHibernateを使用して、エンティティ、サービス、およびサービスのJUnitテストを作成することからプロジェクトを開始しました。これはすべてうまく機能します。次に、さまざまなステップバイステップのチュートリアルを使用してこのWebアプリケーションを作成するためにspring-mvcを追加しましたが、@ Autowiredアノテーションを使用してコントローラーを作成しようとすると、デプロイ中にGlassfishからエラーが発生します。どういうわけかSpringは私のサービスを認識していないと思いますが、何度も試みてもまだ処理できません。 を使用したサービスのテスト @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"classpath:/beans.xml"}) そして @Autowired MailManager mailManager; 正しく動作します。 @Autowiredのないコントローラーも、問題なくWebブラウザーでプロジェクトを開くことができます。 /src/main/resources/beans.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd http://java.sun.com/xml/ns/persistence/orm http://java.sun.com/xml/ns/persistence/orm_2_0.xsd"> <context:property-placeholder location="jdbc.properties" /> <context:component-scan base-package="pl.com.radzikowski.webmail"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan> <!--<context:component-scan …

8
@ComponentScanアノテーションを使用して複数のパスをスキャンする方法は?
Spring 3.1を使用していて、@Configurationand@ComponentScan属性を使用してアプリケーションをブートストラップしています。 実際のスタートは new AnnotationConfigApplicationContext(MyRootConfigurationClass.class); この構成クラスには注釈が付けられています @Configuration @ComponentScan("com.my.package") public class MyRootConfigurationClass これは問題なく動作します。ただし、スキャンするパッケージについてより具体的にしたいので、試してみました。 @Configuration @ComponentScan("com.my.package.first,com.my.package.second") public class MyRootConfigurationClass ただし、これは失敗し、@Component注釈を使用して指定されたコンポーネントが見つからないというエラーが表示されます。 私が求めていることを行う正しい方法は何ですか? ありがとう

8
1つの要素に同じタイプの複数の注釈がありますか?
1つの要素(この場合はメソッド)で同じタイプの2つ以上の注釈を平手打ちしようとしています。これが私が作業しているおおよそのコードです: public class Dupe { public @interface Foo { String bar(); } @Foo(bar="one") @Foo(bar="two") public void haha() {} } 上記をコンパイルすると、javacはアノテーションの重複について文句を言います。 max @ upsight:〜/ work / daybreak $ javac Dupe.java Dupe.java:5:アノテーションが重複しています このような注釈を繰り返すことは単に不可能ですか?経験的に言えば、上記の@Fooの2つのインスタンスは、内容が異なるため違いませんか? 上記が不可能な場合、考えられる回避策は何ですか? 更新:ユースケースについて説明するように求められました。いきます 私は、MongoDBなどのドキュメントストアにPOJOを「マップ」するための、構文の糖度の高いメカニズムを構築しています。インデックスをゲッターまたはセッターの注釈として指定できるようにしたいのですが。これは不自然な例です: public class Employee { private List<Project> projects; @Index(expr = "project.client_id") @Index(expr = "project.start_date") public List<Project> getProjects() …
88 java  annotations 

2
Guiceのインジェクターから注釈付きインスタンスを取得するにはどうすればよいですか?
モジュールがあるとしましょう: Module extends AbstractModule { @Override protected void configure() { bind(String.class). annotatedWith(Names.named("annotation")). toInstance("DELIRIOUS"); } } モジュールをテストして、クラスとフィールドがなくても、インジェクターから直接値を取得して、String注釈が付けられたフィールドに正しい値を挿入するかどうかを確認したいと思いますNames.named("annotation")。 @Test public void test() { Injector injector = Guice.createInjector(new Module()); // THIS IS NOT GOING TO WORK! String delirious = injector.getInstance(String.class); assertThat(delirious, IsEqual.equalTo("DELIRIOUS"); }

4
Androidレトロフィットパラメータ化@ヘッダー
OAuthを使用していますが、リクエストを行うたびにヘッダーにOAuthトークンを挿入する必要があります。@Headerアノテーションが表示されますが、実行時に渡すことができるようにパラメーター化する方法はありますか? これがコンセプトです @Header({Authorization:'OAuth {var}', api_version={var} }) ランタイムでそれらを渡すことができますか? @GET("/users") void getUsers( @Header("Authorization") String auth, @Header("X-Api-Version") String version, Callback<User> callback )

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