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 ;
} }
}
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个步骤. 添加起来代码量还是有的.