Musico
Informace
- Webová aplikace vytvořená pomocí technologií EJB a JSF, s úmyslem nasazení na Glassfish serveru.
- Psaná jako semestrální práce pro předmět X33EJA.
-
Účelem bylo osvojit si:
- Návrh doménového modelu a jeho implementaci (alespoň jedna vazba M:N)
- Použití JPA pro persistenci
- Transakce
- Použití EJB (stateless i statefull)
- Lokalizaci do více jazyků
- Autorizaci uživatelů, rozdělení do rolí a zabezpečení přístupu k business vrstvě
- Webové rozhrání (servlety, jsp, nebo web framework)
Zdrojové kódy
-
musico-ejb
- setup
-
src
- conf
-
java
-
cz.cvut.x33eja.macosond
-
business
- music
- user
- util
- persistence
-
business
-
cz.cvut.x33eja.macosond
- build.xml
-
musico-war
-
src
-
java
-
cz.cvut.x33eja.macosond.web
- back
- converter
- resources
-
cz.cvut.x33eja.macosond.web
-
java
-
web
- WEB-INF
-
clientside
-
css
-
img
-
css
- common
- error
- login
- member
- bandList.jsp
- eventList.jsp
- index.jsp
- logout.jsp
- redirect.jsp
- build.xml
-
src
-
src
- conf
- build.xml
1: package cz.cvut.x33eja.macosond.business.music; 2: 3: import cz.cvut.x33eja.macosond.persistence.entity.Album; 4: import cz.cvut.x33eja.macosond.persistence.entity.Song; 5: import java.util.Collection; 6: import javax.ejb.Local; 7: 8: /** 9: * @author Ondra 10: * @version 1.0 11: * @created 23-XII-2009 19:34:17 12: */ 13: @Local 14: public interface SongLocal 15: { 16: 17: /** 18: * Add new song 19: * @param song 20: */ 21: public void add(Song song); 22: 23: /** 24: * Save changed properties of existing song 25: * @param song 26: */ 27: public void edit(Song song); 28: 29: /** 30: * Remove existing song 31: * @param song 32: */ 33: public void delete(Song song); 34: 35: /** 36: * Get specific song by informations in entity 37: * @param song 38: */ 39: public Song get(Song song); 40: 41: /** 42: * Get specific song by id 43: * @param song 44: */ 45: public Song get(Integer SongID); 46: 47: public Collection<Song> getAll(); 48: 49: /** 50: * Find all songs contained in certain album 51: * @param album album which songs will be returned 52: */ 53: public Collection<Song> getByAlbum(Album album); 54: 55: }
