Web MVC w Tibco BW
Proces aktywowany HTTP Receiverem jest kontrolerem do spółki z podprocesami obsługiwującymi konkretne akcje (które mogą być inicjowane formularzem HTML). Obsługa akcji ma blokowy szablon HTML, CSS umieszczony inline w znaczniku head. Aktywności SQL select można bardzo łatwo połączyć z generowaniem tabelek.
<table>
<xsl:for-each select="$JDBC-Query/resultSet/Record">
<xsl:if test="position()=1">
<tr>
<xsl:value-of select="tib:concat-sequence-format(for $elem in current()/* return concat('<td>',local-name($elem),'</td>'), '', 1)"/>
</tr>
</xsl:if>
<tr><xsl:value-of select="tib:concat-sequence-format(for $elem in current()/* return concat('<td>',$elem,'</td>',) '', 1)"/></tr>
</xsl:for-each>
</table>
Numer procesu Tibco BW obsługującego pierwszy request HTTP staje się identyfikatorem sesji, której dane trzymane są w ConcurrentHashMap. Obsługa żądania HTTP nie czeka na pobranie dużej ilości rekordów z bazy - aktywność JDBC jest asynchroniczna, wynik pobierany jest na zasadzie sprawdzenia dostępności danych w sesji. Przeładowanie strony powoduje pobranie danych z pamięci podręcznej sesji a nie bazy. Zoptymalizowane zapytanie SQL jest szybsze od Hibernate-a.
KISS me.


0 komentarze:
Prześlij komentarz