Demo效果界面:
开发架构:
LigerUI+Spring MVC+Hibernate+JSON+jquery
1:LigerUI学习知识点总计
(1):关于Lgerui js库的引入,在学习阶段,可以将全部的库导入,减少每次考虑导入哪些JS的学习成本。
<link href="<%=basePath%>/script/jquery/lib/ligerUI/skins/Aqua/css/ligerui-all.css" rel="stylesheet" type="text/css" />
<script src="<%=basePath%>/script/jquery/lib/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
<script src="<%=basePath%>/script/jquery/lib/ligerUI/js/core/base.js" type="text/javascript"></script>
<script src="<%=basePath%>/script/jquery/lib/ligerUI/js/ligerui.min.js" type="text/javascript"></script>
<script src="<%=basePath%>/script/role.js" type="text/javascript"></script>
(2)grid内容修改后,需要调用endEdit方法提交修改,这时候通过getData得到的数据才是最新的数据。
$grid.endEdit();
var dataArray = $grid.getData();
2:JQUERY学习知识点总结
(1):jquery中遍历数组(each),及往数组中添加对象的方法(push)
$.each(dataArray, function (index, entity) {
var role=new Role(entity.id,entity.name,entity.remark);
data.push(role.toString());
});
(2):JS中创建对象,及对象中创建方法
function Role(id,name,remark) {
this.id=id;
this.name=name;
this.remark=remark;
this.toString=function () {
return "id:"+id+";name:"+this.name+";remark:"+remark;
}
}
(3):JS中 Ajax的数据实现流程
var ids=[];
$.each(selected, function (index, entity) {
ids.push(entity.id);
});
$.ajax({
url: jsCommonPath+'/roleController.do?method=deleteList',
data: 'ids='+ids,
dataType: 'json',
type: 'post',
success: function (result)
{
$grid.loadData();
$.ligerDialog.warn('删除成功');
}
});
}});
4:学习Filebug 和Post数据的查看办法,及JS断点的方法
5:掌握POST发送一个字符串数组的方法,这时后台可以用一个数组接收array参数的值;
掌握POST传送一个List的办法,需要将对象数组拼装成字符串,在后台接收字符串再解析成对象数组。
var data=[];
$.each(dataArray, function (index, entity) {
var role=new Role(entity.id,entity.name,entity.remark);
data.push(role.toString());
});
$.ajax({
url: jsCommonPath+'/roleController.do?method=saveList',
data: "Rows="+data,
dataType: 'json',
type: 'post',
success: function (result)
{
$grid.loadData();
$.ligerDialog.success('保存成功');
},
error: function (message) {
$.ligerDialog.error(message);
}
});
掌握POST传送一个对象的方法,能将对象解析成属性和值的组合发到POST数据包中
Spring mvc 的学习总结
1:在配置文件中定义视图时,Order属性可以定义 视图的 匹配顺序。
<bean id="viewResolver1" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.JstlView</value>
</property>
<property name="prefix">
<value>/jsp/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
<property name="contentType">
<value>text/html;charset=UTF8</value>
</property>
<property name="order">
<value>2</value>
</property>
</bean>
2:掌握 注解的使用方法,RequestMapping 用来定义URL和Action的匹配,RequestParam用来定义从request中接收参数,掌握 ModelAndView传送页面和传送JSON数据的方法。
@RequestMapping(params ="method=queryView")
public ModelAndView querySpringView(@RequestParam("page")int page,@RequestParam("pagesize")int pagesize) {
PagingBean pagingBean=new PagingBean(pagesize,page);
QueryResult queryResult=roleService.queryObjList(new FilterInfo(), pagingBean);
List<RoleBean> roleBeanList=queryResult.getResultList();
Map resultMap=new HashMap();
resultMap.put("Rows", roleBeanList);
resultMap.put("Total", queryResult.getTotalRecordNumber());
return new ModelAndView("ajax",resultMap);
}
3:掌握参数中接收数组的方法,这个与上面 删除的JS方法对应
@RequestMapping(params ="method=deleteList")
public ModelAndView deleteObjList(@RequestParam("ids") String[] ids) {
roleService.deleteObj(ids);
return new ModelAndView("ajax","0","0");
}
4: XmlViewResolver用于将其他XML中的视图包含进来
<bean name="viewResolver" class="org.springframework.web.servlet.view.XmlViewResolver" >
<property name="order" value="1"/>
<property name="location" value="classpath:config/mvc/views.xml"/>
</bean>
以上源代码已经备份到以下路径,并包含一个POST传送数据的测试文档
F:\学习资料\项目备份\springLigerFramework0524.zip