質問: ""; public String execute(){ if(B.isEmpty() && C.isEmpty()){ //Aのみで検索 return SUCCESS; } if(A.isEmpty() && C.isEmpty()){ //Bのみで検索 return SUCCESS; } if(A.isEmpty() && B.isEmpty()){ //Cのみで検索 return SUCCESS; } if(C.isEmpty()){ //ABのみで検索 return SUCCESS; } if(B.isEmpty()){ //ACのみで検索 return SUCCESS; } if(A.isEmpty()){ //BCのみで検索 return SUCCESS; } if(!(A.isEmpty() && B.isEmpty() && C.isEmpty())){ //ABCで検索 return SUCCESS; } return SUCCESS; }
回答: うーん、SQLを構築する部分で、Aがあればその条件をSQLに足しこむ、Bがあれば、...といった感じでしょうか。 R/Oマッパーでも似たようにできるかと。