java 的包挺多,比c#多 . jar包一個名,解壓縮出來又出來又叫另一個名 .搜索起來,內容都分散的很
http://mvnrepository.com maven庫搜索
com.googlecode.genericdao
com/googlecode/genericdao/search/1.2.0 這個是網站上的目錄 就能找到源碼包.從源碼包便可以看出search 內又多少可用的方法了
下載完源碼包之后
把下載的源碼包選上,就可以出現源碼了.
今天實現一個多條件查詢 .
1:請求接收邏輯內進行數據查詢符合條件的進行處理
Filter.custom
Filter.equal
通過加載search 源碼search 內方法很多.
Filter filtercar = Filter.custom( " userID='"+userid+"' AND carID='"+carid+"'"); // =select from 表 where **=** and **=** search.addFilter( filtercar ); List<Usercaridbindinfo> resultUsers = this.bindcaridService.search( search );
// 先檢測用戶是否存在,按照手機號碼來檢測 Search search = new Search(); Filter userMobile = Filter.equal( "userID", username ); search.addFilter( userMobile ); // 查詢結果集 List<Userinfo> resultUsers = usersMgrService.search( search );
// 查詢用戶是否有效 Usersinfo resultUsers = usersInfoService.findById( paramVO.getUsersId() );
2:service 層
@Override public List<Usercaridbindinfo> search(ISearch search) { // TODO Auto-generated method stub return usercaridbindinfodao.search( search ); }
3:dao層
public interface UserCaridbindinfoDao extends GenericDAO<Usercaridbindinfo, Long> { int DeleteCarid(String sql); }
dao層實現
@Repository public class UserCaridbindinfoDaoImpl extends BaseDAO<Usercaridbindinfo, Long> implements UserCaridbindinfoDao { Session session ; /** * 根據條件解綁車牌 */ @Override public int DeleteCarid(String sql ) { try{ session = this.getSession(); Query query = session.createSQLQuery( sql ).addEntity( Usercaridbindinfo.class ); int result=query.executeUpdate(); return result; } catch (Exception e ){ e.printStackTrace(); return 0; } } }
4:model層 當前都一部分代碼
@Entity @NamedQuery(name="Usercaridbindinfo.findAll", query="SELECT u FROM Usercaridbindinfo u") public class Usercaridbindinfo implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private int id; private String carid; private String carlogo; private String chejiaid;
添加一個新功能,基本上都是這4個步驟. 添加起來代碼量還是有的.