《JAVAEE程序设计与应用开发.doc》由会员分享,可在线阅读,更多相关《JAVAEE程序设计与应用开发.doc(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 湖南农业大学课程论文 学院:信科院 专业班级:软件2班 姓名: 学号: 课程论文题目:基于JAVA EE的购书网站建设 课程名称:JAVAEE程序设计与应用开发 评阅成绩: 评阅意见: 成绩评定教师签名 日期:年 月 日 目录1 引言42 设计目的与要求43 设计任务44 需求分析55 系统设计65.1数据库设计65.2注册用户信息表65.3图书表75.4购物车表76 系统源代码87 结论148 结束语149参考文献14基于JAVA EE的购书网站建设 湖南农业大学摘要:JAVAEE开发技术是Java开发中综合性最强,Java编程应用最为广泛的一项,作为企业级的开发框架,JavaEE除了有S
2、DK基本的包支持,还有各种基于服务器,数据库等开发的工具包,在JavaEE开发中,这些工具包很大程度上简化了开发复杂项目的开发流程。提供了很多值得借鉴的可复用的开发模式。随着网络发展的日益普及化,网站服务越发朝多样化发展,许多原来要用人工进行的作业可以由计算机执行,并通过网络的途径共享结果数据。而且随着结构化数据库的日益发展完善,网络服务器所能接受的数据也更加多样化。随着网络发展的日益普及化,网站服务越发朝多样化发展,许多原来要用人工进行的作业可以由计算机执行,并通过网络的途径共享结果数据。而且随着结构化数据库的日益发展完善,网络服务器所能接受的数据也更加多样化。随着网络发展的日益普及化,网站
3、服务越发朝多样化发展,许多原来要用人工进行的作业可以由计算机执行,并通过网络的途径共享结果数据。而且随着结构化数据库的日益发展完善,网络服务器所能接受的数据也更加多样化。本文是关于运用ASP(Active Server Pages)的实现网上书店的管理和网上购买介绍,文中介绍了网络上电子交易和WWW系统的结构,提出了利用ASP与数据据结合来全面展示制作动态商业网站的步骤及管理,ASP和SQL的数据库查询,html网页的显示是现代网站的建立少不了的三要素。文中内容包括了ASP技术的简介,设计构想及其具体设计方案流程图和所应用的软件的描述。通过阅读本文,可以帮助大家对利用ASP技术来进立一个现代网
4、站的开发过程的一个初步的认识、了解。关键字:javaee.ASP. 网上书店 SQL的数据库查询 html网页1 引言在图书销售网站用计算机销售并且管理图书是一种计算机应用技术的创新,在计算机还未普及之前图书销售都是由图书管理人员手工记帐的方式来操作的.现在一般的网上书店都是采用就javabean,jsp来实现的计算机图书销售程序来帮助书馆管理员进行更有效的图书销售和管理。图书销售网站是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和网站的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求页面功能完备,易使用等特点。 经过分析,我们使用 MI
5、CROSOFT公司的NetBeans6.7.1和SQLserver2000个人版XP开发工具,利用其提供的各种面向对象的开发工具,尤其是javaEE这一体系结构来实现多层网站应用系统的开发和部署,首先在短时间内建立网站应用原型,然后,对初始原型网站进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。2.设计的目的与要求 目的:(1)学会编写简单的jsp、servlet程序;(2)方便人们上网查询购买书籍;要求:(1)掌握基本jsp和servlet编程;(2)掌握图形界面的基本布局方式;3.设计任务通过本课程设计教学所要求达到的目的是:开发和建立一个网站,实现客户在网上购买图书的功能。本网
6、站是为方便人们上网查询和购买书籍,设计本网站可以使人们了解到JAVAEE功能的强大,同时可以使设计者对JAVA有更好的掌握。这个网站分为四个模块:会员登录与注册,图书分类与管理,支付宝和购物车。4.需求分析 Java EE是一个标准的中间体系结构,旨在简化和规范分布式多层企业应用系统的开发和部署。现在Java EE规范已经被众多中间开发厂商接受并实现。我们利用这个系统就是要开发一个网站,这个网站是用来销售图书。本系统实现了以下的功能:1.用户登录:主要完成用户信息的确认,确保只有合法的用户才能使用本系统。2.基本信息:主要包括图书信息的管理、客户购买信息、图书分类信息的设置。3.销售:支付宝的
7、管理。4.购物车的实现。5.系统设计5.1数据库设计 整个系统模块可以分为两大模块:前台在线销售模块和后台商务管理模块.泛舟图书销售网站前台在线销售模块ia后台商务管理模块客户注册和登陆模块商品浏览模块购物车模块结账模块商品种类管理用户信息管理订单管理5.2注册用户信息表首先介绍会员注册系统数据库表格设计。系统数据信息比较简单,只需要一个表来存储用户的注册信息,userinfo结构如表5-1所示。表5-1 userinfo结构信息表字段名称字段类型是否为空是为关键字IDInt (20)是UsenamePasswordVarchar(12)LevelInt(2)YesEmail-addressV
8、archar5.2注册用户系统整体构架控制逻辑层表示逻辑层数据表示层信息资源层Processservletser消息驱动EJB(sendpassword)实体EJB(UserBean)会话Bean(UserBeanFacade)Logon.jspReg.jspRegsucess.jspnotFindUser.jspIndex.jsp邮件服务器MySQL数据库消息topicLogon.jspreg.jspProcessServletindex.jspregsucess.jspNotfindUser.jsp重新登录尚未注册注册登录尚未注册发送密码登录失败登录成功注册成功5.3图书表字段名字段类型是
9、否为空是否为关键字NameVarchar(15)NoyesDscriptionVarchar(225) QuantityIntNo PriceIntNopictureVarchar(225)5.4购物车表字段名字段类型是否为空是否为关键字ShopcardNoYesTotalnumIntTotalpriceReal6系统源代码 Logon.jsp登录欢迎登录系统form name=”login” method=”post” action=账户:密码:如果您是第一次使用本系统,请首先注册PublicclassProcessServlet extends HttpServletResource(ma
10、ppedName=”jms/SendPasswordFactory;Resource(mappedName=”jms/sendPassword”)private Popic sendPassword;EJBPrivate UserBeanFacadeLocal userBeanFacade;Protected void processRequest(HttpServletRequest,HttpServletResponse response)Thows ServletException,IOExceptionString operation=request.getParameter(“ope
11、ration”);if(operation.equals(“logon”)doLogon(request,response);if(operation.equals(“reg”)doReg(request,response);if(operation.equals(“retake”)doRetake(request,response);protected void doLogon(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOExceptionString id=request
12、.getParameter(“userID”);String password=request.getParameter(“password1”);String resultpage=”/notFindUser.jsp”;List users=userBeanFacade.findAll();Boolean flag=ture;For(Iterator it=users.iterator();it.hasNext()&flag;)UserBean ub=(UserBean)it.next();If(ub.getUsername().equals(id)&ub.getPassword().equ
13、als(password)resultpage=”/logonsuccess.jsp”;Flag=false;RequestDispatcher dispatcher=getServletContesxt().getRequestDidpatcher(resultpage);Dispatcher.forward(request,response);Protected void doReg(HttpServletRequest request,HttpServletResponse response)throws ServletExceptionString resultpage=”/regsu
14、cess.jsp”;Sting id=request.getParameter(“userID”);String password=request.getParameter(“password”);String password1=request.getParameter(“password1”);String email_address=request.getParameter(“email_address”);If(!password.equals(password1)request.setAtttibute(“promote”,”两次密码不一致!”);Resultpage=”/reg.j
15、sp”;elseList users=userBeanFacade.findAll();boolean flag=true;for(Iterator it=users.iterator();it.hasNext()&flag;)UserBean ub=(UserBean)it.next();if(ub.getUsename().equals(id)request.setAttribute(“promote”,”用户名已经存在!”);resultpage=”/reg.jsp”;Flag=false;If(flag)/注册新的用户UserBean newuser=new UserBean();Ne
16、wuser.setEmail(email_address);Newuser.setUsername(id);Newuser.setPassword(password);userBeanFacade.create(newuser);resultpage=”/regsucess.jsp”;requestDidpatcher didpatcher=getServletContext().getRequetDidpatcher(resultpage);dispatcher.forward(requst,response);Protected void doRetake(HttpServletReque
17、st request,HttpServletResponse response) Throws ServletException,IOException/发送消息给队列Printwriter out=response.getWriter();String userid=(String)request.getsession().getAttribute(“userid”) ;Connection connection=null;Session session=null;Try Connection=sendpasswordFactory.createconnection();Session=co
18、nnection.createsession(false,session.AUTO-ACKNOWLEDGE);MessageProducer nessageProducer=session,createProducer(sendPassword);TextMessage message=session.createTextMessage();/将用户ID发送给消息驱动EJBMessage.setText(userid);/发布消息MessageProducer.send(message);MessageProducer.close();Connection.close();Response.s
19、endRedirect(“sendpassword.jsp”);catch(JMSException ex Ex.printStackTrace;Protected void doGet(HttpServletRequest request,HttpServletResponse response) Throws ServletException,IOExceptionprocessRequest(request,response);Protected void doPost(HttpServletRequest request,HttpServletResponse response) Th
20、rows ServletException,IOExceptionprocessRequest(request,response);Public string getServletInfo() Return”short description”;7 结论这次课程设计让我更加了解JAVA EE这门课程。课设题目要求不仅要求对课本知识有较深刻的了解,同时要求程序设计者有较强的思维和动手能力和更加了解编程思想和编程技巧。这次课程设计让我有一个深刻的体会,那就是细节决定成败,编程最需要的是严谨,如何的严谨都不过分,往往检查了半天发现错误发生在某个括号,分号,引号,或者数据类型上。 程序设计时,也不要怕
21、遇到错误,在实际操作过程中犯的一些错误还会有意外的收获,感觉课程设计很有意思。在具体操作中这学期所学的数据结构的理论知识得到巩固,达到课程设计的基本目的,也发现自己的不足之出,在以后的上机中应更加注意,同时体会到java语言具有的语句简洁,使用灵活,执行效率高等特点。发现上机的重要作用,特别算术表达式有了深刻的理解。此外,这次的课程设计进一步加强了我们运用java语言进行编程。同时我也意识到,开发程序的早期计划要做的充分,以免出现程序完成后发现不足而带来的修改麻烦。虽然这只是一个小小的程序,但对我们之后的影响确实很大的。8 结束语设计此课程使我们更好的掌握了jsp、servlet的应用,以及如何在开发网站有了一定的了解,从这次课程设计中我们可以增加我们程序设计的经验,这里面还有很多不足的地方,但由于本人知识有限,没能搞出来,希望学识渊博的人继续加强,不甚感激!9 参考文献1 Java EE编程技术 M.清华大学出版社 北京交通大学出版社2 黄晓东.Java课程设计案例精编M.北京:中国水利水电出版社,2004,5.3 JSP编程入门与应用实例 清华大学出版社4 Web程序设计(第二版) 电子工业出版社
限制150内