@Override
    public List<T> findByIdAndDeskripsi(String id, String des) throws HibernateException {
                    
                    DetachedCriteria crit = DetachedCriteria.forClass(getDomainClass());
                    String id_table = "id";
                    String des_table = "deskripsi";
                    String id_field = "id";
                    String des_field = "deskripsi";
                    
                        
                    for (Field field: getDomainClass().getDeclaredFields()){
                        Column col;
                        if ((col = field.getAnnotation(Column.class)) != null){
                            if (col.name().contains("id_")) {
                                id_table = col.name().trim();
                                id_field = field.getName().trim();
                                //System.out.println(col.name() + "\t" +  col.table());
                            } else if (col.name().contains("kode_")) {
                                id_field = col.name().trim();
                                id_field = field.getName().trim();
                                //System.out.println(col.name());                            
                            }
                            
                            if (col.name().contains("deskripsi")){
                                des_field =  col.name();
                                des_field = field.getName().trim();
                                //System.out.println(col.name());
                            } else if (col.name().contains("nama_")){
                                des_field =  col.name();
                                des_field = field.getName().trim();
                                //System.out.println(col.name());
                            } else if (col.name().contains("descript")){
                                des_field =  col.name();
                                des_field = field.getName().trim();
                                //System.out.println(col.name());
                            } 
                            
                        }
                    }

                    crit.add(Restrictions.and(Restrictions.like(id_field, id), Restrictions.like(des_field, des)));
                    
                    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
                    return getHibernateTemplate().findByCriteria(crit);
       
    }