Сохранение данных из XML в список с помощью Spring

У меня есть класс MusicPlayer, у него есть список Music который сохраняем в себе те песни, которые выбрал пользователь(это просто тест с помощью System.out.println()), допустим пользователь выбрал песни(Есть классы которые реализуют интерфейс Music, эти классы обычные жанры: ClassicalMusic, RockMusic, RapMusic) и они передались в xml и начали воспроизводить эти песни с помощью playMusic(), как мне это сделать с помощью xml? Вот код самого MusicPlayer():

package org.example;

import java.util.ArrayList;
import java.util.List;

public class MusicPlayer {
    private List<Music> musics = new ArrayList<>(); // жанр песни 
    private String name; // название песни
    private int value; // громкость песни
    
    
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getValue() {
        return value;
    }

    public void setValue(int value) {
        this.value = value;
    }

    //IoC   
    public MusicPlayer(Music music) {
        musics.add(music);
    }
    
    public MusicPlayer() {}
    
    public void setMusic(Music music) {
        musics.add(music);
    }
    
    public void playMusic() {
        for (int i = 0; i < musics.size(); i++) {
            System.out.println("Playing: " + musics.get(i).getSong());
        }
    }
}

Вот сами жанры песни:

package org.example;

public class RockMusic implements Music{

    @Override
    public String getSong() {
        return "Rock music";
    }

}

package org.example;

public class ClassicalMusic implements Music {

    @Override
    public String getSong() {
        return "Classical music";
    }

}
package org.example;

public class Rap implements Music{

    @Override
    public String getSong() {
        return "Rap music";
    }

}

Допустим пользователь выбрал все три песни, как мне сохранить эти данные через XML в list а потом через main воспроизвести их? Вот код main:

package org.example;


import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestSpring {
    public static void main(String[] args) {
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("test.xml");
        
        MusicPlayer musicPlayer = context.getBean("musicPlayer", MusicPlayer.class);
        musicPlayer.playMusic();

        
        context.close(); 
        
    }

}

Вот сам 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:context="http://www.springframework.org/schema/context"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">

        <bean id="musicBean" class="org.example.Rap"></bean>
        <bean id="musicBeanTwo" class="org.example.ClassicalMusic"></bean>
        <bean id="musicBeanThree" class="org.example.RockMusic"></bean>
        
        <bean id="musicPlayer"
              class="org.example.MusicPlayer">
              <util:list id="listMusic" value-type="org.example.MusicPlayer">
                <ref been="musicBean"/>
                <ref been="musicBeanTwo"/>
                <ref been="musicBeanThree"/>
              </util:list>
        </bean>

</beans>

Ответы (0 шт):