Wabacus使用说明

去年毕业,刚参加工作不久,新到的一家公司,被通知项目要用新的框架,Wabacus,后上网下帮助文档,看demo自行学习!发现该框架简单易懂,上手很快。至于Wabacus的意义及用法,大家可以在百度百科上去详细了解,那里说得挺清楚的。接下来我简单介绍一下Wabacus的使用方法。(现在已经更新到4.0,很快4.1也就新鲜出炉啦。)

1、先将框架所需要的包及框架自带的配置文件拷的项目中去,具体可参照demo示例。

2、先来段代码,完整的增删改查功能

01.<page id="listpage1">  
02.    <tabpanel id="tablistpage1" margin="10px" titlestyle="2" titlewidth="120px">  
03.        <report id="reportlistpage1" title="员工信息列表" titlealign="center" pagesize="15" interceptor="com.wabacustest.SavePer" parenttitle="普通数据列表报表"  type="editablelist2" dataexport="richexcel|word">  
04.            <display>  
05.                <col column="{sequence:1}" label="序号"/>  
06.                <col column="no" label="工号">  
07.                    <inputbox type="textbox" value="seq_no" source="@{select seq_user.nextval as seq_no from dual}"></inputbox>  
08.                </col>  
09.                <col column="name" label="姓名"/>  
10.                <group label="基本信息">  
11.                    <col column="sex" label="性别">  
12.                        <inputbox type="radiobox">  
13.                            <option value="1" label="男"></option>  
14.                            <option value="0" label="女"></option>  
15.                        </inputbox>  
16.                    </col>  
17.                    <col column="age" label="年龄"/>  
18.                    <col column="birthday" label="出生日期" datatype="date{yyyy-MM-dd}">  
19.                        <inputbox type="datepicker"></inputbox>  
20.                    </col>  
21.                </group>  
22.                <col column="deptno" label="工号" displaytype="hidden"/>  
23.                <col column="deptname" label="所属部门" updatecol="@{deptno}">  
24.                    <inputbox type="selectbox">  
25.                        <option value="deptno" label="deptname" source="@{select deptno,deptname from tbl_department}"></option>  
26.                    </inputbox>  
27.                </col>  
28.            </display>  
29.            <sql>  
30.                <select>  
31.                    <value>  
32.                        <![CDATA[ 
33.                            select base.no,name,dept.deptno,sex,age,birthday,deptname from tbl_baseinfo base inner join tbl_department dept on 
34.                            base.deptno=dept.deptno where {#condition#} 
35.                        ]]>  
36.                    </value>  
37.                    <condition name="txtno" label="员工编号:" labelstyle="2">  
38.                        <value>  
39.                            <![CDATA[ 
40.                                base.no like '%#data#%' 
41.                            ]]>  
42.                        </value>  
43.                        <inputbox type="textbox">  
44.                            <typeprompt>  
45.                                <promptcol label="no" title="员工编号" matchmode="anywhere" casesensitive="false"></promptcol>  
46.                                <datasource>  
47.                                    <option source="@{select no from tbl_baseinfo where no like {#matchcondition#}}"></option>  
48.                                </datasource>  
49.                            </typeprompt>  
50.                        </inputbox>  
51.                    </condition>  
52.                    <condition name="txtname" label="员工姓名:" labelstyle="2">  
53.                        <value>  
54.                            <![CDATA[name like '%#data#%']]>  
55.                        </value>  
56.                    </condition>  
57.                    <condition name="txtsex" label="性别:" labelstyle="2">  
58.                        <value>  
59.                            <![CDATA[sex like '#data#' ]]>  
60.                        </value>  
61.                        <inputbox type="selectbox">  
62.                            <option value="" label="不限"></option>  
63.                            <option value="1" label="男"></option>  
64.                            <option value="0" label="女"></option>  
65.                        </inputbox>  
66.                    </condition>  
67.                </select>  
68.                <insert>  
69.                    <params>  
70.                        <param name="seq_no" value="sequence{seq_user}"/>  
71.                    </params>  
72.                    <value>  
73.                        insert into tbl_baseinfo(@{no},@{name},@{age},@{sex},@{birthday},@{deptno});  
74.                    </value>  
75.                </insert>  
76.                <update>  
77.                    update tbl_baseinfo(@{name},@{age},@{sex},@{birthday},@{deptno}) where no=@{no};  
78.                </update>  
79.                <delete>  
80.                    delete from tbl_baseinfo where no=@{no}  
81.                </delete>  
82.            </sql>  
83.            <format>  
84.                <imports>  
85.                    <import>java.text.*</import>  
86.                </imports>  
87.                <value>  
88.                    <![CDATA[ 
89.                        sex=sex==null?"1":sex.trim(); 
90.                        if(sex.equals("1")){ 
91.                            sex="男"; 
92.                        }else{ 
93.                            sex="女"; 
94.                        } 
95.                    ]]>  
96.                </value>  
97.            </format>  
98.        </report>  

 示例效果图:

 


Wabacus使用说明_第1张图片
 

report对应有多种报表类型,如:editablelist,editablelist2,crosslist,listform,blocklist,detail等等,不对的报表类型对应不同的报表效果。

这里的增删改查只需要配置相应的标签即可!页面上就会出现相应的按钮!

查询出的SQL语句中的字段,只要在<col>标签的column属性里对应,即可显示在页面上!

对于查询条件,只要配置<condition/>标签即可!

 

综上所述,还有很多功能,只需简单的配置一下xml配置文件即可实现!很多初学者都误以为Wabacus只能用来开发报表,其实这是个错误的理念,而实质上Wabacus是一个完整的javaEE开发框架,可以代替90%左右的ssh功能,但开发效率比后者高很多倍!

你可能感兴趣的:(wabacus)