Added ability to retrieve a person
Signed-off-by: Jim Martens <github@2martens.de>
This commit is contained in:
@ -19,6 +19,7 @@ public class ORM {
|
|||||||
private Map<String, EstateAgent> _agentsUsername;
|
private Map<String, EstateAgent> _agentsUsername;
|
||||||
private Map<Integer, Estate> _estates;
|
private Map<Integer, Estate> _estates;
|
||||||
private Map<Integer, Contract> _contracts;
|
private Map<Integer, Contract> _contracts;
|
||||||
|
private Map<Integer, Person> _persons;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initializes the ORM.
|
* Initializes the ORM.
|
||||||
@ -30,6 +31,7 @@ public class ORM {
|
|||||||
_agentsUsername = new HashMap<>();
|
_agentsUsername = new HashMap<>();
|
||||||
_estates = new HashMap<>();
|
_estates = new HashMap<>();
|
||||||
_contracts = new HashMap<>();
|
_contracts = new HashMap<>();
|
||||||
|
_persons = new HashMap<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -359,6 +361,46 @@ public class ORM {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Loads the person with the given ID from database and returns the corresponding object.
|
||||||
|
*
|
||||||
|
* @param ID the ID of the person to load
|
||||||
|
* @return the Person or null if there is no such agent
|
||||||
|
*/
|
||||||
|
public Person getPerson(int ID) {
|
||||||
|
if (_persons.containsKey(ID)) {
|
||||||
|
return _persons.get(ID);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
// create query
|
||||||
|
String selectSQL = "SELECT * FROM PERSON WHERE ID = ?";
|
||||||
|
PreparedStatement pstmt = _connection.prepareStatement(selectSQL);
|
||||||
|
pstmt.setInt(1, ID);
|
||||||
|
ResultSet rs = pstmt.executeQuery();
|
||||||
|
Person person;
|
||||||
|
|
||||||
|
if (rs.next()) {
|
||||||
|
person = new Person();
|
||||||
|
person.setId(rs.getInt("ID"));
|
||||||
|
person.setFirstName(rs.getString("firstName"));
|
||||||
|
person.setName(rs.getString("name"));
|
||||||
|
person.setAddress(rs.getString("address"));
|
||||||
|
|
||||||
|
rs.close();
|
||||||
|
pstmt.close();
|
||||||
|
|
||||||
|
_persons.put(person.getId(), person);
|
||||||
|
return person;
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (SQLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loads the estate agent with the given username from database and returns the corresponding object,
|
* Loads the estate agent with the given username from database and returns the corresponding object,
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user