2011-03-30 4 views
1

Java에서 ASN.1 환경 인 "binary notes"로 작업하고 있습니다. 먼저 asn.1 시퀀스의 클래스를 손으로 생성했습니다. ASN.1/이진 노트의 특정 명칭?

@ASN1String(name = "", isUCS = false, stringType = UniversalTag.PrintableString) 
@ASN1Element(name = "firstName", isOptional = false, hasTag = false, hasDefaultValue = false) 
private String firstName = null; 

는 지금은 그 수단 "@"기호를 무엇인지 궁금? 이진 노트의 소스에서 힌트를 찾고 다음을 찾았습니다.

package org.bn.annotations; 
import java.lang.annotation.*; 

@Retention(RetentionPolicy.RUNTIME) 
@Target(ElementType.FIELD) 
public @interface ASN1String { 
    String name(); 
    boolean isUCS(); 
    int stringType(); 
} 

누군가 내가이 표기법을 설명 할 수 있습니까? 좋을 것입니다. 미리 감사드립니다.

nyyrikki 자바에서

답변

2

는 "@foo"는 주석이다. 특정 빌드 환경에서이를 해석하기위한 것입니다. 일반적으로 주석은 자바 코드 덩어리로 대체됩니다. 주석에

더 많은 정보 : http://download.oracle.com/javase/1.5.0/docs/guide/language/annotations.html

내 생각 엔 당신이 그 특정 주석이 무엇을 알고 ASN.1에 문서를 찾아 볼 필요가있다.

0

저는이 프레임 워크를 제작하고 있습니다. 이것은 일부 ASN.1 기능을 제어하는 ​​데 사용되는 필드/클래스에 대한 Java 주석 기능 (메타 정보)입니다. 샘플의 경우 ASN.1 바이트 스트림을 태그가없는 ASCII 문자열 (유니 코드 문자열이 아님)로 인코딩하는 문자열 필드이며 부모 구조 (ASN.1 시퀀스)는 선택 사항 (필수)이 아닙니다.

자세히 알아보기 시작하기 : http://en.wikipedia.org/wiki/ASN.1#Standards

관련 문제