- 浏览: 282063 次
- 性别:
- 来自: 湖南
文章分类
- 全部博客 (144)
- 解决方案_Java (12)
- spring的定时器管理 (1)
- 解决方案_mysql (1)
- Oracle (30)
- Linux (8)
- JS (10)
- WebService (2)
- MySQL (7)
- 百度 (1)
- Spring (1)
- PowerDesigner (3)
- Struts (2)
- MyEclipse (16)
- Windows (3)
- Bitvise Tunnelier (1)
- 资料 (2)
- Ext (10)
- Abator (1)
- Tomcat (2)
- 资源 (9)
- SSH (1)
- SVN (3)
- 日记 (1)
- Ibatis (1)
- Java (3)
- 杂文 (1)
- 面试 (2)
- Mercury Quality Center (1)
- 手机 (1)
- 互联网 (1)
- Android (1)
- Html (3)
- 个人 (0)
- FTP (1)
最新评论
-
iron0313:
很好,正是我需要的,谢谢
WdatePicker日期控件显示年月日时分秒 -
tianbo77:
我有一个类似的问题,不知道大神是否还能看到,帮助一下,以下是错 ...
javax.xml.ws.WebServiceException: Unable to create JAXBContext -
ctlove1323:
...
hh24:mi:ss与hh24:mm:ss的区别 -
xb12369:
感谢分享
PL/SQL记住登陆密码 -
luodan12:
请问楼主解决了吗?求。
java.lang.LinkageError: You are loading old SAAJ from jar,解决方案_Java
1. 本界面实现的功能:
1. 页面初始化的时候,学年学期是当前学年学期,且能加载当前学年学期的数据。
2. 能根据学年学期查找数据。
3. 评价课程类别+评价分类+总分只能是唯一的,且必填。
4. 如果评价课程类别+评价分类+总分被使用就不能删除。
5. 能无限添加记录条数。
2.evaluationcontrol.jsp页面 源代码:
<%@ page language="java" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<%@ include file="/apframe/common.jsp"%>
<script type='text/javascript'src='<foundation:root/>dwr/interface/evaluationcontrolService.js'></script>
</head>
<body>
<div align="center"><br></div><script type="text/javascript">
var infoForm=null; //教学评价安排信息表单
var addFormNum=0;
var addoredit; // addoredit=0为增加,addoredit=1为修改
var fileup=null;
var currentXnxqid;//当前学年学期
var arrCau = new Array();//评价课程类别
var arrClassify = new Array();//评价分类
//定义固定的部分
var fp=new Ext.FormPanel( {
buttonAlign:'center',
frame:true,
height : 50,
split : true,
margins:'3 0 0 0',
collapsible : true,
autoScroll:true,
labelAlign : 'right',
region : "center",
title:'学期评教控制基本信息:',
buttons : [{
text :'保存',
id:'onSaveButton',
handler:onSave,
align:'center'
}],
border : false,
bodyBorder:false,
items : [{
layout : 'column',
items : [
{
columnWidth : .23,
layout : 'form',
labelWidth:55,
items : [
{xtype:'hidden',id:'PJ_SEM_TEA_EVAL_ID'},
{
xtype:"combo",
id:'PSTE_XNXQ01ID',
fieldLabel : '学年学期',
width : 100,
mode : 'local',
triggerAction : 'all',
editable:true,
selectOnFocus : true,
forceSelection : true,
displayField : 'text',
valueField : 'value',
readOnly : true,
store : new Ext.data.SimpleStore({
fields: ['value', 'text']
}),
listeners :{
"expand":function(){this.innerList.dom.style.overflowX="hidden";},
select:function(){
//移除选择前的学年学期下的数据显示控件
if(addFormNum > 0){
for(; addFormNum > 0 ; addFormNum--){
var id = "attment" + addFormNum
fp.remove(Ext.getCmp(id));
}
}
//查询学期评教控制表的信息(主表)
pageCall.queryNamedSqlForJsonArr("evaluationcontrol.selectsemteaevalebyxnxq",{PSTE_XNXQ01ID:$value('PSTE_XNXQ01ID')},function(list){
if(parseInt(list.length)>0){//有数据 修改
addoredit=1;
$set('PSTE_XNXQ01ID',list[0].PSTE_XNXQ01ID);
$set('PJ_SEM_TEA_EVAL_ID',list[0].PJ_SEM_TEA_EVAL_ID);
document.getElementsByName("PSTE_INDEX_SCORE_INPUT")[list[0].PSTE_INDEX_SCORE_INPUT-1].checked=true;
document.getElementsByName("PSTE_STU_SEE_RES_CONT")[list[0].PSTE_STU_SEE_RES_CONT-1].checked=true;
//查询学期评教控制详细表信息(子表) 动态显示
var semTeaEvalId=list[0].PJ_SEM_TEA_EVAL_ID;//学期评教控制表ID
pageCall.queryNamedSqlForJsonArr("evaluationcontrol.selectsemteaevaledelbyxnxq",{PSTED_SEM_TEA_EVAL_ID:semTeaEvalId},function(del){
if(parseInt(del.length)>0){
for ( var k = 1; k <= del.length; k++) {
addTextfield();
$('PSTED_CLASSIFY_ID'+addFormNum).store.loadData(getClassify());
$('PSTED_CLASSIFY_ID'+addFormNum).reset();
$set('PSTED_EVA_COU_CAT_ID'+k,del[k-1].PSTED_EVA_COU_CAT_ID);
$set('PSTED_CLASSIFY_ID'+k,del[k-1].PSTED_CLASSIFY_ID);
$set('PSTED_SCORE'+k,del[k-1].PSTED_SCORE);
//若已存在评价信息,则相应的总分不允许修改或删除。
pageCall.queryNamedSqlForJsonArr("evaluationcontrol.selectDuplicateRecords",{PTEA_XNXQ01ID:$value('PSTE_XNXQ01ID'),PCEA_CLASSIFY_ID:$value('PSTED_CLASSIFY_ID'+addFormNum),PJ_EVA_COU_CAT_ID:$value('PSTED_EVA_COU_CAT_ID'+addFormNum)},function(li){
if(parseInt(li.length)>0)
{
$('PSTED_CLASSIFY_ID'+addFormNum).disable();
$('PSTED_EVA_COU_CAT_ID'+addFormNum).disable();
$('PSTED_SCORE'+addFormNum).disable();
$('DEL_BUTTON'+addFormNum).disable();
}
});
}
}
});
}
else{//无数据 增加
addoredit=0;
document.getElementsByName("PSTE_INDEX_SCORE_INPUT")[0].checked=true;
document.getElementsByName("PSTE_STU_SEE_RES_CONT")[0].checked=true;
//初始化动态添加列表
for(var i=0;i<1;i++){
addTextfield();
}
}
});
}
}
},{height:10},
{
columnWidth : .08,
labelWidth:40,
layout : 'form',
items : [ new Ext.Button({text:'添加',iconCls : 'icon-add',handler:addTextfield}),{height:20}]
}
]
},
{
columnWidth : .39,
labelWidth:120,
layout : 'form',
items : [
{
xtype: 'panel',
layout: 'form',
items: [{xtype:'hidden',name:'PSTE_INDEX_SCORE_INPUTVALUE'},
{
xtype : 'radio',
labelSeparator:'',
fieldLabel: '指标分值输入方式:',
name : 'PSTE_INDEX_SCORE_INPUT',
boxLabel : '直接输入分值',
checked : true,
inputValue:'1'
},
{
xtype : 'radio',
labelSeparator:'',
labelSeparator: '',
name : 'PSTE_INDEX_SCORE_INPUT',
boxLabel : '输入权重,由系统计算分值',
checked : false,
inputValue:'2'
}
]
}
]
},{
columnWidth : .38,
labelWidth:110,
layout : 'form',
hidden:true,
items : [
{
xtype: 'panel',
layout: 'form',
items: [{xtype:'hidden',name:'PSTE_STU_SEE_RES_CONTVALUE'},
{
xtype : 'radio',
labelSeparator:'',
fieldLabel: '学生查看成绩控制:',
name : 'PSTE_STU_SEE_RES_CONT',
boxLabel : '直接查看成绩',
checked : true,
inputValue:'1'
},
{
xtype : 'radio',
labelSeparator: '',
name : 'PSTE_STU_SEE_RES_CONT',
boxLabel : '只能查看已评课程成绩',
checked : false,
inputValue:'2'
},
{
xtype : 'radio',
labelSeparator: '',
name : 'PSTE_STU_SEE_RES_CONT',
boxLabel : '全部评完后才能查看',
checked : false,
inputValue:'3'
}
]
}
]
}]
}]
});
//动态添加控件
function addTextfield(){
addFormNum++;
fileup=new Ext.form.FieldSet({
layout : 'table',
id:'attment'+addFormNum,
border : false,
autoHeight : true,
columnWidth : 1,
items : [
{
columnWidth : .30,
labelWidth:90,
layout : 'form',
height:25,
items : [
{
xtype:"combo",
id:'PSTED_EVA_COU_CAT_ID'+addFormNum,
fieldLabel : '评价课程类别',
width : 120,
mode : 'local',
triggerAction : 'all',
editable:true,
selectOnFocus : true,
forceSelection : true,
displayField : 'text',
valueField : 'value',
readOnly : true,
allowBlank : false,
store : new Ext.data.SimpleStore({
fields: ['value', 'text'],
data : getPeccName()
})
}
]
},
{width:50},
{
columnWidth : .30,
labelWidth:70,
layout : 'form',
height:25,
items : [
{
xtype:"combo",
id:'PSTED_CLASSIFY_ID'+addFormNum,
fieldLabel : '评价分类',
width : 120,
mode : 'local',
triggerAction : 'all',
allowBlank : false,
editable:true,
selectOnFocus : true,
forceSelection : true,
displayField : 'text',
valueField : 'value',
readOnly : true,
store : new Ext.data.SimpleStore({
fields: ['value', 'text'],
data : getClassify()
}),
listeners:{'select':function(){
if(addFormNum>1){//同一学年学期评价课程类别与评价分类不能重复
var courseIdCurrent=$value('PSTED_EVA_COU_CAT_ID'+addFormNum);
var classifyCurrent=$value('PSTED_CLASSIFY_ID'+addFormNum);
arrCau = [];//评价课程类别初始化
arrClassify = [];//评价分类初始化
fp.findBy(function(val){
if(val.getId().indexOf("PSTED_EVA_COU_CAT_ID")!=-1 )
{
var cauId= val.getId().substr(20);
arrCau.push(cauId);
}
});
for(var i=0;i<arrCau.length-1;i++){
var courseId=$value('PSTED_EVA_COU_CAT_ID'+arrCau[i]);
var classifyId=$value('PSTED_CLASSIFY_ID'+arrCau[i]);
if(courseIdCurrent==courseId && classifyCurrent==classifyId){
Ext.Msg.alert("提示:","评价课程类别与评价分类,不能重复,请重新选择!");
$('PSTED_EVA_COU_CAT_ID'+addFormNum).setValue("");
$('PSTED_CLASSIFY_ID'+addFormNum).setValue("");
}
}
}
}}
}
]
},
{width:50},
{
columnWidth : .1,
labelWidth:40,
layout : 'form',
height:25,
items : [
{
xtype:"numberfield",
fieldLabel : '总分',
id:'PSTED_SCORE'+addFormNum,
width : 60,
//value :'100',
value :addFormNum,
allowBlank : false,
decimalPrecision : 2,
allowNegative : false
}
]
},
{width:50},
{
columnWidth : .08,
layout : 'form',
labelWidth : 10,
height:25,
items : [
{
xtype:'button',
text:'删除',
iconCls : 'icon-delete',
id:'DEL_BUTTON'+addFormNum,
handler:function(){
fp.remove(this.ownerCt.ownerCt);
fp.doLayout();
//addFormNum--;
}
}
]
}]
})
fp.add(fileup);//添加
fp.doLayout();//重新布局
}
//保存
function onSave(){
var jsonObj="";
jsonObj=fp.getForm().getValues(false);
var validEva=true;
var validCau=true;
var validScore=true;
var num=0;
arrCau=[];
arrClassify=[];
fp.findBy(function(val){
if(val.getId().indexOf("PSTED_EVA_COU_CAT_ID")!=-1 )
{
var cauId= val.getId().substr(20);
arrCau.push(cauId);
if($('PSTED_EVA_COU_CAT_ID'+cauId).isValid()==false)
validEva=false;
}
if(val.getId().indexOf("PSTED_CLASSIFY_ID")!=-1 )
{
var classify= val.getId().substr(17);
arrClassify.push(classify);
if($('PSTED_CLASSIFY_ID'+classify).isValid()==false)
validCau=false;
}
if(val.getId().indexOf("PSTED_SCORE")!=-1 )
{
var scoreId= val.getId().substr(11);
if($('PSTED_SCORE'+scoreId).isValid()==false)
validScore=false;
}
});
//如果评价课程类别、评价分类、总分都不为空的话
if(validEva && validCau && validScore){
if(arrCau.length>0){//同一学年学期评价课程类别与评价分类不能重复
var courseIdCurrent="";
var classifyIdCurrent="";
var courseId="";
var classifyId="";
for(var i=0;i<arrCau.length;i++){
for (var j=i+1;j<arrCau.length;j++){
courseIdCurrent=$value('PSTED_EVA_COU_CAT_ID'+arrCau[i]);
classifyIdCurrent=$value('PSTED_CLASSIFY_ID'+arrClassify[i]);
courseId=$value('PSTED_EVA_COU_CAT_ID'+arrCau[j]);
classifyId=$value('PSTED_CLASSIFY_ID'+arrClassify[j]);
alert("i:"+i+"j:"+j+"courseIdCurrent:"+courseIdCurrent+"courseId:"+courseId+"classifyIdCurrent:"+classifyIdCurrent+"classifyId:"+classifyId);
if(courseIdCurrent==courseId && classifyIdCurrent==classifyId){
Ext.Msg.alert("提示:","第"+(i+1)+"行与第"+(j+1)+"行是同一重复记录,请重新选择!");
return;
}
}
}
}
jsonObj.PSTE_XNXQ01ID=$value("PSTE_XNXQ01ID");//学年学期
var tempModel1 = document.getElementsByName('PSTE_INDEX_SCORE_INPUT');//遍历指标分值输入方式
for(var i =0;i<tempModel1.length;i++){
if(tempModel1[i].checked){
jsonObj.PSTE_INDEX_SCORE_INPUT = tempModel1[i].value;
}
}
var tempModel2 = document.getElementsByName('PSTE_STU_SEE_RES_CONT');//遍历学生查看成绩控制
for(var i =0;i<tempModel2.length;i++){
if(tempModel2[i].checked){
jsonObj.PSTE_STU_SEE_RES_CONT = tempModel2[i].value;
}
}
jsonObj.CREATOR='<foundation:property value="#session.userObject.userid"/>';
if(addoredit==0){
resourceService.getId("PJ_SEM_TEA_EVAL.PJ_SEM_TEA_EVAL_ID",function(id){
jsonObj.PJ_SEM_TEA_EVAL_ID=id;
});
evaluationcontrolService.insertEvaluationControl(jsonObj, function(c){
if(c){
for(var i=1 ; i<=arrCau.length;i++ ){
jsonObj.PJ_SEM_TEA_EVAL_ID=jsonObj.PJ_SEM_TEA_EVAL_ID;
jsonObj.PSTED_EVA_COU_CAT_ID=$value('PSTED_EVA_COU_CAT_ID'+arrCau[i-1]);
jsonObj.PSTED_CLASSIFY_ID=$value('PSTED_CLASSIFY_ID'+arrCau[i-1]) ;
jsonObj.PSTED_SCORE=$value('PSTED_SCORE'+arrCau[i-1]) ;
pageCall.invokeNamedSqlForInsert("evaluationcontrol.insertEvaluationControlKidInfo",jsonObj,function(c){
});
}
Ext.Msg.alert("提示:","学期评教控制添加成功!");
} else {
Ext.Msg.alert("提示:","学期评教控制添加失败!");
}
});
}
else if(addoredit==1){
var arrUpdate = new Array();
evaluationcontrolService.updateEvaluationControl(jsonObj, function(c){
if(c){
if(addFormNum>=1){
arrUpdate.push({PSTE_XNXQ01ID:$value("PSTE_XNXQ01ID")});
pageCall.invokeNamedSqlForBatchDelete("evaluationcontrol.deletClassificationControlInfo",arrUpdate,function(){
for(var i=1 ; i<=arrCau.length;i++ ){
jsonObj.PSTE_XNXQ01ID=$value('PSTE_XNXQ01ID');
jsonObj.PSTED_EVA_COU_CAT_ID=$value('PSTED_EVA_COU_CAT_ID'+arrCau[i-1]);
jsonObj.PSTED_CLASSIFY_ID=$value('PSTED_CLASSIFY_ID'+arrClassify[i-1]) ;
jsonObj.PSTED_SCORE=$value('PSTED_SCORE'+arrClassify[i-1]) ;
pageCall.invokeNamedSqlForInsert("evaluationcontrol.insertEvaluationControlKidInfo",jsonObj,function(c){
Ext.Msg.alert("提示:","学期评教控制修改成功!");
});
}
});
}
else{
Ext.Msg.alert("提示:","学期评教控制修改成功!");
}
}else{
Ext.Msg.alert("提示:","学期评教控制修改失败!");
}
});
}
//}
}
}
// 学年学期
function getChargeYearPos(){
var arr = new Array();
pageCall.queryNamedSqlForList("evaluationcontrol.selectChargeYearName",{},function(obj){
for(var k = 0; k < obj.length; k++){
arr.push([obj[k].XNXQ01ID, obj[k].TERMCNAME]);
}
});
return arr;
}
// 评价课程类别
function getPeccName(){
var arr = new Array();
pageCall.queryNamedSqlForList("evaluationcontrol.selectPeccName",{},function(obj){
for(var k = 0; k < obj.length; k++){
arr.push([obj[k].PJ_EVA_COU_CAT_ID, obj[k].PECC_NAME]);
}
});
return arr;
}
// 评价分类
function getClassify(){
var arr = new Array();
pageCall.queryNamedSqlForList("evaluationcontrol.selectClassify",{},function(obj){
for(var k = 0; k < obj.length; k++){
arr.push([obj[k].PJ_CLASSIFY_ID, obj[k].PC_NAME]);
}
});
return arr;
}
var innerPanel = new Ext.Panel({
layout : 'border',
border : false,
title:'学期评教控制',
iconCls : 'icon-plugin',
split : true,
items:[fp]
});var bigTabPanel = new Ext.TabPanel({
region : 'center',
activeTab: 0,
border : false,
frame:false,
items:[innerPanel]
});
Ext.onReady(function(){
new Ext.Viewport({
layout : 'border',
split : true,
items:[bigTabPanel]
});
//初始化学年学期,设置为当前学年学期
Ext.getCmp('PSTE_XNXQ01ID').store.loadData(getChargeYearPos());
pageCall.queryNamedSqlForObj('evaluationcontrol.selectCurrentYearName',{},function(xnxq){
currentXnxqid = xnxq.XNXQ01ID;
$set("PSTE_XNXQ01ID",currentXnxqid);
});
//初始化学年学期下的数据
//查询学期评教控制表的信息(主表)
pageCall.queryNamedSqlForJsonArr("evaluationcontrol.selectsemteaevalebyxnxq",{PSTE_XNXQ01ID:$value('PSTE_XNXQ01ID')},function(list){
if(parseInt(list.length)>0){//有数据 修改
addoredit=1;
$set('PSTE_XNXQ01ID',list[0].PSTE_XNXQ01ID);
$set('PJ_SEM_TEA_EVAL_ID',list[0].PJ_SEM_TEA_EVAL_ID);
document.getElementsByName("PSTE_INDEX_SCORE_INPUT")[list[0].PSTE_INDEX_SCORE_INPUT-1].checked=true;
document.getElementsByName("PSTE_STU_SEE_RES_CONT")[list[0].PSTE_STU_SEE_RES_CONT-1].checked=true;
//查询学期评教控制详细表信息(子表) 动态显示
var semTeaEvalId=list[0].PJ_SEM_TEA_EVAL_ID;//学期评教控制表ID
pageCall.queryNamedSqlForJsonArr("evaluationcontrol.selectsemteaevaledelbyxnxq",{PSTED_SEM_TEA_EVAL_ID:semTeaEvalId},function(del){
if(parseInt(del.length)>0){
for ( var k = 1; k <= del.length; k++) {
addTextfield();
$('PSTED_CLASSIFY_ID'+addFormNum).store.loadData(getClassify());
$('PSTED_CLASSIFY_ID'+addFormNum).reset();
$set('PSTED_EVA_COU_CAT_ID'+k,del[k-1].PSTED_EVA_COU_CAT_ID);
$set('PSTED_CLASSIFY_ID'+k,del[k-1].PSTED_CLASSIFY_ID);
$set('PSTED_SCORE'+k,del[k-1].PSTED_SCORE);
//若已存在评价信息,则相应的总分不允许修改或删除。
pageCall.queryNamedSqlForJsonArr("evaluationcontrol.selectDuplicateRecords",{PTEA_XNXQ01ID:$value('PSTE_XNXQ01ID'),PCEA_CLASSIFY_ID:$value('PSTED_CLASSIFY_ID'+addFormNum),PJ_EVA_COU_CAT_ID:$value('PSTED_EVA_COU_CAT_ID'+addFormNum)},function(li){
if(parseInt(li.length)>0)
{
$('PSTED_CLASSIFY_ID'+addFormNum).disable();
$('PSTED_EVA_COU_CAT_ID'+addFormNum).disable();
$('PSTED_SCORE'+addFormNum).disable();
$('DEL_BUTTON'+addFormNum).disable();
}
});
}
}
});
}
else{//无数据 增加
addoredit=0;
document.getElementsByName("PSTE_INDEX_SCORE_INPUT")[0].checked=true;
document.getElementsByName("PSTE_STU_SEE_RES_CONT")[0].checked=true;
//初始化动态添加列表
for(var i=0;i<1;i++){
addTextfield();
}
}
});
});
</script>
</body>
</html>
发表评论
-
【转】Ext combobox 动态模糊匹配
2013-06-24 17:31 849原文来自 http://weibaojun. ... -
Ext中radio设置选中状态
2013-06-14 15:03 1313设置选中:Ext.getCmp('控件ID').setVal ... -
Ext中光标定位至文档框
2013-02-17 17:48 802$('BATCHID').focus();//定位文档框 ... -
Ext的DateField获取当前日期的前一天、当前日期、本月的第一天
2012-11-06 11:49 5352日期控件: new Ext.form.DateField( ... -
关于Extjs2.0日期控件(DateField)在FireFox3下
2011-07-22 08:47 1007公司项目之前用到了ext2.0版本,在最新Firefox3 ... -
Ext获取年份
2011-07-29 11:33 767第一种情况: 代码: items:[{ columnWid ... -
下拉数据过长被滚动条拦住的问题可以通过一个下拉展开事件去掉横向滚动条
2011-09-05 16:48 720ext:listeners:{"expand&quo ... -
Combox获取输入值text的方法
2011-10-19 23:23 1282使用combobox时,它有一个hiddenName的属性,专 ... -
用Ext在一个页面上画三个dataGrid
2011-12-05 17:23 999evaluationresultsquery.jsp源代码 ...
相关推荐
根据提供的文件信息,我们可以深入探讨该系统的实现细节及其关键技术点,包括如何利用ExtJS和PHP完成用户管理功能(增删查改)。以下是对这些技术点的详细解释: ### 关键技术点 #### 1. ExtJS简介 ExtJS是一款...
在“extjs实现增删查改”这个主题中,我们将探讨如何使用ExtJS来实现基本的数据操作功能。 首先,增删查改(CRUD,Create, Read, Update, Delete)是任何数据管理应用的核心功能。在ExtJS中,我们可以利用Grid ...
在实际的增删查改操作中,Extjs提供了丰富的API和事件处理机制。例如,可以通过GridPanel的`add`、`remove`、`update`方法来完成数据的添加、删除和修改,同时配合PHP的处理逻辑实现数据的持久化存储。在`handler`...
标题“Ext实现添删查改一”涉及到的是使用Ext JS框架进行Web应用开发中的基本操作——添加、删除、查询和修改数据。Ext JS是一个强大的JavaScript库,主要用于构建富客户端的桌面级Web应用,它提供了丰富的组件和...
在ExtJS 3中,使用`Ext.data.Record`来定义数据模型。定义字段名和类型,这将映射到数据库的列。例如,如果你有一个名为`users`的表,你可能需要定义如下模型: ```javascript var User = new Ext.data.Record....
这个实例结合了Struts2后端框架与ExtJS前端库,实现了基本的数据操作功能——增、删、改、查,这在Web应用开发中是非常基础且重要的。 在Struts2框架中,核心概念包括Action、Result和Interceptor。Action是业务...
GXT(GWT-Ext)是一个基于Google Web Toolkit (GWT) 的JavaScript UI库,它扩展了GWT的功能,提供了丰富的用户界面组件和强大的数据网格处理能力。GXT的一个核心特性是支持CRUD(创建、读取、更新、删除)操作,这...
**基本的增删查改功能** 在EXT.NET 1.x 中,实现基本的CRUD(Create、Read、Update、Delete)操作通常涉及到数据绑定和服务器端控件的使用。EXT.NET 提供了诸如 GridPanel、FormPanel 等组件来轻松实现这些功能。...
在EXT应用中,通常会结合Ajax技术或者使用EXT的Direct API来与后端的MySQL数据库进行数据交互,实现数据的增删查改操作。这涉及到EXT的Store、Proxy、Model等数据模型概念,以及JSONP或Ajax请求的使用。 在...
学生信息管理系统是一个典型的业务管理系统,其主要功能包括班级管理、学生信息管理以及信息的增删查改。在EXT+STRUTS2框架下,这些功能的实现主要分为以下几个步骤: 1. **数据模型设计**:首先,我们需要定义数据...
在这个系统中,SQLServer2005扮演了数据存储的角色,通过JDBC(Java Database Connectivity)接口,JSP和Struts能够与数据库进行交互,执行增删查改操作,确保数据的安全性和一致性。 项目中的主要知识点包括: 1....
2. `store/Books.js` - 图书数据的存储类,用于管理图书信息的增删查改。 3. `model/Book.js` - 图书模型定义,包含了图书属性的描述。 4. `view/main/Main.js` - 应用的主要视图,可能包含数据网格、表单等EXT组件...
- **功能**:支持对DOM元素进行增删查改等操作,同时也支持绑定事件监听器等功能。 - **使用方法**:通过Element可以方便地获取和操作DOM元素,实现页面动态效果。 #### 四、获取多个DOM的节点 - **选择器语法**:...
实体类对应数据库表,实体属性对应表字段,通过Hibernate的API,可以实现对数据库的增删查改操作,无需编写SQL语句,提高了开发效率和代码可维护性。 3. **Spring框架**: Spring是一个全面的企业级应用开发框架,...
- SQL查询:在图书管理系统中,使用SQL语句进行增删查改操作,如SELECT、INSERT、UPDATE和DELETE。 - 数据库设计:包括表结构设计,如图书信息表、借阅记录表等,以及主键、外键的设置,保证数据的一致性和完整性...
在图书管理系统中,Hibernate负责将图书、读者、借阅记录等实体类与数据库中的表进行映射,实现了数据的增删查改,减少了开发者编写SQL语句的工作量。 3. Spring框架: Spring是一个全面的企业级应用开发框架,提供...
这使得数据操作更为便捷,可以直接在组件上进行增删查改操作。 3. **事件处理**:ExtNet采用服务器端事件模型,允许开发者在服务器端处理客户端事件。这简化了跨层通信,使得代码更易于理解和维护。 4. **MVC模式...
本示例项目 "spring-ldap demo" 提供了一个关于如何使用 Spring LDAP 进行实际操作的详细教程,包括与 LDAP 目录的增删查改操作,并结合了 EXT.js 进行前端展示。 首先,我们来了解一下 Spring LDAP 的核心概念。...
这个例子可能展示了如何创建一个数据网格(Grid Panel),展示库存(Inventory)数据,用户可以进行增删查改操作,而这些操作由控制器处理,同时通过模型和存储与服务器进行数据交换。 通过学习这个小例子,你可以...