小学期——第二篇

这三天我们依次制作了新增、查询、修改和删除四大功能。

新增:首先需要设想当我们点此按钮时,应新开一个窗口,以供我们填写新增信息。所以,我们首先要创建一个CustSaveAction类。

代码:

 1 package com.crm.action;
 2
 3 import com.crm.bean.Cust;
 4 import com.crm.service.CustService;
 5 import com.opensymphony.xwork2.ActionSupport;
 6
 7 public class CustSaveAction extends ActionSupport{
 8
 9 private CustService custService;
10 Cust cust;
11
12 public CustService getCustService() {
13     return custService;
14 }
15
16 public void setCustService(CustService custService) {
17     this.custService = custService;
18 }
19
20 @Override
21 public String execute() throws Exception {
22
23     // TODO Auto-generated method stub
24     this.custService.saveCustomer(cust);
25     return SUCCESS;
26 }
27
28 public Cust getCust() {
29     return cust;
30 }
31
32 public void setCust(Cust cust) {
33     this.cust = cust;
34 }
35
36 }

接着,依次在CustDao类、CustDaoImpl类、CustService类、CustServiceImpl类中加入saveCust,并在application、struts中配置它的功能

application中:

1 <!-- 配置-saveaction -->
2 <bean id="custSaveAction" class="com.crm.action.CustSaveAction">
3 <property name="custService" ref="custService"></property>
4 </bean>

struts中:

1 <!-- 配置-saveaction -->
2 <bean id="custSaveAction" class="com.crm.action.CustSaveAction">
3 <property name="custService" ref="custService"></property>
4 </bean>

注意:在application中的class要与你创建的包名、类名一致,而前面的id则要与struts中class相对应,以确保功能实现的正确,否则会报错。

而我在实现这一功能时,也遇到了不少问题,问题如下:

例如上面这个图,她是由于找不到我创建的工程shtest中的custSave.jsp文件,你可以查看一下你写的界面中(例如我写得界面custInfo.jsp文件中)

第一个红框中的action是否与你在struts中配置的id相一致,客户信息是否与你设置的对象相一致。

而我们可以在myeclipse中试着运行改代码,看是否报错,接着根据报错的代码找到错误的原因,接着进行修改。

下一次,我讲记录自己写的其他代码,以便日后的学习和查看。

时间: 2024-10-08 14:37:19

小学期——第二篇的相关文章

小学期第一篇——myeclipse初识

今天,是我们小学期开始的第二天,我们在这两天的时间内就遇到过非常多的问题.由于我们还不熟悉myeclipse这个软件,所以我们刚刚开始操作时也是略显手忙脚乱.我的问题和周围同学的大有不同,由于系统是windows10.曾经下载的eclipse也是用了JDK1.8的环境,导致我在对数据库连接.配置等操作时,都出现了不同的问题,原因是JDK版本过高.于是,我在第一天结束时的晚上,自己下载了JDK1.7版本,果不其然的问题迎刃而解了. 我们还在第一天时下载了数据库,建立了表customer. 第一个类

我的微信小程序第二篇

在上一篇<我的微信小程序第一篇(入门)>中,很多人问我什么是微信小程序,在这里我要说一下这个是我的失误啦,我默认大家都知道微信小程序,其实可能行内人士都知道小程序,好多非行内朋友可能平时不太关注这些,所谓的隔行如隔山,所以,我今天简单介绍下什么是微信小程序? 据说在微信产品经理张小龙的微信朋友圈中介绍到(敲黑板,重点是“据说”噢,因为我没有张小龙微信,哈哈): 小程序是一种不用下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜索一下即可打开,也体现了“用完即走”的理念,用

画图小工具第二篇

一.事件源 事件源是一个事件的起点.所有的容器组件类和元素组件类可以成为事件源对象.在程序中可以有多个事件,也就是可以有多个事件源.由需要实现的功能,达到的目的来确定事件源.在程序中动作发生在哪里,哪个就是事件源. 二.事件监听方法: 由事件源来确定事件监听方法. 三.事件接口: 由事件接口实现事件监听方法,而事件接口不能实例化.所以靠定义一个事件处理来,来实现接口中的抽象方法. 四.本次任务: 实现曲线.刷子.橡皮.喷枪 (在窗体上按下鼠标按键.然后拖动鼠标,在按下和拖动之间绘制曲线) 五.实

小学期-第二次

经过几天的熟悉,我对于使用myEclipse制作网页项目的流程逐渐熟悉起来,也终于能够自己解决一些调试过程中出现的问题了.随着项目的进展,我们遇到的问题逐渐显出了一点的技术含量--相比较初期大部分实际是由拼写.大小写而引起error,现在遇到更多的是实际运用过程中,如action的实现.网页切换出错等的问题. 在调试过程中,控制台出现过许多"严重"错误,网页上也抛出过许多不同的exception,从一开始的束手无策,到后来慢慢能够看懂一些错误信息了.还是熟能生巧吧. 例如,在配置&qu

小学期第二次作业

这几天,我们做出了客户信息主界面以及客户信息存储.查询.修改.删除功能. 首先,建立一个applicationContext: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-insta

短学期第二篇随笔

这三天明显感觉有节奏了,老师采取了先拉进度,然后纠错,这样可以给我们一个方向,明确当天的任务.很好的解决了做的快的同学被挂起,只能等老师先帮同学调试,有时候会调试到很晚,快下课才发布新任务,导致大家一起加班. 这几天做了直接查询功能,代码如下: CustomerListAction: package com.crm.action; import java.util.Map; import com.crm.service.CustomerService;import com.opensymphon

第二次小学期软工实践随笔

小学期后面两天的学习,我们进一步完善了我们的ssh框架,在Dao和Service包下我们声明好我们需要的操作方法: package com.crm.dao;import java.util.List;import com.crm.bean.Cust;public interface CustDao { /** * 保存客户信息 * @param cust */public void saveCustomer(Cust cust);/** * 删除客户信息 * @param cust */publ

[C++11新特性]第二篇

0.可变数量参数,可变函数模版,变长模版类 c++98可变数量参数 #include<cstdio> #include<cstdarg> double SumOfFloat(int count, ...) { va_list ap; double sum=0; va_start(ap,count); for(int i=0;i<count;i++) sum+=va_arg(ap,double); va_end(ap); return sum; } int main() { p

chromium浏览器开发系列第二篇:如何编译最新chromium源码

说一下为什么这么晚才发第二篇,上周和这周department的工作太多了,晚上都是十点半从公司出发,回家以后实在没有多余的精力去摸键盘了.所以请大家包涵! 上期回顾: chromium源码下载: 1.找个靠谱的vpn(我试过了,网上说的不用vpn拿代码的都不靠谱): 2.获取depot_tools,解压,设置环境变量; 3.gclient获取python和git,svn,设置环境变量: 4.fetch–nohooks chromium –nosvn=true 获取源码: 5.gclientsyn