淡定银行(ESBC)系统项目说明书.doc

上传人:椰子壳 文档编号:5025237 上传时间:2020-01-29 格式:DOC 页数:34 大小:3.89MB
返回 下载 相关 举报
淡定银行(ESBC)系统项目说明书.doc_第1页
第1页 / 共34页
淡定银行(ESBC)系统项目说明书.doc_第2页
第2页 / 共34页
淡定银行(ESBC)系统项目说明书.doc_第3页
第3页 / 共34页
淡定银行(ESBC)系统项目说明书.doc_第4页
第4页 / 共34页
淡定银行(ESBC)系统项目说明书.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《淡定银行(ESBC)系统项目说明书.doc》由会员分享,可在线阅读,更多相关《淡定银行(ESBC)系统项目说明书.doc(34页珍藏版)》请在三一文库上搜索。

1、上海第二工业大学上海第二工业大学 淡定银行(淡定银行(ESBCESBC)系统项目说明书)系统项目说明书 班 级: 09 计 商 A1 组 员: 日 期: 2011 年 11 月 20 日 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 1 目录目录 一、前言一、前言2 1、团队介绍2 2、LOGO说明 .2 3、关于 ESBC.3 二、系统功能分析二、系统功能分析.3 1、产品前景3 2、功能介绍3 3、角色分配4 (1)银行客户4 (2)普通职员4 (3)银行经理5 (4)结算员6 三、系统设计分析三、系统设计分析.6 1、物理设计 CDM 图6 2、数据库 E-R 图.7

2、 3、数据库表结构7 四、产品实现流程四、产品实现流程.8 1、个人网上银行8 2、银行系统管理页面14 (1)各种权限职员进行登录14 (2)银行经理15 (3)银行出纳员18 (4)结算员22 五、相关代码及注释(部分)五、相关代码及注释(部分) 22 1、银行客户登陆判断。22 2、银行职员登陆验证23 3、客户网上银行转账25 4、柜台操作注册新客户27 5、银行经理管理所有账户28 6、结算员统计银行出入账30 7、用户信息视图代码31 六、附录六、附录32 1、实训小结32 2、参考文献33 3、环境和软件支持33 4、任务分配表33 09 计 商 A1淡 定 银 行 系 统 20

3、11 年 11 月 2 一、前言一、前言 1、团队介绍、团队介绍 团队合作和团队分工在一个项目制作过程中是非常重要的,我们小组正是秉承这样的 一个原则来进行任务和角色的分配,以及大家一起去解决各个环节中可能存在的问题,一 起去面对它和解决它。 以姚涛为组长的这个团队,将银行系统按照所需人物角色进行分配任务: 吴丽萍主要负责个人网上银行客户部分,包括网上银行所需要的大部分基本功能。 邵冰沁负责银行经理部分,包括员工管理和客户高级权限的管理。 黄新皓负责结算员部分,统计银行的资金在某个时间段流出和流入的金额。 孙铭洁则负责出纳员部分,主要包括客户柜台操作的一些功能。 (姚涛协作) 2、logo 说

4、明说明 图 1-1 logo 标志 中国淡定银行的行标,其整体标志是以圆形的外框和两个古代齐国的刀币组合而成, 圆形代表钱币,体现出金融业的行业特征圆形也象征着和谐,就像一个地球统一在一起, 也象征着淡定,圆形的事物容易让人联想到很多美好的东西。圆形里面是两个齐国的刀币, 两边对称,体现出银行与客户之间平等互信的依存关系。以“断”强化“续” ,以“分”形 成“合” ,是银行与客户的共存基础。设计手法的巧妙应用,强化了标志的语言表达力,而 圆形与古钱币形的运用则充分体现了现代气息。 3、关于、关于 ESBC 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 3 图 1-2 淡定银

5、行卡系列 ESBC 全称 Emotion Stability Bank of China,Emotion Stability 是淡定的英文拼写,无论 在何种情况之下都要保持淡定。 淡定形容一种态度。遇事沉稳中又积极果断,老练里却又重视有佳,淡定形容一种勇 气,行事要放松自如,从容冷静,投资理财中我们最需要的就是这种精神,不能盲目的跟 风,需要根据实际情况,进行投资理财活动,淡定的面对一切突发情况。 二、系统功能分析二、系统功能分析 1、产品前景、产品前景 淡定银行系统是一款拥有后台数据库且基于 JSP 网页较为完善的系统,通过网络将各 个客户端连接起来,可以为银行内部职员提供一体化的客户管理、

