DatabaseFilter学习笔记[Java编程]
本文“DatabaseFilter学习笔记[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
首先成立数据库控件canton.jcx
这里主要用到该控件的getAllBCanton
/**
* @jc:sql command-type="grid"
* rowset-name="B_CANTONRowSet"
* max-rows="1000"
* statement="SELECT CANTON_ID,PLACENAME,ZIP,PRE_PHONE,REMARK,DELETED,CANTON_LEVEL,UPPER_CANTON_ID FROM HAPPYTREE.HT_B_CANTON {sql: filter.getWhereClause ()} {sql: filter.getOrderByClause ()}"
*/
public RowSet getAllBCanton(DatabaseFilter filter)
throws SQLException;
可以瞥见上面办法的参数是DatabaseFilter范例,我们的主要任务就是传送一个参数到该办法中,办法返回RowSet范例的数据
构建一个jpf页面流
在该页面流中有一个jsp页面负责输入查询的条件select.jsp
代码以下:
新建 Web 利用程序页
Canton_id:
有一个负责显示查询后果的页面grid.jsp
代码为:
select页面表单的action为select,这样在页面流中的办法select以下:
/**
* @jpf:action
* @jpf:forward name="success" path="grid.jsp"
*/
protected Forward select(DatabaseForm form)
{
sortFilterService = SortFilterService.getInstance(getRequest());
//实例化一个SortFilterService
DatabaseFilter filter = new DatabaseFilter();
//成立一个DatabaseFilter对象filter
List list = new ArrayList();//用于存储查询条件FilterTerm
DatabaseFilter.FilterTerm query = new DatabaseFilter.FilterTerm();
query.sColumnName = "canton_id";//查询的列为caton_id,canton_id数据库中的一个字段
query.op = DatabaseFilter.opGreater;//对比条件是大于
//这里还有大于、小于、不等于、为空、不为空等条件,按照情形具体设定
//query.value = "000000";//对比的值
query.value = form.getCanton_id();
list.add(query);//对比条件加入
DatabaseFilter.FilterTerm[] term = new DatabaseFilter.FilterTerm[list.size()];
//设定FilterTerm把对比的内容,即where背面的条件
for(int i=0;i term[i] = (DatabaseFilter.FilterTerm)list.get(i);//把条件加入terms
}
DatabaseFilter.SortTerm[] sterm = new DatabaseFilter.SortTerm[1];//设定排序字段
sterm[0] = new DatabaseFilter.SortTerm();
sterm[0].sColumnName = "placename";//排序字段
sterm[0].op = DatabaseFilter.opDesc;//降序布列
filter = new DatabaseFilter(term,sterm);//构造databasefilter
try{
allRows = myControl.getAllBCanton(filter);//履行查询语句,并付给allRows
}catch(Exception e){
e.printStackTrace();
}
return new Forward("success",new DatabaseForm());
}
至此就ok了,这里只是一个简单的例子,多条件查询只要往list内加入条件就行了.
以上是“DatabaseFilter学习笔记[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |