он хранит количество прочитанных элементов <Position>.

я очень большая строка XML. Я публикую здесь только часть объекта XML. Я пытаюсь преобразовать этот XML в объект Java. Мой первый вопрос: нужно ли мне создавать объект Java с полными значениями тегов XML или я могу создать объект Java только из выбранных внутренних объектов XML? Пожалуйста, найдите мою строку XML.

<DATAPACKET REQUEST-ID = "2">
<HEADER>
    <RESPONSE-TYPE CODE="1" DESCRIPTION="Response DataPacket"/>
    <SEARCH-RESULT-LIST>
        <SEARCH-RESULT-ITEM>
            <NAME MATCHED="TRUE"/>              
        </SEARCH-RESULT-ITEM>
    </SEARCH-RESULT-LIST>
</HEADER>
<BODY>
    <CONS_SCORE>
        <SCORE>0</SCORE>
        <REASON1>
            <HEADER></HEADER>
            <DESCRIPTION></DESCRIPTION>
        </REASON1>
        <REASON2>
            <HEADER></HEADER>
            <DESCRIPTION></DESCRIPTION>
        </REASON2>
        <REASON3>
            <HEADER></HEADER>
            <DESCRIPTION></DESCRIPTION>
        </REASON3>
        <REASON4>
            <HEADER></HEADER>
            <DESCRIPTION></DESCRIPTION>
        </REASON4>
    </CONS_SCORE>
    <CONSUMER_PROFILE2>
        <CONSUMER_DETAILS2>
            <RUID>1234</RUID>
            <NAME>ABC</NAME>
            <DATE_OF_BIRTH>1980-03-03T00:00:00+03:00</DATE_OF_BIRTH>
            <GENDER>001</GENDER>                
        </CONSUMER_DETAILS2>
        <ID_DETAILS2>
            <SLNO>1</SLNO>
            <SOURCE_ID>001</SOURCE_ID>
            <ID_VALUE>2806</ID_VALUE>
            <EXP_DATE>2018-07-13T00:00:00+03:00</EXP_DATE>              
        </ID_DETAILS2>
    </CONSUMER_PROFILE2>
    </BODY>
</DATAPACKET>

В приведенном выше объекте я хочу получить только объект CONSUMER_PROFILE2. Вот мой класс Dto

@XmlRootElement(name = "DATAPACKET")
public class ConsumerProfileDto {

private ConsumerDetailsDto CONSUMER_DETAILS2;

private IdDetailsDto ID_DETAILS2;

public ConsumerDetailsDto getCONSUMER_DETAILS2() {
    return CONSUMER_DETAILS2;
}

public void setCONSUMER_DETAILS2(ConsumerDetailsDto cONSUMER_DETAILS2) {
    CONSUMER_DETAILS2 = cONSUMER_DETAILS2;
}

public IdDetailsDto getID_DETAILS2() {
    return ID_DETAILS2;
}

public void setID_DETAILS2(IdDetailsDto iD_DETAILS2) {
    ID_DETAILS2 = iD_DETAILS2;
}
}
Класс CONSUMER_DETAILS2
@XmlRootElement(name = "CONSUMER_DETAILS2")
public class ConsumerDetailsDto {

private String NAME;
private String DATE_OF_BIRTH;
private String GENDER;
private String NATIONALITY;
public String getNAME() {
    return NAME;
}
public void setNAME(String nAME) {
    NAME = nAME;
}
public String getDATE_OF_BIRTH() {
    return DATE_OF_BIRTH;
}
public void setDATE_OF_BIRTH(String dATE_OF_BIRTH) {
    DATE_OF_BIRTH = dATE_OF_BIRTH;
}
public String getGENDER() {
    return GENDER;
}
public void setGENDER(String gENDER) {
    GENDER = gENDER;
}
public String getNATIONALITY() {
    return NATIONALITY;
}
public void setNATIONALITY(String nATIONALITY) {
    NATIONALITY = nATIONALITY;
}

Вот код демаршаллинга

JAXBContext jaxbContext = JAXBContext.newInstance(ConsumerProfileDto.class);  

    StringReader reader = new StringReader(responseXML);

    Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();  
    ConsumerDetailsDto que= (ConsumerDetailsDto) jaxbUnmarshaller.unmarshal(reader);  

    System.out.println(que.getDATE_OF_BIRTH());  
    System.out.println(que.getGENDER());;
    System.out.println(que.getNAME());
P.S

Я использовал DocumentBuilder, и я могу получить значения, используя его. Но я хочу извлечь с помощью Jaxb.

Ответы на вопрос(1)

Ваш ответ на вопрос