xml Konfigurationsdatei...

fenerli23

Erfahrenes Mitglied
hi,

habe bis heute in meiner Konfigurationsdatei folgendes gehabt:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>	

	<bean id="statm1" class="meinpackage.SqlStatements">
		<property name="id" value="1"/>
		<property name="statement" value="Select Last_Name, First_Name From employees"/>
	</bean>
</beans>

würde jetzt sehr gerne für die Spalten Last_Name und First_Name Parameter einfügen die ich dann selbst in meiner java klasse bestimmen kann...

Wie muss ich die Parameter hier setzen kann jemand behilflich sein ...?!
 
Wie wärs mit ner Property
Code:
List<String> columns

dann ginge folgendes:
Code:
<property name="statement" value="select [PLATZHALTER] from foobar" />
<property name="columns">
  <list>
    <value>column1</value>
    <value>column2</value>
  </list>
</property>
Den Platzhalter könnte man natürlich nach dem gleichen Prinzip konfigurieren...

Grundsätzlich brauchst du doch nur Setter für konfigurierbare Teile deiner Komponente... den Rest baust halt z.B. in der Callbackmethode von InitializingBean zusammen.

Gruß
Ollie
 
ich soll halt mehrere Statments in die datei speichen von zwei Spalten bis zu 11 Spalten somit hat dann auch jeder Statement einen Namen z.B statm1 bis statm10

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>	

	<bean id="statm1" class="meinpackage.SqlStatements">
		<property name="id" value="1"/>
		<property name="statement" value="Select {column1}, {column2} From employees"/>
	</bean>
</beans>

könnte man das auch irgendwie so realisieren..? Ich soll auch das Springframework anwenden ...
 
Was passt dir an meinem vorschlag nicht? Wer setzt denn dann column1 und column2?

Klar geht das so... muss hat den String dann parsen und die Platzhalter ersetzen...
 
Column1 und Column2 soll der Benutzer selbst bestimmen können per Eingabe in der Konsole ...

mit parsen meinst du doch üperprüfen ... d.h eine Schleife die im String die beiden variablen hier: column1 und column2 findet ... und danach per Eingabe diese setzt ...`?
 
ja wie ich zwei strings vergleiche ist mir ja bekannt.. kann auch ein Wort in einem String so umändern...

Code:
           String sSql = "Select column1 from employees";
           String help ="";
           help= sSql.replace("column1", "Last_Name");
           sSql = help;

das klappt ja auch aber wie ich in einem String nach einem bestimmten Wort suche ;( und danch erst die Änderung vornehme, hab das noch nie realisiert ...
 
Hä? es wird immer obskurer... Wieso musst du das denn? Lass doch den Benutzer die Werte angeben und ersetz die platzhalter danach. Fertig... wo ist das Problem?
 
Zurück