6、业务办理、业务查询功 能,并为银行客户提供网上银行功能,以便通过浏览器进行查询等操作。 2、功能介绍、功能介绍 淡定银行系统包含两个部分,其一,客户可以通过网络来登录自己的账号进行一系列 的基本操作,其二,银行后台拥有一套完善的包含客户管理和员工管理的管理平台。 客户可以持本人有效身份证件到我行进行柜台注册,并示意开通个人网上银行功能或 者自己在个人电脑上通过网络进行网上银行注册,注册卡号并输入密码,客户可以在柜台 通过与职员面对面的来存款取款,转账汇款,查询记录,也可以在个人电脑上通过网络登 录个人网上银行进行一系列的操作,但不能进行存款和取款。 银行普通职员可以在注册客户向银行经理提出网上

7、银行开通批准,并且可以存款和取 款,修改密码和更新信息。经理可以进行更高级的客户管理权限,还可以进行员工管理, 结算员有查看财务报表的功能,并打印出来,交与银行经理查看。 淡定银行系统已经基本实现一般银行里的功能,其中的诸多问题在团队合作部分已经 得到解决,也寻求过老师的帮助并得到了解决。此系统目前还不完善,有待进一步的改进。 3、角色分配、角色分配 (1)银行客户)银行客户 客户通过在浏览器上输入网址,便可以浏览我行的主页。右边有个人网上的一个链接, 点进去便可以输入账号和密码登入个人网上银行界面。 客户先必须在柜台操作之后获得账号和网上银行的登录密码(默认和卡号密码一样) 才能在登录进去网

8、上银行进行一系列的操作。客户也可以通过网络自己输入卡号等相关信 息注册网上银行,注:网上银行的登录密码可以和卡号的登录密码不一致。 流程图如下所示: 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 4 图 2-1 客户网上银行操作流程 (2)普通职员)普通职员 普通职员可以选择自己的单选按钮进行登录,如果柜台有客户拿着身份证来进行注册 的话,那就根据客户提供的信息注册新的客户,然后在进行相关客户的一系列的操作,如 果有新的客户则直接对客户账号和密码进行验证,如果登录成功则对此账户进行相关的操 作。 流程图如下: 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月

9、 5 图 2-2 银行普通职员操作流程 (3)银行经理)银行经理 银行经理登录过后课对员工和客户进行管理,但是客户普通的操作的属于结算员的, 而银行经理则拥有更加高级的权限,批准开户和对账户进行注销操作。另外,如果职员离 职,则银行经理需要把职员的状态进行修改,然后离职员工就不能登录后台管理系统。 图 2-3 银行经理操作流程 (4)结算员)结算员 结算员是银行的统计人员,是专门负责 银行的现金流动的统计工作,把某一个时间 段的银行的存钱取钱的差值统计出来,然后 便可以知道银行在这个时间段里有多少现金 的流动量,可以保证银行内部在任一时刻都 能保证有足够的现金来供客户进行取款。结 算员在统计出

10、现金流动之后要把财务报表打 印出来交给银行经理,并需要对资金流动和 时间上的关系进行分析。 图 2-4 银行结算员操作流程 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 6 三、系统设计分析三、系统设计分析 1、物理设计、物理设计 CDM 图图 图 3-1 数据库 CDM 图 说明:CDM 是用来自动生成创建 sql 数据库的代码,可以在页面里直接操作,比较直观, 比在查询分析器或企业管理去里写代码方便的多,CDM 图在实质上和 E-R 图是差不多的, 只不过两者的表现形式不一样,前者更为直观,方便使用者操作。 在画 CDM 图式我们考虑到了增加几个键也就是列来规定它的权限

