Bonjour,
Débutante avec Spring, je me lance dans une application de jeu type Cluedo, mon projet avance bien mais je n'arrive pas a savoir comment faire pour que la partie se relance avec de nouvelles valeurs dans mes beans?
Voila ma classe "random" avec mes beans:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
@Configuration
 
public class RandomStart {
 
	 @Autowired
	 private   PieceRepository pieceRepository ;
 
	 @Autowired
	 private SuspectRepository suspectRepository;
 
	 @Autowired
	 private ArmeRepository armeRepository;
 
 
@Bean (name = "randomPiece")
 Piece randomPiece() {
	  Piece randomPiece = pieceRepository.findRandomPiece();
    	//System.out.println(randomPiece);
		return randomPiece;
	}
@Bean (name = "randomSuspect")
	Suspect randomSuspect() {
		Suspect randomSuspect = suspectRepository.findRandomSuspect();
		//System.out.println(randomSuspect);
		return randomSuspect;
	}
@Bean (name = "randomArme")
	Arme randomArme() {
		Arme randomArme = armeRepository.findRandomArme();
		//System.out.println(randomArme);
		return randomArme;
	}
Donc en début de partie, les randoms sont sélectionnés, ensuite les joueurs choisissent un lieu, un suspect et une arme (choix stockés dans un local storage), une fois tout trouvé on passe sur une page récap.
C'est a ce moment la que je bloque, en cliquant sur le bouton retour à l'accueil je vide mon local storage et j'aimerai réinitialiser les randoms pour une nouvelle partie. Mais comment procéder? J'ai lu pas mal de truc : creer un bean.xml, annotations, rajouter dans mon run "@Override
public void run(String... args) throws Exception "... et j'ai du mal a m'y retrouver.
J'arrive a récupérer mon random dans mon controller accueil via Application context et je me dit que c'est certainement a ce niveau qu'il faut ajouter une methode ou un appel mais je sèche:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
@Controller
public class AccueilController {
	@Autowired
	private ApplicationContext appContext;
 
	@GetMapping("/")
	public String accueil() {
		Piece beanPiece = appContext.getBean("randomPiece",Piece.class);
 
 
		System.out.println(beanPiece);
		return "accueil";
	}
Je ne demande pas forcement du code mais au moins une façon de procéder, parce que peut-être la façon dont j'ai fait mes randoms n'est pas approprié.
Merci de votre aide.