public class Org{
    private int orgId=1;
    public void setOrgId(int orgId){
        this.orgId=orgId;
    }
    public int getOrgId(){
        return orgId;
    }
    ...
}

解决方案 »

  1.   

    Org o=new Org();
    o.setOrgName("wei");
    select(o);
    这样的话,一样解决不了问题呀。。
    因为javabean中改int型为1,此时上面相关语句将变成如下:
    select * from org where 1=1 and orgid=1 and orgname='wei' 
    这时,0,2,3,4,5中姓名为wei的就查不出来了。
    应用Dao中令我极烦的问题,难道除了限制数据库中的orgid不能为0就没有什么办法了吗?
      

  2.   

    因为我现在在项目中做基础数据子系统,许多数据别人都用到,记录根本就不能改,极度郁闷中。
    而且程序中大部分Dao类都采用了上面的方法从数据库中取数据。
    如果判断不取默认的整型0,那么记录中orgid为0的又将查不到项目25号验收。急救。。
    if (o != null) {
                    if (o.getOrgId() != 0)
                        buff.append(" AND orgid=?");
                    if (o.getOrgName() != null && !o.getOrgName().equals(""))
                        buff.append(" AND orgname LIKE ? ");
                }
      

  3.   

    Org o=new Org(); //在这里调用构造函数的时候,orgId没有显示赋值,那么它就默认赋值0
    o.setOrgName("wei");
    select(o);
    那么o.getOrgId()还怎么能大于0呢??永远都等于0了,如果要查找其它的,可以调用setOrgId来改变orgId的值..
      

  4.   

    我的目的是多重查询,按照数据库字段查找。想想输几个就几个。。可以单独orgid,也可以name