11、,比如登录权限,或 者是状态之类的,虽然这些值只是用 1 或者 0 来表示,来实现的功能是很强大的,就像计 算机内部的二进制一样,都很强大。 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 7 2、数据库、数据库 E-R 图图 图 3-2 数据库 E-R 图 3、数据库表结构、数据库表结构 客户(客户编号,姓名,昵称,身份证号,性别,手机,家庭地址,邮编,星级,锁定键) 账户(账户编号,账号,账户余额,密码,开户日期,账户状态,备注,锁定键,网银密 码) 客户账户关系(客户编号,账户编号,备注) 职员(职员编号,姓名,性别,用户名,密码,权限类型,锁定键,状态) 账户类型(账

12、户类型编号,项目,利率) 操作记录(账号编号,时间,入账金额,出账金额,余额) 四、产品实现流程四、产品实现流程 1、个人网上银行、个人网上银行 首页展示及介绍 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 8 中国淡定银行的首页没有秉承一款以来银行网站严谨的设计风格,而是以非专业化的 设计手法,大图片的转换和新闻发布式的结合给人一种简单气派的感觉,网站底下的链接 和淘宝网站等购物网站的友情链接如出一辙,目的在于给客户一种亲切感。 网站的右侧是客户登录和注册等连接,醒目的按钮也方便用户使用,下面是滚动式的 新闻窗口,这样的设计也给网站的总体加了分,滚动式的新闻不仅能把新闻放

13、到新闻框里, 还能给增加网站的美观性,再下面就是中国淡定银行在各国分行门户网站的链接,暗示中 国淡定银行是一家走向国际化的银行,下面是中国淡定银行淡定系列银行卡的图片转换图, 能看到中国淡定银行这个系列银行卡的样式,真正体现这是一个银行的门户网站。 图 4-1-1 ESBC 银行首页 登录 说明:用户登录,若数据库已有该用户信息,则直接登录用户主页,若没有该用户或 密码错误,则报错。 同一账户不能同时登录。 说明:在数据库中的 account(账户)表中有一 Aislocked 属性,在登陆时判断该属性 的值,若为 0 则可以登陆,若为 1 则不能登陆。在登陆账户的同时设置该属性为 1,所以

14、当该账户已登陆时,其他人在别的地方就不能同时登陆。 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 9 已注册的账户在银行经理未批准的情况下是不能登录的。 说明:和以上方法类似,数据库 account 表中有一属性 Astatue,其值若为 0 则表明银 行经理未进行批准操作,而只有银行经理有这个权限,若为 1,则说明账户可以使用,若 为 2,则说明账户处于冻结状态或者是销户状态。 图 4-1-2 个人网上银行登录界面 图 4-1-3 个人网上银行注册页面 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 10 图 4-1-4 各种登录错误页面 a.查看账户信

15、息查看账户信息 登录成功后所显示欢迎信息与登录帐号相配 说明:在登陆处理的页面中将获取的帐号赋值给一个 session 值,在登陆后的所有网页 中都可以调用这个值。在此功能上就是将数据库中该帐号的信息选择出来,并选择用户名 输出。 查询该账户信息 说明:调用 session 值,将数据库中该帐号的信息选择出来,并选择需要显示的客户信 息进行输出。 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 11 图 4-1-5 个人网上银行登录成功欢迎页面 图 4-1-6 个人网上银行账户信息页面 图 4-1-7 个人网上银行修改网银密码页面 b.行内转账汇款行内转账汇款 账户之间转账

16、09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 12 说明:用户之间转账, 步骤是 1.在转账处理页面中获取收款帐号和汇款帐号以及汇款金额。 2.将数据库中与收款帐号和汇款帐号相符合的信息选择出来 。 3. 将页面获取的收款帐号与登陆帐号进行比较,若与登陆帐号相同,则报错: 收款人账号不能与登陆账号相同,否则,就进行步骤 4。 4. 将页面获取的汇款帐号与登陆帐号进行比较,若与登陆帐号相同,则进行步 骤 5,否则,就报错:您不能使用非登陆账号进行转账。 5.将汇款帐号在数据库中所剩余额与汇款金额相减,若大于 0,则将汇款帐号 余额减去汇款金额,将收款帐号余额加上汇款金额,输出

