Added PDF for Ofili
parent
a7ef4b6a90
commit
3fadff8492
|
@ -1,6 +1,5 @@
|
|||
.DS_Store
|
||||
.vscode
|
||||
*.pdf
|
||||
*.toc
|
||||
*.xml
|
||||
*.bcf
|
||||
|
@ -12,4 +11,4 @@
|
|||
*.out
|
||||
*.gz
|
||||
*.lot
|
||||
_minted*
|
||||
_minted*
|
||||
|
|
Binary file not shown.
Binary file not shown.
46
pse.tex
46
pse.tex
|
@ -116,7 +116,8 @@ public class DocumentDAOImpl implements DocumentDAO, Serializable {
|
|||
\end{itemize}
|
||||
\begin{figure}[!htp]
|
||||
\centering
|
||||
\includegraphics[width=0.8\textwidth]{pics/sl_pat1.jpg}
|
||||
\includegraphics[width=0.9\textwidth]{pics/sl_pat1.jpg}
|
||||
\includegraphics[width=0.7\textwidth]{pics/service.png}
|
||||
\end{figure}
|
||||
\begin{minted}[xleftmargin=\parindent,linenos,breaklines=true]{java}
|
||||
@Local(DocumentService.class)
|
||||
|
@ -230,26 +231,18 @@ MVC unterteilt eine interaktive Applikation in drei Teile: Model, View und Contr
|
|||
\begin{itemize}
|
||||
\item Es befinden sich Teile im Domain und Data Source Layer.
|
||||
\item Das Model enthält die Kernfunktionalität und Daten. (z.B.: Datenbankzugriff)
|
||||
\item Im Projekt ... % TODO
|
||||
\item Im Projekt wird dies durch die Ordner \textit{service} und \textit{data} repräsentiert
|
||||
\end{itemize}
|
||||
\subsubsection{View}
|
||||
\begin{itemize}
|
||||
\item Im Projekt im Ordner WebApp zu finden.
|
||||
\item Im Projekt im Ordner \textit{webapp} zu finden.
|
||||
\item Enthält im Projekt xhtml Dateien zur Darstellung und User Interaktion
|
||||
\end{itemize}
|
||||
\subsubsection{Controller}
|
||||
\begin{itemize}
|
||||
\item Im Projekt sind Controllerklassen im Ordner web zu finden.
|
||||
\item Im Projekt sind Controllerklassen im Ordner \textit{web} zu finden.
|
||||
\item Sie enthalten die Logik und behandeln Benutzereingaben
|
||||
\end{itemize}
|
||||
\subsection{Nenne die Konsequenzen der Anwendung}
|
||||
\begin{itemize}
|
||||
\item Visualisierung abhängig vom Model - nicht umgekehrt
|
||||
\item verschiedene Darstellungen möglich
|
||||
\item einfaches Testen der Domain-Logik
|
||||
\item gute Strukturierung
|
||||
\item View wird leichter austausch bzw. änderbar
|
||||
\end{itemize}
|
||||
\section{Front Controller}
|
||||
\subsection{Erkläre die Funktion + Skizze}
|
||||
\begin{itemize}
|
||||
|
@ -263,16 +256,29 @@ MVC unterteilt eine interaktive Applikation in drei Teile: Model, View und Contr
|
|||
\item ConcreteCommand
|
||||
\end{itemize}
|
||||
\end{multicols}
|
||||
|
||||
\end{itemize}
|
||||
\subsection{Servlet}
|
||||
\begin{itemize}
|
||||
\item Im Projekt wurde der Front Controller in Form eines Servlet realisiert,
|
||||
\item die Einbindung erfolgt in der Konfigurationsdatei \textit{src/main/webapp/WEB-INF/web.xml},
|
||||
\item Servlet ist eine Java-API, welche auf einem Server betrieben wird,
|
||||
\item die Verarbeitung von Requests und Responses wird ermöglicht,
|
||||
\item JSF und JSP können darauf aufsetzen, in unserem Projekt wurde JSF verwendet
|
||||
\end{itemize}
|
||||
\subsubsection{Java Server Faces (JSF)}
|
||||
\begin{itemize}
|
||||
\item JSF basiert auf dem MVC-Pattern
|
||||
\item JSF-View-Code ist im Projekt im Ordner \textit{src/main/webapp/*} zu finden
|
||||
\item JSF-Logik befindet sich in den Java-Beans (im Projekt \textit{/src/main/java/at/fhj/swd/psoe/web/*})
|
||||
\item in unserem Projekt gibt es zu jeder xhtml-View eine eigene Controller-Klasse, welche dem ViewHelper-Pattern entspricht
|
||||
\item in unserem Projekt kommt PrimeFaces zum Einsatz (eine konkrete Implementierungsart von JSF => Einbindung in pom.xml)
|
||||
%TODO Toni fragen MVC-Aufteilung JSF
|
||||
\end{itemize}
|
||||
\begin{figure}[h!]
|
||||
\centering
|
||||
\includegraphics[width=0.5\textwidth]{pics/fc_pat.jpg}
|
||||
\end{figure}
|
||||
\subsection{Beschreibe ein konkretes Anwendungsbeispiel}
|
||||
\begin{itemize}
|
||||
\item Java Server Faces (bei Java Server Faces enthält das File zwar keinen Java Code, interagiert aber direkt mit Java Code einer Backing Bean)
|
||||
\item Im Projekt wurde der Front Controller in Form eines Servlet realisiert, dessen Einbindung in der Konfigurationsdatei "`web.xml"' erfolgt:
|
||||
\end{itemize}
|
||||
\begin{minted}[linenos,breaklines=true]{xml}
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
|
||||
|
@ -287,12 +293,6 @@ MVC unterteilt eine interaktive Applikation in drei Teile: Model, View und Contr
|
|||
<url-pattern>*.xhtml</url-pattern>
|
||||
</servlet-mapping>
|
||||
\end{minted}
|
||||
\subsection{Anwendung im Projekt}
|
||||
JavaServer Faces: mächtiges Framework, wo das MVC Pattern verwendet wird. Auf der einen Seite
|
||||
stehen die reinen Views (XHTML Seiten) und auf der anderen Seite Java Beans (Java Klassen), die als
|
||||
View Helper fungieren können. Beispiel: layered/MVC-JSF
|
||||
Primefaces ist eine konkrete Implementierung der JavaServer Faces (siehe POM.XML).
|
||||
|
||||
\begin{minted}[linenos,breaklines=true]{xml}
|
||||
<?xml version='1.0' encoding='UTF-8' ?>
|
||||
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue