sg-uap下关于单表操作的从前台到后台的开发流程
2016-07-24 15:06
211 查看
一、 先要给uap中下载开发所需要的插件(155 plug),将sguap-server放到tomcat的webapps目录下,然后开启启动tomcat;点击“Window->Preferences”,在“Plug-inDevelopment->Target
Platform”中配置地址,点击“add”,再点击“next”,在Name栏输入名称,选择“locations”,点击“add”,选择“directory”,点击“next”,在location栏输入SG-UAPSERVER地址:http://127.0.0.1:8082/sguap-server/environment/platform/Version2.0.0;然后uap就会检测到155个可用的插件可用下载,点击next进行下载,然后应用,此时,就可以用uap进行开发了。
(1)新建一个主项目uap_food
要在uap_food->WebContext->WEBINF->configuration->policy.xml中加入mysql_extend和下一步将要新建的模块名module_food
(2)新建一个模块module_food
1.new数据库反向建模(om)选择之前设计好的tb_food表,按照提示一步步,就会说在model下的om中产生对 应的om模型,点击生成代码,
就会在src下生成对应的后代代码。
2.new界面模型(*.ui),按照提示一步步,就会说在model下的ui中产生对 应的ui模型,点击小齿轮图标生成代码,就会在face目录下生成
对应的前端代码。
二、完成上面两步,这时就可以在浏览器地址栏中输入http://127.0.0.1:9000/uap_food/module_food/food/index.jsp 就会出现一个具有新建、删除、编辑、打印 功能的一个功能页面。然后,在实际应用中我们可能会需要各种各样的具体功能,这时就需要我们手写增加所需要的功能,比如我这里想要增加一个“改变食物味道”的功能。
(1) 先要在face下的TbFoodGridView.js中添加添加“改变味道”的按键,对应代码如下
function _init_MainToolBar(){
_MainToolBar = new mx.controls.ToolBar({
id:"MainToolBar",
height:"24",
direction:"horizontal",
width:"100%",
itemAlign:"left",
layoutConfigs:{},
items:[
{id:"ChangeTasteButton",droppedDown:false,text:"改变味道",imageKey:"edit",height:"20",width:"100",useSymbol:true,onclick:me.controller._ChangeTasteButton_onclick},
{id:"NewButton",droppedDown:false,text:"新建",imageKey:"add",height:"20",width:"60",useSymbol:true,onclick:me.controller._NewButton_onclick},
{id:"DelButton",droppedDown:false,text:"删除",imageKey:"delete",height:"20",width:"60",useSymbol:true,onclick:me.controller._DelButton_onclick},
{id:"EditButton",droppedDown:false,text:"编辑",imageKey:"edit",height:"20",width:"60",useSymbol:true,onclick:me.controller._EditButton_onclick},
{id:"ChakanButton",droppedDown:false,text:"查看食物",imageKey:"print",height:"20",width:"100",useSymbol:true,onclick:me.controller._ChakantButton_onclick},
{id:"PrintButton",droppedDown:false,text:"打印",imageKey:"print",height:"20",width:"60",useSymbol:true,onclick:me.controller._PrintButton_onclick}
]
});
_HSplitArea0.addControl(_MainToolBar);
}
(2)在对应的TbFoodGridViewController.js中添加对应的_ChangeTasteButton_onclick 方法,对应代码如下
/**
* 改变味道
*/
me._ChangeTasteButton_onclick = function(e) {
if(dataGrid.getCheckedItems().length == 0) {
mx.indicate("info", "请选择一条待改变记录。");
return;
}else if(dataGrid.getCheckedItems().length>1) {
mx.indicate("info", "只能选择一条待改变记录。");
return;
}
var primaryKey = dataGrid.entityContainer.primaryKey;
var primaryValue = dataGrid.selection.getValue(primaryKey);
var data = {"zjid":primaryValue};
/*下面的food为对应的前端代码的场景名,rest后面跟的tbFood为对应后代代码src中的TbFoodController.java
中的@RequestMapping("/tbFood")对应的,changeTaste为 TbFoodController.java中的对应方法 */
var client = new mx.rpc.RESTClient({baseUrl:food.mappath("~/rest/tbFood/")});
client.get("/changeTaste",
data,
function(ret) {
if(ret.successful) {
mx.indicate("info", "修改成功");
dataGrid.load();
}else
mx.indicate("info", "修改失败");
}
);
};
(3)在TbFoodController.java中加入下面的代码段
/**
* 改变味道为美味滴
*/
@RequestMapping("/changeTaste")
public @ItemResponseBody QueryResultObject changeTaste (HttpServletRequest req) {
String foodid = req.getParameter("zjid");
tbfoodBizc.changeTaste(foodid);
return null;
}
(4)在ITbFoodBizc.java中加入public void changeTaste(String foodid);
(5)在TbFoodBizc.java中加入下面的代码段
/**
* 改变味道为美味滴
*/
public void changeTaste(String foodid) {
StringBuffer sql = new StringBuffer();
sql.append("update tb_food set ");
sql.append("food_taste='美味滴' where ");
sql.append("food_id=?");
hibernateDao.executeSqlUpdate(sql.toString(),new Object[]{foodid});
}上面这5步就是添加一个功能的从前台到后台的基本流程,通过这5步就可以实现功能的添加。
Platform”中配置地址,点击“add”,再点击“next”,在Name栏输入名称,选择“locations”,点击“add”,选择“directory”,点击“next”,在location栏输入SG-UAPSERVER地址:http://127.0.0.1:8082/sguap-server/environment/platform/Version2.0.0;然后uap就会检测到155个可用的插件可用下载,点击next进行下载,然后应用,此时,就可以用uap进行开发了。
(1)新建一个主项目uap_food
要在uap_food->WebContext->WEBINF->configuration->policy.xml中加入mysql_extend和下一步将要新建的模块名module_food
<module-repository id="workspace" path="F:\UAP_workspace"> <module>module_food</module> <module>mysql_extend</module> </module-repository>
(2)新建一个模块module_food
1.new数据库反向建模(om)选择之前设计好的tb_food表,按照提示一步步,就会说在model下的om中产生对 应的om模型,点击生成代码,
就会在src下生成对应的后代代码。
2.new界面模型(*.ui),按照提示一步步,就会说在model下的ui中产生对 应的ui模型,点击小齿轮图标生成代码,就会在face目录下生成
对应的前端代码。
二、完成上面两步,这时就可以在浏览器地址栏中输入http://127.0.0.1:9000/uap_food/module_food/food/index.jsp 就会出现一个具有新建、删除、编辑、打印 功能的一个功能页面。然后,在实际应用中我们可能会需要各种各样的具体功能,这时就需要我们手写增加所需要的功能,比如我这里想要增加一个“改变食物味道”的功能。
(1) 先要在face下的TbFoodGridView.js中添加添加“改变味道”的按键,对应代码如下
function _init_MainToolBar(){
_MainToolBar = new mx.controls.ToolBar({
id:"MainToolBar",
height:"24",
direction:"horizontal",
width:"100%",
itemAlign:"left",
layoutConfigs:{},
items:[
{id:"ChangeTasteButton",droppedDown:false,text:"改变味道",imageKey:"edit",height:"20",width:"100",useSymbol:true,onclick:me.controller._ChangeTasteButton_onclick},
{id:"NewButton",droppedDown:false,text:"新建",imageKey:"add",height:"20",width:"60",useSymbol:true,onclick:me.controller._NewButton_onclick},
{id:"DelButton",droppedDown:false,text:"删除",imageKey:"delete",height:"20",width:"60",useSymbol:true,onclick:me.controller._DelButton_onclick},
{id:"EditButton",droppedDown:false,text:"编辑",imageKey:"edit",height:"20",width:"60",useSymbol:true,onclick:me.controller._EditButton_onclick},
{id:"ChakanButton",droppedDown:false,text:"查看食物",imageKey:"print",height:"20",width:"100",useSymbol:true,onclick:me.controller._ChakantButton_onclick},
{id:"PrintButton",droppedDown:false,text:"打印",imageKey:"print",height:"20",width:"60",useSymbol:true,onclick:me.controller._PrintButton_onclick}
]
});
_HSplitArea0.addControl(_MainToolBar);
}
(2)在对应的TbFoodGridViewController.js中添加对应的_ChangeTasteButton_onclick 方法,对应代码如下
/**
* 改变味道
*/
me._ChangeTasteButton_onclick = function(e) {
if(dataGrid.getCheckedItems().length == 0) {
mx.indicate("info", "请选择一条待改变记录。");
return;
}else if(dataGrid.getCheckedItems().length>1) {
mx.indicate("info", "只能选择一条待改变记录。");
return;
}
var primaryKey = dataGrid.entityContainer.primaryKey;
var primaryValue = dataGrid.selection.getValue(primaryKey);
var data = {"zjid":primaryValue};
/*下面的food为对应的前端代码的场景名,rest后面跟的tbFood为对应后代代码src中的TbFoodController.java
中的@RequestMapping("/tbFood")对应的,changeTaste为 TbFoodController.java中的对应方法 */
var client = new mx.rpc.RESTClient({baseUrl:food.mappath("~/rest/tbFood/")});
client.get("/changeTaste",
data,
function(ret) {
if(ret.successful) {
mx.indicate("info", "修改成功");
dataGrid.load();
}else
mx.indicate("info", "修改失败");
}
);
};
(3)在TbFoodController.java中加入下面的代码段
/**
* 改变味道为美味滴
*/
@RequestMapping("/changeTaste")
public @ItemResponseBody QueryResultObject changeTaste (HttpServletRequest req) {
String foodid = req.getParameter("zjid");
tbfoodBizc.changeTaste(foodid);
return null;
}
(4)在ITbFoodBizc.java中加入public void changeTaste(String foodid);
(5)在TbFoodBizc.java中加入下面的代码段
/**
* 改变味道为美味滴
*/
public void changeTaste(String foodid) {
StringBuffer sql = new StringBuffer();
sql.append("update tb_food set ");
sql.append("food_taste='美味滴' where ");
sql.append("food_id=?");
hibernateDao.executeSqlUpdate(sql.toString(),new Object[]{foodid});
}上面这5步就是添加一个功能的从前台到后台的基本流程,通过这5步就可以实现功能的添加。
相关文章推荐
- 如何在网页中动态显示当前时间
- C++语法 :C/C++ 内存布局详解(经典)
- POJ2403 Hay Points
- MPAndroidChart使用三之柱形图
- android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error(Sqlite code 14): Could not open database,(OS error - 13:Permission denied)
- yum方式安装MySQL
- tjut 4941
- hdu 5733 tetrahedron 求四面体内切球球心坐标及半径大小
- HDU1501 Zipper(DFS)
- 数据库系统事务隔离级别
- Avro:使用Avro MapReduce进行排序
- 网络虚拟化之FlowVisor:网络虚拟层(下)
- c++设计模式之桥接模式
- 多线程实现(Thread类)
- 373. Find K Pairs with Smallest Sums
- 排序_2.快速排序
- MPAndroidChart使用二之折线图
- PAT-B 1023. 组个最小数 (20)
- 【转】Win32下的socket编程
- SQL-Server使用点滴(一-数据对象篇)