17、:汇款成功;若小于 0,则输出:余额不足。 转账成功后,将转账记录插入操作记录表中。 图 4-1-8 个人网上银行转账汇款操作页面 c.查看余额查看余额 余额查询 在账户表中获取与登陆帐号相同帐号的余额并输出 图 4-1-9 个人网上银行余额查询页面 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 13 d.查看交易明细查看交易明细 明细查询 按时间查询交易记录,在页面上获取开始时间和截止时间,在记录表中时间在该范围 内的操作记录选择出来并在页面上输出。 图 4-1-10 个人网上银行交易明细查询页面 e.查看利率查看利率 图 4-1-11 利率查询页面 09 计 商 A1淡

18、 定 银 行 系 统 2011 年 11 月 14 图 4-1-12 个人网上银行退出提示页面 2、银行系统管理页面、银行系统管理页面 (1)各种权限职员进行登录)各种权限职员进行登录 图 4-2-1 银行内部职员后台管理系统登录页面 详细说明: 淡定银行分三种权限的职员:银行经理,普通职员,和结算员。他们分别登录跳转不 同的页面,进行各自权限的功能。登录页面可以识别两个输入框是否输入值,输入的值是 否正确,同时,我们在职员表中加入一列权限,用来防止用户进行第二次登录。 管理员登录验证中将单选按钮的值(1,2,3)传递给下一个页面,然后从数据表中取出权 限值进行匹配,然后跳转到不同的页面进行职

19、员管理。 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 15 图 4-2-2 各种特殊功能界面 (2)银行经理)银行经理 a.员工管理员工管理 银行经理可以对员工进行管理,修改其职位状态,包括离职和在职,还可 以对员工的账号登陆密码进行修改。 图 4-2-3 银行经理登录成功页面 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 16 图 4-2-4 银行经理员工管理页面 图 4-2-5 员工登录密码修改页面 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 17 b.客户状态客户状态 图 4-2-6 客户信息查看页面 c.账户状态账户状态

20、客户在注册之后,银行经理可以根据实际情况,对账户的权限进行批准, 然后客户才可以进行网上银行登录,再者,客户可以直接对账户进行销户操作, 这样账户就作废不能再登录,只有银行经理更改账户状态的值才可以激活账户。 图 4-2-7 账户状态查看页面 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 18 图 4-2-8 修改客户状态页面 d.修改利率修改利率 银行经理可以根据国家的宏观调控情况对银行利率进行修改。 图 4-2-9 修改利率页面 (3)银行出纳员)银行出纳员 a.柜台注册柜台注册 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 19 图 4-3-1 客

21、户柜台注册页面 b.客户验证客户验证 柜台每来一个客户都要对其身份进行验证,让客户提供账号和密码,如果 匹配才能对此账户进行一系列的操作。 图 4-3-2 客户操作验证页面 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 20 c.查询余额查询余额 图 4-3-3 客户查询余额页面 d.存款取款存款取款 客户可以在柜台进行存款取款业务,提供现金交与我行的出纳员,然后出 纳员点清数目,在后台管理系统中输入相对应的钱数,对客户的账户进行存款 业务,客户也可以根据账户里的余额,来进行取款操作,和出纳员说明要去多 少钱,然后从出纳员那你取得现金,出纳员则在账户下执行相应的操作。 图

22、4-3-4 客户存款取款页面 e.转账汇款转账汇款 客户在柜台可以根据需求对我行内部的其他账户进行转账汇款操作,将收 款人的姓名和账号信息提供给出纳员,然后在根据余额进行转账操作,如果余 额不足则不能进行转账操作。 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 21 图 4-3-5 客户转账汇款页面 f.查询记录查询记录 客户也可以向出纳员提出查询以往所有交易记录的权力。 图 4-3-6 客户查询记录页面 g.更新信息更新信息 如果客户的信息发生变动,希望客户根据实际情况,向出纳员提出更改账 户信息,以免我行在特殊情况下不能及时联系到本人。 09 计 商 A1淡 定 银 行

23、 系 统 2011 年 11 月 22 图 4-3-7 客户更新信息页面 (4)结算员)结算员 结算员可以查看某一个时间段银行的现金流入流出数量,记录表中有转账汇款的记录, 而转账汇款是没有现金流出本银行的,而存款和取款是会产生现金的流入和流出的。 图 4-4-1 结算员查看财务报表页面 五、相关代码及注释(部分)五、相关代码及注释(部分) 1、银行客户登陆判断。、银行客户登陆判断。 Login_ok.jsp /从客户表中查询传递的值是否正确 String isCorrect=“select * from AccountT where aname=“ + name + “ and apassw

