Made partly-complete Lat
This commit is contained in:
parent
afd057f2ea
commit
5cba3e969d
|
@ -243,6 +243,16 @@
|
|||
\item nimmt Komplexität
|
||||
\item steigert Effizienz da weniger Aufrufe über Remotegrenze
|
||||
\end{itemize}
|
||||
\subsection{Page-Object-Pattern}
|
||||
PageObjectPattern
|
||||
|
||||
HTML – wrappen mit JavaCode, um es zu manipulieren
|
||||
|
||||
GUI-Test-Klasse und Page-Object
|
||||
|
||||
Über die Page-Object-Klasse manipuliere ich das HTML-Dokument
|
||||
|
||||
Bei HTML-Änderung muss ich nur Page-Objekt ändern und ansonsten nichts angreifen (Verkapselung)
|
||||
\section{Remote}
|
||||
\subsection{Beschreibe die Unterschiede zwischen lokalem und Remote Interface Design}
|
||||
\begin{itemize}
|
||||
|
@ -325,6 +335,70 @@
|
|||
\item durch verschiedene Log-level können Logs gefiltert erstellt werden
|
||||
\item Layout für Ausgabe kann zentral definiert/geändert werden
|
||||
\end{itemize}
|
||||
\section{Durchlesen: JEE Web Tier}
|
||||
\section{Durchlesen: JavaServer Faces}
|
||||
\section{Durchlesen: Wildfly Overview}
|
||||
\section{Toni}
|
||||
\subsection{Annotationen}
|
||||
@Produces – kommt während deployment, markiert Factory Method damit man nicht direkt auf die Klasse zugreifen muss
|
||||
@Typed – zeigt die Vererbung Wieso bei uns allein stehend?
|
||||
@Named – Zeigt bei Mehrdeutigkeit das richtige Objekt mit dem Namen
|
||||
@Resource – fast wie Dependency Injection
|
||||
@Stateless – speichert den Client Status nicht
|
||||
@Entity – Data Access Layer
|
||||
@Table – Tabellenname im SQL
|
||||
@Column – SQL-Spalten nullable=false
|
||||
@OneToMany Beziehung
|
||||
@JoinColums – welche Spalten zusammen gehören FK
|
||||
@OneToMany FK auf anderen Seite
|
||||
@ApplicationScoped – lebt die ganze Applikation lang, wird einmal gemacht.
|
||||
@PersistenceContext – persistance.xml auslesen für Treiber und andere JPA Geschichten + Data Source. Entity Manager Injection.
|
||||
@Id – das ist die id
|
||||
@GeneratedValue – Wert kommt aus der DB
|
||||
@Local – Klasse für lokale Aufrufe.
|
||||
@Remote – interprozessaufrufe. RMI
|
||||
@ApplicationException – Rollback wenn so eine Exception kommt, Nachricht zum Client.
|
||||
\subsection{Patterns in Practice}
|
||||
Data Access Layer
|
||||
Entity – Java Repräsentation vom DB Entity
|
||||
DAO damit man auf die Entities zugreifen kann. DB abstrahieren. Methoden mit denen man auf die DB zugreifen kann.
|
||||
DAOImpl – Implementierung
|
||||
DAOImpl – DAOException fehlt. Schlecht weil Input wird nicht kontrolliert. EntityManager in try catch, sonst kann es kleschen. Zudätzlich in DaoException wrappen.
|
||||
AbstractEntity – hier wird die id gemanaged
|
||||
Service Layer
|
||||
DTO – Aufrufgeschw. Verringern, nicht jedes Objekt einzeln aufrufen, sondern mit einmal alle notwendigen Objekte.
|
||||
Mapper – von DTO in Entity und Entity ins DTO.
|
||||
|
||||
FrontController web.xml
|
||||
ViewHelper *ServiceImpl
|
||||
\subsection{Konfigurationsdateien (pom.xml), (persistence.xml) und noch a bissl mehr Scheiß}
|
||||
Resource plugin – klar für Ressourcen
|
||||
Wildfly – server
|
||||
Primeafce = jsf Framework
|
||||
Jacoco = test Coverage
|
||||
Slf4j = logger
|
||||
Jaxb – xml
|
||||
Cdi = context dependancy injection
|
||||
\subsection{Reihenfolge - Wildfly - Abfolge - einzelne Schritte}
|
||||
Reihenfolge:
|
||||
1. Compile
|
||||
2. Surefire (unitTests)
|
||||
3. Deploy (warplugin)
|
||||
4. Failsafe IT-test
|
||||
5. MVN site
|
||||
6. Gui test
|
||||
\subsection{Frageart Prüfung}
|
||||
Welche Fehler können bei Exception-Handling vorkommen in unserem Projekt?? – wie funktioniert es grundsätzlich in unserem Code
|
||||
|
||||
DocumentDAO – DocumentService – DocumentController – so sollte Exception-Handling implementiert warden
|
||||
|
||||
DAO wirft Exception – im ServiceLayer wird dies gefangen und der Stack-Trace wird im weggeloggt und eine benutzerfreundliche Fehlermeldung wird ausgegeben (Destructive Wrapping).
|
||||
|
||||
Alle Patterns, die vorkommen – praktische Beispiele aus dem Code
|
||||
|
||||
Was sind JavaBeans? Wie funktioniert das Konzept? Wie wird es genau implementiert?
|
||||
NamedBean, TypedBean etc.
|
||||
|
||||
DTO
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -17,11 +17,11 @@
|
|||
\title{Enterprise Software Architecture - FAQ Ausarbeitung}
|
||||
\maketitle
|
||||
\pagebreak
|
||||
% \tableofcontents
|
||||
% \pagebreak
|
||||
\tableofcontents
|
||||
\pagebreak
|
||||
|
||||
\include{parts/01_layered-arc}
|
||||
\include{parts/02_comp-based_arc}
|
||||
\include{parts/03_service-orientated_arc}
|
||||
%\include{parts/02_comp-based_arc}
|
||||
%\include{parts/03_service-orientated_arc}
|
||||
|
||||
\end{document}
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue