# Brauche Hilfe, 3 Schichten Architektur



## Leviathan X (6. September 2005)

Hallo, hab leider nichts gefunden im forum was mir weiter geholfen hat.

Ich bin in der Ausbildung und ich brauche dringend irgendwelche Referenzen/tutorials
über diese art der programmierung von anwendungen.
(DB<- PLSQL, Appliction Server <- jave, Web Browser<- nur graph. Ansicht).

Mein Problem ist haubtsächlich die bei Java
ich kenn mich damit so gut wie überhaupt nicht aus.
Habe zwar JSP hinbekommen, alllerdings sitz ich beim code auf der Leitung, 
da ich nicht weis wie ich die daten aus der datenbank auslesen kann.

Wäre euch sehr verbunden, wenn mir einer erklären könnte, wie ich an die Daten aus der Datenbank herankomme über den code und wie ich die JSP objekte damit befüllen kann
bzw. überhaupt damit dann arbeiten kann.
Verbindung bekomm ich zwar über Connection Manager hin, allerdings weis ich dann nicht weiter...

Über ein Einsteiger Tutorial das in diese Richtung geht würd ich mich auch riesig freun.
Alles was ich gefunden hab, war komplett in englisch, oder einfach zu schwer.

Danke  schon mal im vorraus.

Grüße


PS: Benutze den JDeveloper mit einer Oracle Datenbank


----------



## Snape (7. September 2005)

Moin,
dieses Forum verfügt über eine Suchfunktion.


----------



## Leviathan X (8. September 2005)

ui bist du schlau...

wenn ich über die suchfunktion entwas gefunden hätte was mir weiter hilft
dann hätt ich auch nichts mehr gepostet.

Mein Problem war das das einzig brauchbare der link zu Sescom war und ich bin mir nicht mal sicher, ob ich den hier gefunden hab.

Für direkt PL/SQL hab ich keine gescheiten tutorial seiten hir im forum gesehn!
Und diese 3 Schichten Architektur hab ich auch keine Erklärung entdeckt.


Aber kannst mir ja gerne sagen wo das hier stehen soll dann entschuldige ich mich auch evlt.


----------



## Thomas Darimont (8. September 2005)

Hallo!



> da ich nicht weis wie ich die daten aus der datenbank auslesen kann.


 Das Stichwort dazu heißt JDBC... ;-)
http://www.tutorials.de/search.php?searchid=383955

 Gruß tom


----------



## torsch2711 (8. September 2005)

Leviathan X hat gesagt.:
			
		

> ui bist du schlau...
> 
> ...
> 
> Aber kannst mir ja gerne sagen wo das hier stehen soll dann entschuldige ich mich auch evlt.


 

  Hallo,

  hier gibts leute die dir gerne und vor allem aus freien stücken helfen wollen.
  Ich finde es nicht besonders freundlich, diesen solch kommentare zu geben.

  Wie gesagt, wenn Du die Suchfunktion "richtig" genutzt hättest, wärst du auch erfolgreicher gewesen.

  Also bitte, auf solche kommentare kann jeder hier verzichten.


  Gruss,

  Torsch


 P.S.: Wenn du die 2 Schlagwörter deiner frage: Java und datenbanken verwendet hättest, wärst du ws. auch weitergekommen


----------



## Konobi (9. September 2005)

Wenn dir das Weiterhilft. Den Code kannst du aber nicht ganz so übernehmen.


```
public	Vector	getDatensatz( Connection p_DbConnection, String p_TabellenName, Vector p_DBWerte, String p_select) {
		PreparedStatement	preparedQuery;
		ResultSet			resultQuery;
		ResultSetMetaData	datensatzMeta ;
		int	I ;
		int	Spalten ;
		String  where="";
		String	sqlStatement = new String("");
		
		//where = DBUtils.getSelect(p_DBWerte, ",");  // Bitte auser acht lassen
		//where = DBUtils.getWhereString(where, orderby, ",", ",", "'", "and", ""); // Bitte auser acht lassen
		
		sqlStatement = "select " + select + " from " + p_TabellenName +" where " + where + 
			"order by " + orderby;		
	        //oder man kann sein Statement auch selbst basteln

               //z.B.       sqlStatment = "select * from benutzername@tabellenname where Spalte1="" and Spalte2="" order by Spalte1;

				
		datensatz_Aktuell = new Vector() ;
		datensatz_Vorher = new Vector() ;
		datensatz_Spaltenname = new Vector() ; 
		datensatz_Spaltentyp = new Vector() ;
		datensatz_Spaltentypname = new Vector() ;
		datensatz_Spaltengroesse = new Vector() ;
		
		try {
			preparedQuery = p_DbConnection.prepareStatement(sqlStatement) ;
			resultQuery = preparedQuery.executeQuery();
			datensatzMeta = resultQuery.getMetaData();
			Spalten = datensatzMeta.getColumnCount();
				for ( I = 1 ; I <= Spalten ; I ++ ) {
				datensatz_Spaltenname.add( datensatzMeta.getColumnName(I) ) ;
				datensatz_Spaltentyp.add( "" + datensatzMeta.getColumnType(I) ) ;
				datensatz_Spaltentypname.add( datensatzMeta.getColumnTypeName(I) ) ;
				datensatz_Spaltengroesse.add( "" + datensatzMeta.getPrecision(I) ) ;
				}
			while ( resultQuery.next() ) {
				for ( I = 1 ; I <= Spalten ; I ++ ) {
resultQuery.getString( I) ) + "<") ;
					datensatz_Aktuell.add( String.valueOf( resultQuery.getString( I) ) ) ;
					datensatz_Vorher.add( String.valueOf( resultQuery.getString( I) ) ) ;
				}
			}
			preparedQuery.close( ) ;
			resultQuery.close( ) ;
		} catch ( Exception e ) {
			//Protokollausgabe			}
	return datensatz_Aktuell ;
}
```

mfg

Konobi


----------

