Action部分,这个部分关于id的处理很不好,但愿有同志能看到给提个醒,怎样做能好一点
package com.james.action;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
import com.james.domain.User;
import com.james.service.UserService;
@Component("usermgr")
@Scope("prototype")
public class UserAction {
public List<User> users;
public String userName;
public String passWord;
public String telphone;
public String context;
public String address;
public String id;
public UserService userService;
public boolean success=true;
public User user=new User();
public String save(){
System.out.println("action method save get id is:"+id);
try {
int vid=Integer.parseInt(id);
this.updata();
} catch (NumberFormatException e) {
user.setAddress(address);
user.setContext(context);
user.setPassWord(passWord);
user.setTelphone(telphone);
user.setUserName(userName);
userService.save(user);
// TODO Auto-generated catch block
//e.printStackTrace();
}
return "success";
}
public String del(){
int vid=Integer.parseInt(id);
userService.del(vid);
return "success";
}
public String updata(){
System.out.println("action method update get id is:"+id);
int vid=Integer.parseInt(id);
user.setAddress(address);
user.setContext(context);
user.setPassWord(passWord);
user.setTelphone(telphone);
user.setUserName(userName);
user.setId(vid);
userService.update(user);
return "success";
}
public String findById(){
return "success";
}
public String findAll(){
users=userService.findAll();
return "success";
}
public List<User> getUsers() {
return users;
}
public void setUsers(List<User> users) {
this.users = users;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String getTelphone() {
return telphone;
}
public void setTelphone(String telphone) {
this.telphone = telphone;
}
public String getContext() {
return context;
}
public void setContext(String context) {
this.context = context;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String findByName(){
return "success";
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public boolean isSuccess() {
return success;
}
public void setSuccess(boolean success) {
this.success = success;
}
@Resource
public void setUserService(UserService userService) {
this.userService = userService;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:annotation-config />
<context:component-scan base-package="com.james"/>
<!-- 数据库配置部分 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/mydb</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>a</value>
</property>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="annotatedClasses">
<list>
<value>com.james.domain.User</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
</beans>
extjs部分
Ext.ns("com.james");
com.james.UserPanel = Ext.extend(Ext.Panel, {
fields : ['id', 'userName', 'passWord', 'telphone', 'context',
'address'],
createEdit:function(){
this.win = new Ext.Window({
width : 300,
height : 300,
title : "用户维护",
items : {
xtype : "form",
layout : "form",
items : [
{xtype:"hidden",name:"id"},
{
xtype : "textfield",
fieldLabel : "姓名",
name : "userName",
anchor : "70%"
}, {
xtype : "textfield",
fieldLabel : "密码",
name : "passWord",
anchor : "70%"
}, {
xtype : "textfield",
fieldLabel : "电话",
name : "telphone",
anchor : "70%"
}, {
xtype : "textfield",
fieldLabel : "地址",
name : "address",
anchor : "70%"
}, {
xtype : "textarea",
fieldLabel : "附录",
name : "context",
anchor : "70%"
}]
},
buttons : [{
text : "提交",
handler : function() {
this.win.getComponent(0).getForm()
.submit({
url : "usermgr!save",
success : function() {
Ext.Msg
.alert("添加成功");
this.win.close();
this.vstore.reload();
},scope:this
});
},scope:this
}, {
text : "重置"
}, {
text : "取消",
handler : function() {
this.win.close();
}
}]
});
},
// *********************************************添加用户用户**************************************************************
//这种方式只要是有回调函数的地方都必须写 scope:this
adduser : function() {
this.createEdit();
this.win.show();
// ***********************************************************************************************************
},
deluser : function() {
var record =this.grid.getSelectionModel().getSelected();
var vid = record.get("id");
Ext.Ajax.request({
url : "usermgr!del",
params : {
id : vid
},
callback : function() {
Ext.Msg.alert("信息提示", "删除成功");
this.vstore.reload();
},scope:this
});
},
// ************************************修改用户***********************************************************************
updateuser : function() {
this.createEdit();
this.win.show();
// 获取当前鼠标选择记录
var record = this.grid.getSelectionModel().getSelected();
this.win.getComponent(0).getForm().loadRecord(record);
},
// ***************************初始化窗口********************************************************************************
initComponent : function() {
com.james.UserPanel.superclass.initComponent.call(this);
this.vstore = new Ext.data.JsonStore({
url : "usermgr!findAll",
root : "users",
idProperty : "id",
fields :this.fields
});
var p1 = new Ext.Panel({
title : "panel1",
height : 100,
collapsible : true
});
var p2 = new Ext.Panel({
title : "panel2",
height : 100,
collapsible : true
});
var p3 = new Ext.Panel({
title : "panel3",
height : 100,
collapsible : true,
animCollapse : true
});
this. grid = new Ext.grid.GridPanel({
tbar : [{
text : "添加",
handler : this.adduser,scope:this
}, "-", {
text : "删除",
handler : this.deluser,scope:this
}, "-", {
text : "修改",
handler : this.updateuser,scope:this
}],
store : this.vstore,
autoHeight : true,
columns : [{
header : "编号",
dataIndex : "id"
}, {
header : "姓名",
dataIndex : "userName"
}, {
header : "电话",
dataIndex : "telphone"
}, {
header : "密码",
dataIndex : "passWord"
}, {
header : "备注",
dataIndex : "context"
}, {
header : "地址",
dataIndex : "address"
}]
});
this.add(this.grid);
this.vstore.load();
}
});
Ext.onReady(function() {
var up = new com.james.UserPanel({
title : "jlksfdjklasfdj"
});
var vp = new Ext.Viewport({
layout : "border",
items : [{
region : "north",
height : 200
}, {
region : "west",
width : 200
}, {
region : "center",
items : [up]
}]
});
})
分享到:
相关推荐
在这个特定的案例中,我们讨论的是一个基于SSH(Struts2、Spring、Hibernate)和EXTJS技术构建的CRM系统源代码。 首先,SSH是一个流行的企业级Java应用开发框架。Struts2作为MVC(Model-View-Controller)架构的一...
SSH+ExtJS是一种常见的Web应用开发模式,其中SSH代表Spring、Struts和Hibernate这三个Java开源框架的首字母缩写,而ExtJS则是一个强大的JavaScript前端框架。本demo完全实现了SSH和ExtJS的集成,提供了从前端用户...
8. **单元测试**:SSH框架支持JUnit进行后端代码的测试,EXTJS也可能包含测试用例,了解如何编写和执行测试用例,确保代码质量。 这个"教学管理系统"很可能是EXTJS+SSH实现的一个具体示例,涵盖了学生信息管理、...
"ExtJS+SSH+Junit的Demo" 这个标题指的是一个示例项目,它结合了三个关键技术:ExtJS(一个用于构建Web应用的JavaScript库)、SSH(Struts2、Spring和Hibernate的集成框架)以及Junit(Java单元测试框架)。...
1. **S2sh框架**:S2sh是Struts2、Spring和Hibernate三个开源框架的简称,它们共同构成了Java企业应用开发的常用基础架构。 - **Struts2**:是一个MVC(Model-View-Controller)框架,负责处理HTTP请求,提供动作...
- **电信安全服务平台**:与多家安全服务厂商合作,采用Struts2、Hibernate和Spring构建,利用jQuery和DWR优化前端交互,展现了多方面的技术整合和项目实施能力。 7. **技术能力**:掌握快速原型工具Axure,熟悉...
通过这些文件,开发者可以深入了解该平台是如何整合上述技术的,例如Struts如何处理请求、Hibernate如何映射数据库、Spring如何管理依赖以及ExtJS如何构建用户界面。此外,也可能包含了一些测试脚本和报告,用于验证...
标题中的“上传下载ExtJS 2.2 开源网络硬盘系统-dogdisk-project”表明这是一个基于ExtJS 2.2框架开发的开源网络硬盘系统,名为dogdisk。这个项目可能是用于构建在线存储和文件共享平台的,允许用户上传、下载、管理...
配合项目经理与客户交流完成需求确认采用快速原型制作工具Axure完成DEMO制作、并参与前期的需求用例的编写,该项目使用了JBPM4,并对JBPM4进行预研,掌握JBPM4的使用,主要是JPDL和JBPM4常用API,并完成Extjs3+...
2. **专业技能**:简历中提到的软件工程师具备J2EE开发经验,熟悉Java语言,精通Struts2、Spring、Hibernate和Extjs等技术框架,对工作流引擎JBPM4有深入理解和应用,了解JSON数据交换格式,具备数据库设计能力,...
2. Struts2:作为Struts的升级版,Struts2提供了更多的功能和灵活性,支持拦截器、模板技术和多种视图技术。 3. iBatis:是一个SQL映射框架,它将SQL语句与Java代码分离,简化了数据访问层的开发。 4. Hibernate:是...
SSH(Spring、Struts2、Hibernate)是Java开发领域广泛使用的三大框架组合,它们在系统架构中分别负责了控制层、表现层和持久层的功能。EXT则是一个基于JavaScript的前端组件库,主要用于构建富客户端应用,提供美观...