电影订票网站的设计与实现本科论文

上传人:沈*** 文档编号:68344880 上传时间:2022-04-02 格式:DOC 页数:49 大小:1.08MB
返回 下载 相关 举报
电影订票网站的设计与实现本科论文_第1页
第1页 / 共49页
电影订票网站的设计与实现本科论文_第2页
第2页 / 共49页
电影订票网站的设计与实现本科论文_第3页
第3页 / 共49页
点击查看更多>>
资源描述
3.2 HySql相关3.3容器.3.4 Tomcat相关4系统总体设计4.1系统功能设计.4.1.1总体功能设计4.1.2处理流程设计4. 2.1数据表需求分析1引言错误!未定义书签。11研究课题的意义和背景错误!未定义书签。1.2课题可行性研究报告错误!未定义书签。2主要技术介绍.2.1MVC设计模式2.2JSP相关知识2. 3 JavaBean相关知识2.4 JDBC相关知识.3系统开发工具介绍.错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签错误!未定义书签错误!未定义书签。3. 1 MyEclipse.错误!未定义书签。4.2数据库设计错误!未定义书签。5详细设计错误!未定义书签。5.1数据库详细设计错误!未定义书签。5丄1数据表具体设计错误!未定义书签。5.2系统主界面模块设计错误!未定义书签。5.3用户注册模块设计错误!未定义书签。5.4用户登录模块设计错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签。5.5关键字查询模块设计错误!未定义书签。5. 6. 1修改头像.错误!未定义书签。5.6.2修改基本信息.错误!未定义书签。5. 6.3修改密码. 错误!未定义书签。5.7用户订单管理.错误!未定义书签。5. 7. 1购票.错误!未定义书签。5.7.2选座.错误!未定义书签。5. 7.3查看订单. 错误!未定义书签。5.8用户评论管理.错误!未定义书签。5.8.1用户发表评论.错误!未定义书签。5.8.2用八对自己发表的评论进行浏览和删除操作.错误!未定义书签。5.9用户收藏管理.错误!未定义书签。5.9. 1加入收藏. 错误!未定义书签。592用八对自己的收藏进行浏览以及删除操作.错误!未定义书签。5. 10注销退出. 错误!未定义书签。6系统测试.错误!未定义书签。6.1测试的定义以及重要性.错误!未定义书签。6.2测试的方法.错误!未定义书签。6. 2. 1需求测试.错误!未定义书签。6. 2.2界面测试. 错误!未定义书签。6. 2.3功能测试. 错误!未定义书签。6. 2.4性能测试. 错误!未定义书签。6.3电影订票网站的设计与开发一用户功能子系统测试错误!未定义书签。7结论.错误!未定义书签。参考文献.错误!未定义书签。致谢.错误!未定义书签。1引言11研究课题的意义和背景正在爆发的互联网革命席卷了生活的方方面面。当受众惊叹于足不出户就可以 欣 赏互联网所带来的视听盛宴时,网线的另一头,富于创造力的程序员己然将互联网编织 成一张涵盖社会生活方方面面,惠及白姓日常所需的高科技工具。同时,III互联网所引 导的生活方式的改变同样革新着传统行业的服务方式,电影订票网站就 是传统电影行 业适应这一变革利用Internet和电子商务的成熟技术所创造的产物。在国外,借助于 网络技术发展起步早发展快的优势,率先开展了网络销售电影票的 相关业务。而就LI前的状况来看在国内网络售票业务任然具有很大的发展空间。近儿年,我国电影行业发 展迅猛,各大院线纷纷扩张院线,每年新投入市场的荧屏数量增长显著。与院线扩张相 辅相成的是人们的观影需求显著提高。人们需要知道自己的空闲时间是否有合适的电 影可供观赏,也需要知道哪家电影院有自己需要的电彫票,同时手握电彩排挡及上映信息的电影院的经营者也急需掌握观影者的消费需 求,这种买卖双方之间信息交流上的 阻碍更催生了 “电影订票网站”发展。2008年,看够网携全国白家影院同时开通网络预订,观众可以通过登陆看购网 网 站预订影票、提前订座。观众可以随时登录相关网站查询彫讯,提询预订影票,并可 尊享一定的优惠折扣。新影联院线副总经理高军表示:“网络订票并不会对影院售票构 成利益冲突,而是相互促进,它能缓解上映大片时观众买票难的现象,也有利于影院根 据影票预售情况提前排片。”网络购票在国外早已成为电影售票的一种成熟渠道,在国 内也己蔚然成风。与看购网同时上线网络业务的还有中国电影网、网票网、时光网、新 浪网、谷歌等多家网站。他们都提供影讯服务、网络售票等服务,不过看购网所推出的 网络预订业务还属于新兴业务,也是国内第一次实现全国网络预订影票。票务预订在体 育赛事、演艺、交通票务方面并不新鲜,与单纯的售票业务相比,订票业务在满足用户 需求方面实现了很大的跃进。U前,各大电影公司和部门都广泛釆用计算机管理系统和互联网技术,推出网上 电影订票服务,大大减轻了订票、售票、检票、调度、票款管理等不能工作人员的劳动 强度,提高了整个行业的工作效率,而且在很大程度上减少了顾客的长时间排队购票的 时间和山此带给顾客的疲劳和烦躁情绪,为广大顾客提供了更加快捷、优质、有序的服 务,提高了各大影城的服务水平,也逐步树立了企业形象,赢得了消费人群的良好口碑。 这种消费形式的发展也逐渐反衬岀传统售票方式存在的诸多不足,比如实时差、交易时 间过长、运营成本高、信息无法共享以及售票过程中可能出现的其他不确定因素,更加 促进了网上电影订票项目的蓬勃发展。我们向广大用户推出的是一种全新的网上信息服务,旨在提供一个面向消费者 的 便捷、安全、高效的网上影票订购平台。1 2课题可行性研究报告以尽可能小的代价在尽短时间内确定问题是否能够解决是可行性研究要解决 的要 素之一。一般从经济可行性,技术可行性以及操作可行性来研究一个系统是否具备开发 的基本条件。成本和效益分析是经济可行性分析中最重要的内容之一。对于一个基于计 算机的开发项日要在经济方面评价它是否合理,成本和效益分析要估 计开发的花销和 系统上线之后的收益。本系统属于网页应用,应用开发软件进行开发,成本更多的体现 在劳务成本上。如果釆用自主开发方式,系统上线后,正常运转将加快电影票销售进程, 更有效地支持影城的运行,所产生的效益远大于开发花销,实现小投入,大产出。所以, 电影订票网站在经济上是可行的。信息化发展非常迅猛的今天,计算机技术被应用于各个领域中。对于影城管理,实 施本系统只需要企业内部接入互联网,配合使用先进的数据库管理技术和服务器 管理技 术,使数据的准确性与安全性得到保障,加上现有的Microsoft SQL Server 2005数据库为 设计工作提供了必要的保证。经过调研以及需求分析得出此次系统 开发的技术完全能 实现电影订票网站需要的各项功能。因此,它在技术上是可行的。本系统为一个中小的电影票预订系统冋,所耗费的硬件资源非常少,企业的电 脑和服务器在硬件和软件上都能够满足需求,因此,本系统在操作上也是可行的。2主要技术介绍2.1MVC设计模式每个设计模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决 方案的核心。通过这种方式,我们可以无数次地使用那些已有的解决方案,无需再重复 相同的工作。开发中常用到的设计模式主要有MVC设计模式,简单工厂 模式等。其中MVC设计模式是最常用、最核心的一种设计模式,用来开发JSP/Servlet或者J2EE的相 关应用。本项LI就釆用了该种设计模式。以下是对MVC的详细介绍:M指的是模型层(Model),开发人员在此编写代码来实现需求人员根据客户要求 编写的需 求上的各种功能,数据库管理员在此对数据库中的数据进行各种操作,如增加字段,减 少字段,删除字段,修改字段内容等,这一部分通常用javaBean来实现,文中相应部分 会对javaBean进行详细的阐述。V指的是视图层(View),美工人员、询台设计人员在此进行前台页面的设计与功 能的展 示,这一部分一般是用html页面或是jsp页面来显示。C指的是控制层(Controller),在此可以进行业务逻辑的实现或是请求的转发,一 般用servlet来实现。2.2JSP相关知识JSPI习是Java Server Pages的简称,它实际上就是一种动态的Java页面。JSP将网页 逻辑与网页设讣和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序 的开发变得迅速和容易。JSP的运行原理为JSP在首次载入时被翻译成Servlet文件化java), JSP引擎调用java编译器将*胞力编译成cbss,然后JSP引擎调用JVM执行*.class,将运行结 果返回给服务 器,服务器封装响应后返回给客户端。JSP的生命周期共分为三个阶段,分别是:翻译阶段,编译阶段,执行阶段。其 中,翻译阶段是指当容器接收到客户端第一次对JSP的请求后,先判断被请求的JSP是 否存在,若不存在返回404错误;若存在,则将该JSP先翻译成一个Servleto编译阶段 是指将Servlet的源文件编译成一个字节码文件,然后山容器将其装在进虚拟机并实例 化(单例)。执行阶段是指调用Servlet的init()A service方法、destroyoo特别需要补充 说明的是,如果被请求的jsp源文件内容发生变化,那么要重新将jsp翻译成Servlet,再 编译、装载和实例化,最后运行Seivletn如果笫二次请求jsp时,此时若被请求的jsp已 经有对应的Servlet实例,那么就直接运行该ServletoJSP中的元素主要由脚本元素,指令元素,动作元素三种。脚本元素乂分为声Rfj(Declaration),表达式(Expression),脚本(Scriptlet)三类。值得注意的是在表达式 中着重强 调了9中隐含对象,以下是详细说明。pnge对象:page对象代表JSP页面本身, 更准确 的说它代表JSP被翻译后的Servlet:pageContext对象:是avax.ser4et.jsp.pageContext接 口, 提供了对JSP页面内使用到的所有对象及名字空间的访问,提供了儿种对页面属性的访 问,允许向其他应用组件转发;request对M: request对象是HttpServletRequest接口的实 现类,封装了客户的请求信息,request的生命周期由JSP容器控制,当接收到一个客户 端请求,JSP容器创建并封装request对象,丁1请求处理完毕request对象被销毁;session: 处理客户端与服务端的会话,从客户端连接到服务端开始,session对象用来保存每个用 户的信息, 以便跟踪每个用户的操作状态, 其中,session信息保存在容器里,session的ID保存在客户机的Cookie中,用户首次登陆系统时容器会给用户分配一个唯一的session id标识,用于区别其他的用户;application对象:保存Web应用程序 中共有的数据,可 存放全局变量服务器启动后自动创建application对象,该对象一直 有效,直到服务器关 闭。用户对该对象属性的操作将影响到其他用户;config对象:config对象是JSP页面通 过JSP容器进行初始化时被传递的对象,封装了JSP配置参 数的信息。可读取web.xml中配置的初始化参数;out对象:out对象用来向客户端输出内容,并管理服务器上输出 缓冲区。out对象被封装成javax.servlet.jsp.JspWriter接口。可以使用page指令来改变缓冲 区大小;exception:exception对象实现java.lang.Throwable接口,用来处理JSP在执行时 发生的错误和异常.exception对象需要在page指令中isErrorPage属性设为trueo值得一提 的是表 达式翻译进Servlet后变成了out.print(expression),该代码处于JspService()方法中。并且在此过程中expression都一律被转换成字符串后再写到输出流out(JspWriter)中。另 夕卜,expression中不能有分号(;)。在指令元素中,主要有page指令(作用是 利用page指 令中的属性可以和容器进行通信,这些属性的设置对整个JSP都有影 响),include指令 (作用是在一个页面中导入另一个页面的内容),taglib指令(作 用是指定在JSP中要使用的标签描述文件(*.tld)的路径)。2.3JavaBean相关知识作为一个动态网站开发语言,JSP在现代编程中已经越来越受大家的青睐。 而JSP + JavaBean更加成为了一个完美的组合,并且这个组合己经发展成为了一种 广泛使 用的JSP程序的标准。JavaBean是Java中的可重用组件,是一种普通的Java类,它实现了Serializable接 口,它拥有无参构造器,它有相应的属性,并且相应属性有对应public的settei和getter oJavaBean按照位置分为:可视化JavaBean,它位于客八端,如在Swing中处理 事件的JavaBean:不可视化JavaBeanJi于服务端,用于封装数据信息,业务,数据。为什么使用JavaBean呢?JavaBean作为一个可重用的组件,可以用来封装数 据信 息,业务,数据访问,事物控制逻辑的代码。也可以用来封装JSP中的一些脚本,便于 重用,可以减少jsp中脚本的使用。2.4JDBC相关知识JDBC使我们用Java语言编写的软件具备和数据库交互的能力,简而言之就是一 种连接数据库的Jav“语言。JDBC和ODBC相比有以下儿个有点:没有指针;没有ODBC复杂;是纯Java语言。 同时这也是JDBC深受大众喜爱的原因。JDBC涉及到了JDBC的API, API能以一致的形式访问不同类型的关系型数 据库, 并且API本身就是Java语言的组成内容。API包括一系列的接口:山Sim公司制定,山 数据库软件程序员使用。还包括接口实现类:山数据库厂商实现。JDBC驱动程序是山Sun公司所制定的JDBC接口实现类的集合,山数据库厂 商提 供,不同数据库其JDBC驱动程序是不同的。JDBC驱动程序山以下四种类型 实现:(1)JDBC-ODBC桥:将对数据库的调用转嫁为对ODBC的调用,需要在Java程序所在 的机器安装ODBC驱动管理器,效率差,不能跨平台;(2) JDBC程序山二部分组成,一部分用Java编写,一部分是其它语言编写的二 进 制代码。(3)纯Java,将对数据库的调用转嫁为中间服务器的调用同;(4)纯J“va,直接和数据库进行交互。对相关代码进行了优化,性能最高。JDBC的具体使用如下:(1) 注册Driver - oracle.jdbc.driver.OracleDriver方式一一 :Class.forName(Horacle.jdbc.driver.OracleDriverH);方式二:Driver driver = new Driverlnipl();DriverManager.registerDriver(driver);方式三:-Djdbc.drivers=oracle.jdbc.driver.OracIeDriver(2) 获得Connection方式一:Connection conn = DriverManager.getConnection(url,user,password);方式二:Driver driver = new Driverlnipl();Connection conn = driver.connect(urLpro);(3) 创建StatementStatement stmt = conn.createStatement();PreparedStatement pstmt =conn.prepareStatenient(sql);(4) .执行SQL语句实现和数据库交互,传输SQL语句到数据库并执行SQLResultSet rs = stmt.executeQuery(sql);int i = stmt.executeUpdate(sql);boolean flag = stmt.execute(sql);实现和数据库交互,传输参数值到数据库并执行SQLpstmt.setlnt( 1,100);pstmt.setString(2,zsn);pstmt.setDate(3,Date. valueOf(Hl 979-9-T);ResultSet rs = pstmt.executeQueryO;int i = pstnit.executeUpdate();boolean flag = pstmt.execute();(5) 处理结果集a)使用结果集(ResultSet)对象的访问方法获取数据;a. next():T一 个记录b. first ():第一个记录c. last ():最后一个记录d. previous ( ) :Jt一 个记录b)通过字段名或索引取得数据c)结果集保持了一个指向了当前行的指针,初始化位置为第一个记录前。(6) 关闭对象、释放资源,一般推荐先构建的后释放一般在finally里定义;a)首先关闭记录集;b)其次关闭声明;c)最后关闭连接对象。3系统开发工具介绍3.1MyEclipseMyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非 常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse企业级丄作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是 对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器19】 的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发 环境,包括了完备 的编码、调试、测试和发布功能,完整支持HTML, Struts,JSP, CSS, Javascript,SQL, Hibernate1101o本项U的开发与运行就是运用了MyEclipse。3.2MySql相关本系统主要运用了Mysql数据库。Mysql是关系数据库管理系统(DBMS),它最初是Sybase和AshtonTate公司共同 开发 的,并于1988年推出了第一个OS/2版本。Mysql近年来不断更新版本,1996年,推出TMysql6.5版本;1998年,Mysql 7.0川版本和用户见面;MYSQL是于2005年推出的 版本。Mysql特点:(1)真正的读者机/服务器体系结构。(2)图形化用户界面,使系统管理和数据库管理更加直观、简单。(3)丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。(4)Mysql与Windows NT完全集成,利用了NT的许多功能,如发送和接受消息, 管理登录安全性等。Mysql也可以很好地与Microsoft BackOffice1121产品集成。(5)具有很好的伸缩性, 可跨越从运行Windows95/98的膝上型电脑到运行Windows 2000的大型多处理器等多种平台使用。(6)对Web技术的支持山】,使用户能够很容易地将数据库中的数据发布到Web页 面上。3 3容器容器是Web Server中的其中一个组成部分,它的主要工作就是管理部署在Web Server上的web应用的运行(装载和卸载web应用)以及这些web应用中的web组件(serveltjsp等)的生命周期。本系统页面采用JSP,所以对应的容器采用ApacheTomcat6.0,在Tomcat中容器的名字 叫Catalinao既然是JSP/Servlet,那么它当然是不能直接运行的,必须把它放到某种运行环 境中,它才能发挥它的作用。这个环境就是我们所说的容器。容器也是Java程序,它主 要功能除了为Servlet提供环境。客户端想服务器发送数据,遵循的是HTTP协议的数据 格式。在客户端和服务器端,可能存在这不同的编程语言编写的程序,比如java,C+的 等等。各种语言都有自己用于处理HTTP协议数据的方法(类),为了使用j叽提供的各 种HTTP处理相关的类,必须将HTTP协议下的数据做一定的转换,转换成一些javn object,这样才能使用jav“的方法进行数据处理W同理,当这些处理完成,乂需要将这些java object转换回HTTP协议下的数据,反馈给客户端(JSP/Servlet当然存在于服务器端)o JSP/Servlet容器就 扮演了完成这个双向转换的角色。3.4 Tomcat相关Tomcat11是Apache的一个开源的项LI。Tomcat是山Apache软件基金会卜属 的Jakarta项U开发的一个Servlet容器, 按照SunMicrosystems提供的技术规范, 实现了对Servlet和JavaServer Page(JSP)的支持,并且提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat等。由于Tomcat本身也内含一个HTTP服 务器,它也可以被视作一个单独的Web服务器。但是,不能将Tomcat和Apache Web服 务器混淆,Apache Web Server是一个用C语言实 现的HTTP web server:这两个HTTP web server不是捆绑在一起的。Apache Tomcat包含了 一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。4系统总体设计4.1系统功能设计4.1.1总体功能设计如图4为系统整体功能结构图:如图4.2为系统流程图开始图4.2电影订票系统一用户功能子系统数据如图4.3为系统ER|头像票捡个人传息訂单$廃那池址)禺幺电话(影序名念紀名豕)丿仗教乡片*)幺/下映对)(、简介Q为 亦讷T步评图4.3电影订票系统一用戸功能子系统E-R图(3)数据删除流程4.1.2处理流程设计(1)数据增加流程添加信息时,编号字段山系统自动生成,且不能修改,其他信息山用户输入,之后对数据进行合法判断,合法则写入保存至数据库,不合法重输。如图4.4所示。图4.4数据增加流程图(2)数据修改流程在修改信息时,先选中一条待修改的记录,然后直接输入数据,判断合法性,合法则保存至数据库,不合法重新输入。数据修改流程图如图4.5所示。当用户选定一条记录时,单击删除按钮,会提示用户是否确定删除,然后删除数据库 相关内容。数据删除流程图如图4.6所示。图4.6数据删除流程图4 2数据库设计421数据表需求分析用户表:用于存放用户的一些信息。此表中设计12个字段。影院表:用于存放影院的一些基本信息。此表中设计6个字段。影片表:用于存放正在热映的影片的信息。此表中设计9个字段。订单表:用于存放用户已生成的订单的信息。此表中设计8个字段。影评表:用于存放用户所发表的影评的详细信息。此表中设计5个字段。收藏表:用于存放用户收藏的影片。此表中设计3个字段。5详细设计5.1数据库详细设计5丄1数据表具体设计1用户表:用于保存用户的注册信息。此表共有12个字段,“name”是主键,id是 唯一 约束。表5.1用户表(users)名称字段名称数据类型长度非空(1可空)用户idIdint40用户名Namevarchar501用户密码Pwsvarchar501真实姓名Truenamevarchar501用户性别Sexvarchar501身份证号Idcardvarchar501联系电话Phonevarchar501联系地址Addressvarchar501邮政编码Postalcodevarchar501电子邮件Emailvarchar501头像Portraitvarchar501身份Statusvarchar5012影院表:用于存放影院的一些基本信息。此表共有6个字段,hame”是主键,id是唯一约束。表5.2影院表(cinema)71称01称字段名称数据类型长度非空(1可空)影院idIdint40彫院名称Namevarchar500彫院地址Addressvarchar501电话Phonevarchar501影院介绍Introducetext1影院图片地址Pathvarchar10013影片表:用于存放正在热映的影片的信息。此表共有9个字段,id是唯一约束。表5.3影片表(movie)name”是主键,名称夕1称字段名称数据类型长度非空(1可空)影片idIdint40影片名称Namevarchar1000导演Directorvarchar1000主演Protagonistvarchar10001片长Filmlengthvarchar501简介Pathvarchar1001上映时期Beondatetime1下映时期Downondatetime1影片图片地址Pathvarchar10014订单表:用于存放用户己生成的订单的信息。此表共有8个字段,id是唯一约 束。表5.4订单表(orders)名称夕i称字段名称数据类型长度非空(1可空)订单idIdint40用户idUsersint41影厅Hallint41播放Playsint41座位Seatint41价格Priceint41日期Datesdatetime1订单类型Typevarchar5015影评表:用于存放用户所发表的影评的详细信息。此表共有5个字段,id是唯一约 束。表5.5影评表(review)名称夕i称字段需称数据类型长度非空(1可空)影评idIdint40用户idUsersint41影片idMovieint41影评内容Contenttext1日期Datesdatetime16收藏表:用于存放用户收藏的影片。此表共有3个字段(users, movie)”是 主键,id是唯一约束。表5.6收藏表(collection)名称名欷字段名称数据类型长度非空(1可空)影评idIdint40用户idUsersint40影片idMovieint405 2系统主界面模块设计用户进入后第一眼看到的就是网站的首页。首先是一张大图片,通过图片上的按钮可以 进行浏览,初步了解最近正在热映的影片。图片上有用户注册、登录两个按钮。图片的 下面,是首页的正文部分,有对影院影片的简单介绍。当用户未进行登录时,可以对影 院、影片进行浏览。首页的实现代码如下:影院、影片基本信息的浏览: getServerName()+-:n+request.getServerPort()+path+Array Li st cinema = array.getCinema();AmyList movie = array.getMovie();% 设为首页:function SetHome(obj)var url=window Jo cation.href;tryobj.style.behavior=*url( #default #homepage): objsetHomePage(iirl);catch(e)if(scape) try netscape.security.PrivilegeManager.enablePrivilege(HUniversalXP帳天$禾城连城金该国际彩城夫悦tfiW:E邀(E尸杭刘228齐逹呢广坊3三枢】、2岳览址:为笼51区上丰后仅主广场】恥0茅里约大百脸2SEER釜闵从氏2王:煤乂听.杰克必.遥決.万凯应城義悒星影城大光闸北(Z向茶O&M6号大便glOHI徐生演:用冬币.特虽新nixmti札处恪湛芋绒总龙卑E融的你主演:约融皑as, sin玛执皿坦尼明丽岳影城佰湖兀爲东我目南则尢恬52,号妙大炷广站大丸明影恢MM:或口区广灵二践2?号6枝幼11:libEtifl江庇”2号诺狂划天地广场Difiia怙王淞:它班斡窗圧匚音上田車& 西磁空主漬:序几怪纶WL王期臼日16火主漠:低徊丸膨念一,牛玉林口 任对图5.7网站首页1曲闹猫HiW:徐女否络182081椎1159水赵瓷爱犬布局Connect14);(catch (e) alert(”此操作被浏览器拒绝!n请在浏览器地址栏输Auabout:configM并回车n然后将Lsigned.applets.codebase_principal_support的值设置为true;双击即 可。”)var prefs =Components.classes *mozilla.org/preferences-service;rgetService(Components.inter faces.nsIPrefBranch);prefs. setCharPrefCArowser. startup. homepageAurl);)添加到收藏夹function AddFavorite()var url=window.location.href;trywindow.externaLaddFavorite(url,n*catch(e)trywindow.sidebar.addPanel(H*n, url,);catch(e)alert(Hijl入收藏失败,请使用Ctrl+D进行添加”);在首页的设计中,还实现了图片自动切换的效果。代码如下:$(function()var oPic=$( #slider_pic ).find( ul*);var oImg=oPic.find( li);var oLen=oImg.length;var oLi=oImg.width();var prev=$(H#prevn);var next=$(H#next);oPic.width(oLen*970);var iNow=0;var iTimer=nulI;prevxlick(function() if(iNow0)iNow;ClickScroll();)next.click(function() if(iNowanimate(left:-iNow*970)5 3用户注册模块设计要想在网站上进行订票、 选座、 发表评论、 将影片加入收藏等操作时用户必须要有自 己的ID号,这就是注册。注册时,用脚本语言进行信息的控制。用户名、密码、真实姓名、性别、身份证号为 非空,电话号码、邮政编码必须为全数字的,电子邮箱地址必须是有效的。当用户填 写信息完毕时,可通过点击“注册”按钮完成注册。当用户对自己填写的信息不满意 或有错误时,可通过“重置讨安钮进行信息的重新填写。图5.8用户注册具体实现代码如下:if(type != null & type.equals(HregH)String args = ”name”,”pwdVtnienameTsex”,”idcarcTTphone”,address,postalcode,email);String row = H;String val =for(int i = 0;i args.length;i+)if(i = args.length-l)row += argsi;val += MH+request.getParameter(argsi)+HHI;elserow +二jrgsi+;val += M】+request, get Parameter(args i )+HH;String sql = insert into users(n+row+M) vakies(n+val+H)M;responseText = ib.insert ANDupdateANDdel(sql);)5 4用户登录模块设计用户注册完成后,通过用户名、密码进行登录。登录成功后进行选座、购票、评论、 订单查看、评论管理、收藏等操作。当用户名密码输错时,可通过“按钮”进行重 新 输入。用户登录用户名:密码:图5.9用户登录具体实现代码如下:String name = request.getPiuameter(HnameH);String pwd二request.getParameter(npwdH);String sql = select * from users where name=H+name+*Mand pwd=H+pwd+MH;String args = id”riiamerpwd”,”skUus;SelectBean sb = new SelectBean();AmyList al二sb.selectRow(args, sql);String responseText =if(al = null II al.size() = 0)responseText = T;)elseHttpSession session = request.getSession();session.setAttribute( userslogin al); responseText =M2M;)用户登录成功后,首页的图片上将显示“我的影评”、“我的订单”、“我的收藏”、“修改密码”“修改头像”、“修改信息”、“注销退出”这7个按钮。具 体 实现代码如下:用户注册div id=9clickjogmuclass=f,clickjogin_reg11style=Hposition: absoluteytop: O;right: 10p农用户登录注销退岀 修改密码div id=uclickKfodijyportrait class=llclickjogm_regustyle二 ”position: absolute;top:0/?x;right: 21 Opx修改头像修改基本信息我的订单div id=KclickKshouc/iangJclass=,clickjogin_regnstyle=Mposition: absolutetop:0 x;right: 51 Op収我的收藏我的影评5.5关键字查询模块设计用户可以通过关键字进行影院、影片信息的查询。影院名称艾柚5电濟堆址 安区比克目829号4技(适马甘璟齐曙)电话:02卜3258们88肮谊左区汇撷fi亮电龄3Q3号电话:D2卜3553808连城因标彩氛Wit:乐劣区沪衣公诒22&磔夸怪1 2悔电话:021-5013T8S6tflU:亲左靳E上丰电话:02E矽6900大悅域新龍參城Wt:北岳】66号大仪城】(HI辖电话:021-J639T050/3652T206大光明wt:艮东対区再杲痒s於号|Aers 1减话:02I-637S0333伯诅乐大光卿城也址:虹口E广戈二162巧乌纟您电话:,:tf无话Wt:京山区壮丹工樹3】8号天施广必枝四冬电话:021-36555500与混:袒翎里约大目险2主満:海甌艾落甘恪岳吉饭矣国臥长2Wi:养隊主济拽文断,衣克也多亂万鼠昔同宴的你与述:邦取主洎:5A#SiiJ8S,格不李烬目王律约轴尼德巴1UI-玛圮住罗PS西8天空主満:竝旺罗务何U匸无黒抑?5白盼訪:刁棚英孩之&与矛:Ss王浴:何回东用臥&一,午9北比侵S8图5.10关键字查询具体实现代码如下:通过关键字查询影院:通过关键字查询影片:5.6修改个人信息模块设计561修改头像用户登录成功后,可以浏览自己当前头像并且对自己的头像进行修改。图51修改头像具体实现代码如下:int responseText = 0;InsertUpdateDelBean ib = new InsertUpdateDelBean();String portrait = request.getParameter(HportraitH);HttpSession session = request.getSession();ArrayList userslogin = (ArrayList)session.getAttribute(HusersloginH);String args = npoitrait;String row =for(int i = 0;i args.length;i+)if(i = args.length-l)row += argsi+H=M+reqiiest.getParameter(argsi)+HH,;elserow += argsi+H=M+request.getParameter(argsi)+Jn;String sql = update users setH+row+Mwhere id= H-userslogin.get(O); responseText = ib.insertANDupdateANDdel(sql);Print Writer out = null;try out = response.getWriter(); catch (IOException e) e.printStackTrace();out.print(responseText);out.close();return null;562修改基本信息 用户登录成功后,可对自己的基本信息内容进行修改。饱改信息图5.12修改基本信具体实现代码如下:if(type != null & type.equals(HupdateH)HttpSession session = request.getSession();AiiayList userslogin = (ArrayList)session.getAttribute(HusersloginH);String args = phone,address*,postalcode,email;String row = M;for(int i = 0;i args.length;i+)if(i = args length-1)row += argsi+n=H,+request.getParameter(argsi)+MH;elserow += argsi+=MH-request.getParameter(argsi)+n,r;String sql =Hupdate users setn+row+Hwhere id=M+userslogin.get(0); responseText = ib.insertANDupdateANDdel(sql);Print Writer out = null;5.6. 3修改密码用户登录成功后,可以对自己的密码进行修改与更新。图5.13修改密码具体实现代码如下:String type = request.getParameter(ntypeH);String newpwd = request.getParameter(MnewpwdH);HttpSession session = request.getSession();int responseText = 0;if(type != null & type.equals(nusersn)ArrayList userslogin = (ArravList)session.getAttribute(HusersloginH);String sql = update users set pwd=H,+newpwd+Hwhere id=H+userslogin.get(0);InsertUpdateDelBean ib = new InsertUpdateDelBean();responseText = ib.insertANDupdateANDdel(sql);5.7用户订单管理用户登录成功后,可以通过购票、订座操作进而生成订单。并且在“我的订单”中进 行查看。以下是详细介绍。5.7.1购票用户浏览某一影片,确定要购票时,点击购票按钮,弹出一个对话框。对话框中可 以 选择座位号,支付方式默认为支付宝。点击“提交”按钮时购票成功,点击“重置“按钮时重新进行购票。请选择座位号:1支付方式:支讨宝(0提交蒔重置图5.14购票具体实现代码如下:int responseText = 0;HttpSession session = request.getSession();Array Li st userslogin = (ArrayList)session.getAttribute(MusersloginM); if(userslogin = null IIuserslogin.size() = 0)responseText = -1;elseInsertUpdateDelBean ib = new InsertUpdateDelBean();String args = hall”,”plays”,seat”,price;String row =String val =;for(int i = 0;i now()/购票)elserow += argsi+u/f;val +=u-+request.getParameter(argsi)+nn;String sql =Hinsert into orders(M+row+n) vakies(n+val+H)n;responseText = ib.insertANDupdateANDdel (sql);)PrintWriter out = null;5.7.2选座用户浏览某一影片,确定要订座时,点击购票按钮,弹出一个对话框。对话框中可 以 选择座位号。点击“提交”按钮时订座成功,点击“重置“按钮时重新进行订座。所 订的座位必须于电影开演前半个小时换票,否则系统将自动删除相应订单。订座图55订座具体实现代码如下: 座位的实现:String id = request.getParameter(HidH);AHBean ab = new AllBean();AmyList al = ab.getHallCinema(id);String args = id”,cinema,name”,seatsum”;数据JSON序列化JSONArray list = new JSONArrayO; for (int i = 0; i al.size(); i+) AmyList alRow = (ArrayList)aLget(i);JSONObject obj = new JSONObject();for(int n = 0; n getParameter(argsi)+HV,;String sql = insert into orders(n+row+J) values(n+val+rOn; responseText = ib.insertANDupdateANDdel(sql);PrintWriter out = null;out = response.getWriter(); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace();out.print(responseText);out.close();return null; 5.7.3查看订单用户在购票或是订座成功后,页面将主动跳转至“我的订单”页面。里面显示的有 订 单类型,即显示是购票还是订座,还有就是相关影院及影片的信息。删1璀斶便晰 鹼?20WH 18:00 20KD5201M5埠斷20HKJ鴨2戈菇薩訓2T載出2015-M 10:00 W-2S 11:5)逛翫20IM怖13瞒熾繃3D闌號2014-D5-IO I?:0020K-D5-I01 M0解俪20IHHI谯4然爲悝訓W12:00200-2&13:40飛 &阮201M4-21瞻图5.16查看订单具体实现代码如下: %for(int i = 0;i /users/cinemuJnfor.jsp ?id=,zx%=cinema.get(l) %td align=ucentexhref=r/users/nrovieJnforJsp?/J=rx%=movie.get( 1) %td align二ce”刃”v%二alRow.get(4)%号7E5.8用户评论管理用户登录成功后,可以对相应影片进行评论,并且在“我的评论”里可以浏览我进 行 的评论以及可以对评论进行操作。以下是详细介绍:5.8.1用户发表评论用户登录成功后,当浏览影片时,可以对自己感兴趣的影片进行评论。点击“提交” 按钮时发表评论成功,点击“重置“按钮时可重新发表评论。发表影评田图5.17发表影评具体实现代码如下:int responseText = 0;HttpSession session = request.getSession();AirayList userslogin = (ArrayList)session.getAttribute(MusersloginH); if(userslogin = null IIuserslogin.size() = 0)responseText = -1;)elseInsertUpdateDelBean ib = new InsertUpdateDelBean();String args = Hmovie HcontentHj;String row =String val二;影评内咨:for(int i = 0;i args.length;i+)if(i = args.length-l)row += argsi+H,users,dates11;val +=+request.getParameter(argsi)+nJ+usersIogin.get(0)+now()H;elserow += argsi+H,H;val +=,Hn+request.getParameter(argsi)+HH;)String sql = ”insert into review(M+row+M) values(H+val+H)H; responseText = ib.insertANDupdateANDdel(sql);Print Writer out = null;5.8.2用户对自己发表的评论进行浏览和删除操作用户在发表评论成功后,页面将主动跳转至“我的影评”页面。里面显示的有影评 对 象(即对哪部影片进行评论)、影评内容以及影评时间。不仅如此,用户还可以对自己 的影评进行删除操作。Sring review=request.getParameter(nreviewH);if(review != null & !review.equals(-n)sql =Hdelete from review where id=n+review;1的瞅2345删除评论的具体实现:魏!图5.18删除影评B9201HHI 14:50琥2O3HHI 14:03掘201H1-2114:02 B201 HHI U:0l堰201H4-2113:58能responseText = ib.insert ANDupdateANDdel(sql);5.9用户收藏管理当用户在浏览影片时,如果对某一影片感兴趣或是喜欢某一影片,可以点击影片信 息 页面的“加入收藏”按钮,进行影片的收藏。对应的,在”我的收藏“中也可以看到 具体信息。以下是详细介绍:5.9.1加入收藏用户登录成功后,在浏览影片时对某一影片比较感兴趣,可以点击“加入收藏”按钮对该影片进行加入收藏操作,弹出框显示收藏成功。影片信息将被添加到“我的收藏”中。如该影片己收藏过,用户再次点击“加入收藏”按钮时将会弹出对话框, 显示“此影片您已收藏,不可巫复收藏。jrr20H系纯消息20M确定图5.19添加收藏具体实现代码如下:int responseText = 0;HttpSession session = request.getSession();AiiayList userslogin = (ArrayList)session.getAttribute(MusersloginH); if(userslogin =null II userslogin.size() = 0)responseText = 2;elseInsertUpdateDelBean ib = new InsertUpdateDelBean();String args = HmovieH;String row = M;String val二for(int i = 0;i args.length:i+)if(i = args, length-1)row += argsfiJ+Ausers;val +=nH+request.getParameter(argsi)+ V +userslogin.get(0); elserow += argsi+AH;val +=,MH+request.getP
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!