24、ord=“ + password + “; 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 23 try ResultSet result=stmt.executeQuery(isCorrect); if(!result.next() response.sendRedirect(“passerror.jsp“);/账号或密码错误,转入错误 页面 /如果查询后有记录,说明登录验证成功。 else String as=result.getString(“Astatue“); String au=result.getString(“Aislocked“); char b=as.ch

25、arAt(0); /验证状态(Astatue)是否为1(可使用状态),反之跳转错误页面 if(b=1) char a=au.charAt(0); /验证锁定键(Aisliocked)是否为0,为0则允许登录,反之提示已登录 if(a=0) String changeauthority=“update AccountT set Aislocked=1 where aname=“ + name + “; change.executeUpdate(changeauthority); response.sendRedirect(“userindex.jsp“); else response.sendR

26、edirect(“lockpass.jsp“); else if(b=0) response.sendRedirect(“lockerror.jsp“); else if(b=2) response.sendRedirect(“lockxiao.jsp“); 2、银行职员登陆验证、银行职员登陆验证 Mangaelogin_ok.jsp Change.Jsp /在用户退出的时候讲锁定键再改回 1,这样下次本人登陆就没有问题了 String managename=(String)session.getAttribute(“managesession“); Statement change = co

27、nn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR _UPDATABLE); String changeauthority=“update StaffT set Sislocked=0 where Saccount=“ + managename + “; change.executeUpdate(changeauthority); change.close(); conn.close(); response.sendRedirect(“managelogin.jsp“);/改过之后跳转登陆首页 % 3、客户网上

28、银行转账、客户网上银行转账 /获得请求的参数。 String user1=request.getParameter(“text1“); String usernum1=request.getParameter(“text2“); String user2=request.getParameter(“text3“); String usernum2=request.getParameter(“text4“); String money=request.getParameter(“text5“); String a=“update AccountT set arest=arest+“+money+

29、“ where aname=“ + usernum1 + “; String b=“update AccountT set arest=arest-“+money+“ where aname=“ + usernum2 + “; String c=“select * from AccountT where aname=“ + usernum1 + “; String d=“select * from AccountT where aname=“ + usernum2 + “; Connection conn=null; ResultSet cc=null,dd=null; try /连接数据库

30、Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver“).newInst ance(); String url= “jdbc:sqlserver:/localhost:1433;DatabaseName=bank“; String user= “sa“; 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 26 String pass= “123456“; conn=java.sql.DriverManager.getConnection(url,user,pass); cc=stm.executeQuery(c)

