Hallo an alle!
Ich habe eine Adobe Flex <- BlazeDS -> J2EE Anwendung mit einer Hibernate / MySQL Anbindung.
Nun habe ich zwei Tabellen: Projekt und Benutzer, die n:m in einer Zwischentabelle verknüpft sind: Projekt_Benutzer mit projektId und benutzerId.
In der Klasse Projekt ist eine List von benutzern, in der Klasse Person eine Liste von Projekten mit entsprechenden getter/setter-Methoden. Ich habe also eine bidirektionale Verbindung.
Nun habe ich aber zwei "Probleme":
Danke + Gruß PHANTOMIAS
Ich habe eine Adobe Flex <- BlazeDS -> J2EE Anwendung mit einer Hibernate / MySQL Anbindung.
Nun habe ich zwei Tabellen: Projekt und Benutzer, die n:m in einer Zwischentabelle verknüpft sind: Projekt_Benutzer mit projektId und benutzerId.
In der Klasse Projekt ist eine List von benutzern, in der Klasse Person eine Liste von Projekten mit entsprechenden getter/setter-Methoden. Ich habe also eine bidirektionale Verbindung.
Nun habe ich aber zwei "Probleme":
- Wie füge ich einen Benutzer einem Projekt hinzu? Schreibe ich dafür bei der Schnittstelle des Benutzers eine Methode addBenutzerToProject(Benutzer benutzer, int projektId)? Oder mace ich das in dem ich derArrayList von Projekten beim Benutzer eine add-Methode aufnehme auf Seiten des Frontend und ich dann ein updateBenutzer() aufrufe? Ich hoffe ihr versteht was ich meine... Und da ich das bidirektional habe, kann ich ja auch das Gleiche auf Seiten des Projekts machen. Da ist auch eine Liste von Benutzern, die müsste ich erweitern und dann das Projekt updaten. Wie geht man da i.A. vor?
- Ich schreibe JUnit-Tests. Nun habe ich je eine Schnittstelle für Projekt und Benutzer mit den Methoden: add, update, remove, getAll, findById. Nun kann ich diese mit einer JUnit-Testklasse ausführen lassen in der Art:
Java:IBenutzerService s = new BenutzerServiceImplementierung(); @Test public void testAddBenutzer() { testRemoveBenutzer(); for (int i=0; i < 5; i++) { Benutzer b = new Benutzer(); // setter-Methoden s.addBenutzer(b); } } // oder andere Methoden mit assertEquals-Abfrage.. So habe ich für eine Klasse, eine JUnit-Klasse. Wie kann ich denn aber nun die Zwischentabelle "Projekt_Benutzer" testen lassen? Dann muss ich ja erst Projekte anlegen lassen, und dann Benutzer, und die dann verbinden. Schreibe ich dann eine JUnit-Klasse, die dann beide Interface-Services verbindet? Oder rufe ich die Test-Methoden aus beiden Testklassen auf?
Danke + Gruß PHANTOMIAS