bir yöntem birden nesne türlerini döndürmek için en iyi yolu, ama en iyi yolu ne olduğundan emin değilim yap. ? extends myObject
'u kullanarak baktığımda, hem dönmek istediğim nesneleri hem de List<Object>
'u kullanarak başka bir sınıf oluşturdum.Java - i 2 farklı nesneler oluşturmak ve ben bu nesnelerin her iki dönmek istediğiniz yere ben bir yöntemi var benim DAO
Bu benzer nesnelere neden ihtiyaç duyulduğumun kısa bir açıklaması, ekranda 1 görüntülenmesi ve diğerinin de farkında olduğum kadarıyla bir nesnenin listelerini işlemeyen primefaces dataexporter ile kullanılmasıdır.
Sınıf Kişi
public class Person() {
firstName = null;
lastName = null;
List<Programs> programs = new ArrayList<Programs>();
// Getters and setters
}
Sınıf DataExporterPerson
public class DataExporterPerson() {
firstName = null;
lastName = null;
String program = null;
// Getters and setters
}
DAO yöntemi:
public List<SOMETHING> getPeople() {
// query db for people
// build both objects
return ?????
}
Şimdi ben çok kolay aşağıdaki gibi başka bir nesne oluşturabilirsiniz anlıyorum, ama görünüyor Bir şeyleri yapmak için verimsiz bir yol gibi, çünkü temelde 1 metreden dönmek için bir nesne oluşturuyorum od.
public class PersonTransporter() {
Person person = null;
DataExporterPerson = null;
}
Bu senaryoyu ele almanın en iyi yolu nedir? Bu veri tabanında sorgulama yapıp verilere dayalı 2 nesneler oluşturur bir DAO yöntemi olmadığından
DÜZENLEME
i 1 yönteminde 2 nesneleri döndürmek çalışıyorum nedenidir. Bunu 2 yönteme ayırmak istemiyorum çünkü ihtiyacım yoksa iki kez db'yi sorgulamak istemiyorum.
Neden "DataExporterPerson" Kişiyi 'genişletmiyor? Sonra bir Koleksiyon 'kullanabilirsiniz. –
İki şey yapmak için tek bir yöntem için genellikle kötü bir fikirdir. Bir yöntemin neden * iki dönüş değeri gerektirdiğini açıklayabilir misiniz? –
İki şey yapmıyor olabilir; Bir şey yapabilir ve 2-tuple yapabilir. –