So ich hab mal rumprobiert und zu mindest ist nix mehr rot :'D
Könnte das so passen?

Java:
package RepositoryClasses;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.EnumMap;
import java.util.List;
import ObjectClasses.Branch;
public class BranchRepository{
public enum Location{
DOMESTIC, FOREIGN,
DOMESTIC_UPDATE, FOREIGN_UPDATE,
DOMESTIC_INSERT,FOREIGN_INSERT
}
private static final EnumMap<Location, String> queries = new EnumMap<>(Location.class);
static{
queries.put(Location.DOMESTIC, "SELECT * FROM Filialen_Deutschland");
queries.put(Location.FOREIGN, "SELECT * FROM Filialen_Ausland");
queries.put(Location.DOMESTIC_UPDATE, "UPDATE Filialen_Deutschland SET id=?, LABEL=?, STRASZE=?, PLZ_ORT=?, ORT=?,TEL_LAND=?, " +
"TEL_ANFANG_INT=?, TEL_ANFANG_TXT=?, TEL_ENDE_DEFAULT=?, FAX_ANFANG_TXT=?, FAX_ENDE_TXT=? WHERE id=?");
queries.put(Location.FOREIGN_UPDATE, "UPDATE Filialen_Ausland SET id=?, LABEL=?, STRASZE=?, PLZ_ORT=?, ORT=?,TEL_LAND=?, " +
"TEL_ANFANG_INT=?, TEL_ANFANG_TXT=?, TEL_ENDE_DEFAULT=?, FAX_ANFANG_TXT=?, FAX_ENDE_TXT=? WHERE id=?");
queries.put(Location.DOMESTIC_INSERT, "INSERT INTO Filialen_Deutschland (id,LABEL,STRASZE,PLZ_ORT,ORT,TEL_LAND,TEL_ANFANG_INT," +
"TEL_ANFANG_TXT,TEL_ENDE_DEFAULT,FAX_ANFANG_TXT,FAX_ENDE_TXT) VALUES(?,?,?,?,?,?,?,?,?,?,?)");
queries.put(Location.DOMESTIC_INSERT, "INSERT INTO Filialen_Deutschland (id,LABEL,STRASZE,PLZ_ORT,ORT,TEL_LAND,TEL_ANFANG_INT," +
"TEL_ANFANG_TXT,TEL_ENDE_DEFAULT,FAX_ANFANG_TXT,FAX_ENDE_TXT) VALUES(?,?,?,?,?,?,?,?,?,?,?)");
}
protected Branch branch;
private Connection conn;
public BranchRepository(){}
public BranchRepository (Connection conn){
this.conn = conn;
}
public Branch findNames(Location where) throws SQLException{
String sql = queries.get(where);
try(PreparedStatement pst = conn.prepareStatement(sql)){
try(ResultSet rs = pst.executeQuery()){
branch = new Branch();
while(rs.next()){
branch.setLabel((rs.getString("Label")));
}
return branch;
}
}
}
public void updateBranch(Location where, int f1, String f2, String f3, String f4, String f5, int f6, long f7, String f8,
String f9, String f10, String f11) throws SQLException{
String sql = queries.get(where);
try (PreparedStatement pst = conn.prepareStatement(sql)) {
branch = new Branch(f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11);
pst.setInt(1, branch.getId()); //id
pst.setString(2, branch.getLabel()); //LABEL
pst.setString(3, branch.getStrasze()); //STRASZE
pst.setString(4, branch.getPlzort()); //PLZ_ORT
pst.setString(5, branch.getOrt()); //ORT
pst.setInt(6, branch.getVorwahl()); //TEL_LAND
pst.setLong(7, branch.getTelStartNum()); //TEL_ANFANG_INT
pst.setString(8, branch.getFaxStartTxt()); //TEL_ANFANG_TXT
if (branch.getTelEndDefault().equals("")) {
pst.setObject(9, null);
} else {
pst.setInt(9, Integer.parseInt(branch.getTelEndDefault())); //TEL_ENDE_DEFAULT
}
pst.setString(10, branch.getFaxStartTxt()); //FAX_ANFANG_TXT
if (branch.getFaxEndTxt().equals("")) {
pst.setObject(11, null);
} else {
pst.setString(11, branch.getFaxEndTxt()); //FAX_ENDE_TXT
}
pst.setInt(12, branch.getId()); //id
pst.executeUpdate();
}
}
public void insertBranch(Location where, int f1, String f2, String f3, String f4, String f5, int f6, long f7, String f8,
String f9, String f10, String f11) throws SQLException{
String sql = queries.get(where);
try (PreparedStatement pst = conn.prepareStatement(sql)) {
branch = new Branch(f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11);
pst.setInt(1, branch.getId()); //id
pst.setString(2, branch.getLabel()); //LABEL
pst.setString(3, branch.getStrasze()); //STRASZE
pst.setString(4, branch.getPlzort()); //PLZ_ORT
pst.setString(5, branch.getOrt()); //ORT
pst.setInt(6, branch.getVorwahl()); //TEL_LAND
pst.setLong(7, branch.getTelStartNum()); //TEL_ANFANG_INT
pst.setString(8, branch.getFaxStartTxt()); //TEL_ANFANG_TXT
if (branch.getTelEndDefault().equals("")) {
pst.setObject(9, null);
} else {
pst.setInt(9, Integer.parseInt(branch.getTelEndDefault())); //TEL_ENDE_DEFAULT
}
pst.setString(10, branch.getFaxStartTxt()); //FAX_ANFANG_TXT
if (branch.getFaxEndTxt().equals("")) {
pst.setObject(11, null);
} else {
pst.setString(11, branch.getFaxEndTxt()); //FAX_ENDE_TXT
}
pst.execute();
}
}
}
Könnte das so passen?
Ok, das verstehe ich nichtLOL, nein ich meinte nicht die IDE Eclipse sondern die Bibliothek "Eclipselink" der Eclipse Foundation. Eclipselink ist die Referenzimplementierung der JPA (Java Persistence API). Es handelt sich um einen Object-Relational-Mapper (ORM).
Zuletzt bearbeitet: