Defiantly no. In realtà dovresti considerare il pattern DAO (Data Access Object).
Le classi modello sono responsabili solo del trasferimento di informazioni da un'istanza logica a un'altra e devono contenere solo metodi geter e setter.
classi DAO sono responsabili per la conservazione o il recupero di aggiornamento Modulo di qualche fonte dei dati (database) .Qui è esempio di modello DAO:
public class BookDAO {
private PreparedStatement saveStmt;
private PreparedStatement loadStmt;
public DBBookDAO(String url, String user, String pw) {
Connection con = DriverManager.getConnection(url, user, pw);
saveStmt = con.prepareStatement("INSERT INTO books(isbn, title, author) "
+"VALUES (?, ?, ?)");
loadStmt = con.prepareStatement("SELECT isbn, title, author FROM books "
+"WHERE isbn = ?");
}
public Book loadBook(String isbn) {
Book b = new Book();
loadStmt.setString(1, isbn);
ResultSet result = loadStmt.executeQuery();
if (!result.next()) return null;
b.setIsbn(result.getString("isbn"));
b.setTitle(result.getString("title"));
b.setAuthor(result.getString("author"));
return b;
}
public void saveBook(Book b) {
saveStmt.setString(1, b.getIsbn());
saveStmt.setString(2, b.getTitle());
saveStmt.setString(3, b.getAuthor());
saveStmt.executeUpdate();
}
}
che dipende in larga misura il quadro che si usa. – maba
Alcune discussioni qui - http://stackoverflow.com/questions/538870/java-static-methods- best-practice. Non userei i metodi statici personalmente, poiché sono spesso difficili da testare. Inoltre, se l'app supporta la multi-tenancy (ovvero due o più gruppi distinti di utenti), ciò potrebbe risultare molto più difficile. –
A mio modesto parere, il pattern MVC viene utilizzato per portare avanti il concetto di incapsulamento, nel senso che nessun'altra classe deve accedere ai suoi 'membri dati 'direttamente e ad alcuni' funzioni membro '. Quindi immagino che la creazione di metodi di istanza, dovrebbe essere la prima scelta ... :-) –