31、; String clientname=(String)session.getAttribute(“clientsession“); /将输入的收款人与登陆账号进行比对,不允许相同 if(usernum1.equals(clientname) out.print(“收款人账号不能与登陆账号相同!“); else if(usernum2.equals(clientname) while(cc.next() dd=stm1.executeQuery(d); while(dd.next() float n=dd.getFloat(4); int m=Integer.parseInt(money);

32、/如果余额充足则进行转账,反之则打印错误信息 if(n-m=0) stmt.executeUpdate(a); stm2.executeUpdate(b); response.sendRedirect(“tab/ok.jsp“); /下面的代码是将转账的信息插入记录表里 String e=“select aid from AccountT where aname=“ + usernum1 + “; String f=“select aid from AccountT where aname=“ + usernum2 + “; ResultSet resulte=stm3.executeQuer

33、y(e); ResultSet resultf=stm4.executeQuery(f); while(resulte.next() String ff=resultf.getString(“aid“); String s=“select arest from accountt where aid=“+ee+“; String v=“select arest from accountt where aid=“+ff+“; ResultSet results=stm7.executeQuery(s); 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 27 ResultSet r

34、esultv=stm8.executeQuery(v); while(results.next() float hdv=resultv.getFloat(“arest“); String g=“insert into handlet (aid,htime,hin,hrest) values(“+ee+“,getDate(),“+money+“,“+hdd+“)“; String h=“insert into handlet (aid,htime,hout,hrest) values(“+ff+“,getDate(),“+money+“,“+hdv+“)“; stm5.executeUpdate

35、(g); stm6.executeUpdate(h); else out.print(“余额不足“); else out.print(“您不能使用非登陆账号进行转账!“); 4、柜台操作注册新客户、柜台操作注册新客户 /获得请求的参数。 String Cname=request.getParameter(“Cname“); String Cnickname=request.getParameter(“Cnickname“); String Csex=request.getParameter(“Csex“); String Cidcardno=request.getParameter(“Cidc

36、ardno“); String Aname=request.getParameter(“Aname“); String Apassword=request.getParameter(“Apassword“); String Cmobilephone=request.getParameter(“Cmobilephone“); String Caddress=request.getParameter(“Caddress“); 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 28 String Czipcode=request.getParameter(“Czipcode“); /

37、连接数据库 Class.forName( “com.microsoft.sqlserver.jdbc.SQLServerDriver“); String url= “jdbc:sqlserver:/localhost:1433;DatabaseName=bank“; String user= “sa“; String pass= “123456“; Connection conn=java.sql.DriverManager.getConnection(url,user,pass); Statement stmt=conn.createStatement(ResultSet.TYPE_SCRO

38、LL_SENSITIVE,ResultSet.C ONCUR_UPDATABLE); Statement stmt1=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet. CONCUR_UPDATABLE); Statement stmt2=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet. CONCUR_UPDATABLE); String insertmessage=“insert into ClientT (Cid,Cnickname,Cn

39、ame,Csex,Cidcardno,Cmobilephone,Caddress,Czipcode) values (“+Cidcardno+“,“+new String(Cnickname.getBytes(“ISO-8859- 1“)+“,“+new String(Cname.getBytes(“ISO-8859-1“)+“,“+new String(Csex.getBytes(“ISO-8859-1“)+“,“+Cidcardno+“,“+Cmobilephon /将中文转化成数据库可读的字符型 e+“,“ + new String(Caddress.getBytes(“ISO-8859

40、-1“) + “,“+Czipcode+“)“; String insertpasssword=“insert into AccountT (Aid,Aname,Apassword,Aopendate) values (“ + Aname + “,“ + Aname + “,“ + Apassword + “,getdate()“; String insertid=“insert into ClientAccountRelationT (Cid,Aid) values (“+Cidcardno+“,“ + Aname + “)“; stmt1.executeUpdate(insertpasss

41、word); stmt.executeUpdate(insertmessage); stmt2.executeUpdate(insertid); /关闭数据库连接相关的资源。 stmt.close(); stmt1.close(); stmt2.close(); conn.close(); 5、银行经理管理所有账户、银行经理管理所有账户 String isCorrect=“select * from clientt a left join ClientAccountRelationT b on a.cid=b.cid “; isCorrect=isCorrect+“left join Acco

42、untT c on b.aid=c.aid “; 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 29 isCorrect=isCorrect+“left join AccountTypeT e on c.atid=e.atid “; ResultSet rs=null; % 客户身份证 客户姓名 帐号 账号密码 网银密码 帐号名 帐号状态 帐号类型 帐号余额 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 30 6、结算员统计银行出入账、结算员统计银行出入账 =“ +begintime + “ and htime=“ +begintime + “ and

43、htime 出账: 入账: 0) out.print(innum-outnum)+“元“); else out.print(“0 元“);% 09 计 商 A1淡 定 银 行 系 统 2011 年 11 月 32 7、用户信息视图代码、用户信息视图代码 create view usermessage as select cname,cnickname,aname,apassword,Aopendate,arem,arest,awangpassword,cidcardno from clientt,accountt,ClientAccountRelationT where clientt.cid

44、=ClientAccountRelationT.cid and accountt.aid=ClientAccountRelationT.aid 六、附录六、附录 1、实训小结、实训小结 这学期,关于面向对象实训FirstBank,我们组有以下小结:刚开始,我们都觉得从 来没接触过设计一个系统,感觉非常困难,无从下手。最开始的一堂课,我们小组讨论决 定先去银行调研,因为只有先了解银行有哪些功能,这些功能是以怎样的方式实现的,银 行后台操作有哪些等,才能在后来的做项目的过程中得心应手。于是,我们在一个星期三 的下午去了工商银行进行了实地调研,银行的工作人员不仅回答了我们的疑问,还给我们 进行了详细

45、的解释,让我们受益颇多。回来后,我们就开始银行系统需要实现功能的讨论, 经过讨论与分析,以我们现在的能力,可以实现注册批准账户,查询信息、余额、交易记 录,存款取款,更改信息等。后又按照银行系统角色分配了每个人的任务。 在实训的进行中,我们遇到了很多问题。在制作好网页后,由于很多功能的实现都是 需要与数据库相连的,所以我们就花了较大的精力在数据库上。 在实现功能上,我们遇到以下问题以及如何解决: 在客户登陆网上银行后,我们需要在欢迎页面上显示欢迎登陆账号客户的姓名,且这 个账号在之后的许多功能比如显示该客户的信息,余额,交易记录等等时也需要用到,于 是,我们在验证登录的页面中将获取的账号赋值给

46、一个 session 值,在登陆后的所有网页中 都可以调用这个值,用这个值与数据库中的用户账号进行比对。 在用户之间转账时,我们觉得在转账时,账号不仅需要满足时数据库中已存在的账号, 并且收款账号不能是已登录的账号,而且不能用没有登陆的账号进行转账。于是,我们在 转账条件的判断时,加上了以上条件的判断。 在顾客或职员登陆后,要防止不能同时登陆两个账号。所以我们在账户表中加了一个 属性,未登陆时为 0,登陆后为 1,只有为 0 时可以登陆,防止重复登陆而导致交叉操作产 生的数据错误。在登录的时候将 0 改为 1,退出的时候又将其改回来。 转账成功后我们将记录插入了操作记录表中,在查询操作记录时,

47、由于从网页上获得 的日期数据值到小时为止,而从数据库中获得的日期数据值是到秒为止,两个数据无法比 较,于是我们从数据格式上进行考虑,在页面获得的数据后加上了“ 00:00:00” ,使两 个数据在格式上相同进而可以比较。 在页面链接方面,我们是将整个页面分为三个模块,我们本来是进行整张页面的链接, 但是这样的话,页面重复率太高,而且工程太大,所以我们希望可以在链接时只刷新我需 要改变的那块页面,于是我们在网上查找代码进行分析,发现只要在需要链接的地方加一 个 target,将链接目标设置为我需要刷新的那块页面,例如“mainframe” ,就可以不进行 09 计 商 A1淡 定 银 行 系 统

48、 2011 年 11 月 33 这个页面的刷新了。 在我们将每个人的功能都实现后,有进行了整个系统的检测与调试,由于每个人都是 按自己的模式对网页与图片进行命名,本以为会遇到命名重复的问题,但是比较幸运,我 们并没有发生这种情况,但是我们还是从中学到了,做一个系统要进行明确的分工,但是 分工并不是让我们各做各的,而是要进行明确的规范,使组员之间相互调节,可以使最后 工作完成时不出现命名重复而导致的多余更改。 心得:这次实训,我们觉得不仅将我们两年来所学的知识组合运用,对以前所学的东 西又重新复习与熟悉,而且在遇到我们不会而且没有学过的知识时,我们能够上网或借书 查找资料,自己去学,愿意去学,增

49、加了我们探索新知识的欲望。通过这次实训,我们还 了解了团队合作的重要性,一个项目从开始到完成是不可能靠一个人就可以成功的,需要 以整个团队不同的思想才能使整个项目趋于完美,每个人都有自己擅长或者不擅长的地方, 只有团队合作,才可以互帮互助,最终完成整个项目。 2、参考文献、参考文献 1)JSP 从入门到精通 主编:黎伟 出版社:上海科学普及出版社 2)数据库系统概论(第四版) 作者:珊 萨师煊 出版社:高等教育出版社 3)Java 语言最新案例案例实例教程 4)面向对象编程项目讲义 作者:蒋文蓉、刘敏 3、环境和软件支持、环境和软件支持 Myeclipse,tomcat 服务器,Microsoft Visio ,360 浏览器,Microsoft SQL Server 200

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1