????????????????????????

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了????????????????????????相关的知识,希望对你有一定的参考价值。

?????????

????????????????????????

1???  ???baseDao???baseDaoImpl??????????????????findObjects(String hql, List<Object> parameters)

????????????

????????????

2???  ???service???serviceImpl?????????baseDao????????????????????????

3???  ???action??????service????????????findObjects(String hql, List<Object> parameters)??????????????????

????????????

4???  ??????listUI.jsp?????????????????????

????????????

 ????????????-???????????????QueryHelper

???????????????????????????QueryHelper?????????????????????????????????hql???????????????????????????????????????????????????service??????????????????????????????????????????????????????

???   QueryHelper(Class clazz, String alias) ????????????????????????from ??????

???   addCondition(String condition, Object... param) ??????where??????

???   addOrderByProperty(String property, String order) ??????order by ??????

???   getListQueryHql() ?????????????????????hql

???   getCountQueryHql() ???????????????????????????hql

???   getParameters() ??????????????????

 

??????????????????

 1 package cn.itcast.core.utils;
 2 
 3 import java.util.ArrayList;
 4 import java.util.List;
 5 
 6 public class QueryHelper {
 7     
 8     //from ??????
 9     private String fromClause = "";
10     //where ??????
11     private String whereClause = "";
12     //order by ??????
13     private String orderByClause = "";
14     
15     //where ????????????????????????????
16     private List<Object> parameters;
17     
18     public static String ORDER_BY_ASC = "ASC";//??????
19     public static String ORDER_BY_DESC = "DESC";//??????
20     
21     /**
22      * ????????????????????????from??????
23      * @param clazz ?????????
24      * @param alias ??????
25      */
26     public QueryHelper(Class clazz, String alias){
27         fromClause = "FROM " + clazz.getSimpleName() + " " + alias;
28     }
29     /**
30      * ??????where??????
31      * @param condition ??????
32      * @param params ????????????????????????????
33      * @return QueryHelper
34      */
35     public QueryHelper addCondition(String condition, Object...params){
36         if(whereClause.length() > 0){
37             whereClause += " AND " + condition;
38         } else {
39             whereClause = " WHERE " + condition;
40         }
41         if(parameters == null){
42             parameters = new ArrayList<Object>();
43         }
44         for(Object param: params){
45             parameters.add(param);
46         }
47         return this;
48     }
49     /**
50      * ??????order by ??????
51      * @param property ???????????????
52      * @param order ??????(asc)????????????(desc)
53      * @return QueryHelper
54      */
55     public QueryHelper addOrderByProperty(String property, String order){
56         if(orderByClause.length() > 0){
57             orderByClause += "," + property + " " + order;
58         } else {
59             orderByClause += " ORDER BY " + property + " " + order;
60         }
61         return this;
62     }
63 
64     //??????????????????hql??????
65     public String getListQueryHql(){
66         return fromClause + whereClause + orderByClause;
67     }
68     
69     //???????????????????????????hql
70     public String getCountHql(){
71         return "SELECT Count(*) " + fromClause + whereClause;
72     }
73     
74     public List<Object> getParameters() {
75         return parameters;
76     }
77 }

???????????????????????????QueryHelper???baseDao??????????????????findObjects(QueryHelper qh)????????????????????????????????????

baseDao

????????????

baseDaoImpl

????????????

?????????service/serviceImpl???????????????????????????action?????????

 

????????????action??????????????????????????????????????????

????????????

????????????

1???  ????????????????????????????????????

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

??????action????????????????????????????????????????????????decode 

????????????

??????????????????redirectAction???????????????????????????encode:

????????????

2???  ????????????????????????????????????

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

 

?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

以上是关于????????????????????????的主要内容,如果未能解决你的问题,请参考以下文章

IPEX-1代/3代/4代/5代,PCB天线底座,公头,样式及封装尺寸图

JVM 年轻代 老年代 持久代 gc

深圳本地网店代运营公司

C线程代业代写代调试POSIX Threads代编码

jvm中的年轻代 老年代 持久代 gc

JVM年轻代年老代永久代