基于javaEE文章发布系统设计与实现_第1页
基于javaEE文章发布系统设计与实现_第2页
基于javaEE文章发布系统设计与实现_第3页
基于javaEE文章发布系统设计与实现_第4页
基于javaEE文章发布系统设计与实现_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北方民族大学学士学位论文论文题目: 基于java EE文章发布系统设计与实现 院(部)名 称: 计算机科学与工程学院 学 生 姓 名: 专 业: 学 号: 指导教师姓名: 论文提交时间: 论文答辩时间: 学位授予时间: 北方民族大学教务处制I基于java EE文章发布系统设计与实现32基于java EE文章发布系统设计与实现摘 要进入21世纪,随着计算机科学的发展,文章在线阅读在日常生活中的应用越来越广泛。本文研究了基于Java EE技术的文章在线发布系统,与普通的静态网页相比,它的特点是与用户交互性较强,具有用户在线发布,实时阅读等优点。计算机是智能化的,高精确的,它能使一些繁琐的工作变得井井有条。例如:查找方便、可靠性高、存储量大、保密性好、无寿命限制、成本低等。这些优点能够大大的减轻员工的负担,提高办事效率。本论文主要内容如下:(1)介绍了开发工具及开发环境配置;(2)介绍了系统开发的主要流程;(3)系统功能的设计与实现,包括用户登录、用户注册、用户信息管理、文章发布、文章删除、文章编辑等功能模板;(4)建立实验网站并测试。关键词:文章发布系统,tomcat,oracle 11g, jsp Articles Published System Based on Java EEDesign and ImplementationAbstractIn the 21st century, with the development of computer science, reading articles online in their daily lives more and more applications. In this paper, the Java EE-based technology, the article published on-line systems , and ordinary static pages, it is characterized by strong interaction with the user, the user has published online, real-time reading, and other advantages. The calculator is what intelligence turn, high precision of, it can make some tedious works become tidy. For example: Check to seek the convenience, credibility high, save to have great capacity, confidentiality good, have no life span restrict, low etc. of cost. These advantages can lighten the employees burden consumedly, the exaltation handles affairs the efficiency.This paper reads as follows: (1) introduced a development tool and development environment configuration; (2) introduced the system of the main process; (3) system design and implementation of, including user login and user registration, published articles, article, and other management functions template; (4) the establishment of the experiment and test site. Key words: articles published System ,tomcat ,oracle 11g , jsp目 录摘 要IAbstractII1 前 言12 开发背景及开发环境12.1项目研发背景及趋势12.2系统运行环境12.2.1系统运行环境和开发环境12.3.1 MyEclipse简介12.3.2 Oracle 11g 简介22.3.3 Tomcat简介22.3.4 Java EE简介33 客户关系管理系统概述63.1系统开发模型63.3系统体系结构64 系统管理模块需求分析84.1系统需求分析84.1.1系统功能分析84.1.2系统用例分析94.2数据库需求分析94.2.1系统数据表94.2.2系统管理模块E-R图104.2.3 数据字典104.2.4数据库关系图114.2.5数据流图描述125 文章发布系统设计与实现145.1系统登录界面设计与实现145.1.1文章发布系统登录界面145.1.2登录程序代码145.2注册页面的设计与实现155.2.1 注册页面的界面设计155.2.2 注册程序代码165.3系统主页的设计与实现175.3.1系统主页界面175.3.2系统主页程序代码185.4修改基本信息设计与实现195.4.1修改基本信息界面195.4.2修改基本信息程序代码205.5 用户文章管理设计与实现215.5.1 文章管理界面215.5.2 文章管理代码225.6文章留言设计与实现245.6.1文章留言界面245.6.2文章留言程序代码256 系统的测试276.1 系统测试的定义276.2 系统测试主要内容276.3 测试结果29结束语30致 谢31参考文献321 前 言计算机技术的飞速发展,为人类的进步注入了新的活力。新的技术为人们带来的是更快捷、更可靠的服务。伴随着网络的出现,网页逐渐融入人们的生活。快速及时的信息浏览,五彩缤纷的网上信息,使网络与人们的生活息息相关,于是世界上又出现了第三媒体Internet。它打破了地域限制,真正使信息得以共享,改变了人们的工作和生活方式。随着Internet的发展,静态Web站点的开发与维护变得越来越困难,一方面信息的不断增加和变化,使站点维护人员不得不经常修改他们的网页,特别是基于数据库驱动的Web站点更是如此,随着Internet上信息量的增多和交互性的加强使HTML显得越来越难以胜任。另一方面静态网页由于不能与浏览者进行有效交互,使人们感到越来越乏味,而不愿意再一次地进入同一站点。所以开发动态网页或动态内容成了越来越多的站点所追求目标。所谓动态内容是由每一个用户按照自己的需求发出请求而特殊制作的Web网页同时,随着企事业单位的信息化普及,越来越多的文章管理系统应用在了知识管理中。如果采用传统的静态页面进行保存文章内容,那么,管理员每天不得不花费很大的精力来制作网页。但是如果利用数据库和动态网页技术来保存文章信息,就可以很大程度上减少信息管理人员的工作量,提高了工作效率。 本论文介绍了文章发布系统的开发过程,包括项目的开发背景、系统运行的软硬件环境、项目需求分析、项目设计和实现以及测试。开发此系统用户可以随时随地发表文章、阅读文章和评论文章。用此系统可以节约成本,提高效率,用户也可以即时阅读最新文章,方便广大作家以及文学爱好者的交流。2 开发背景及开发环境2.1项目研发背景及趋势由于现在的书籍趋于电子文档化以及人们已习惯在网上发布文章、在网上交流讨论大量的不同的信息,为了给此类用户提供一个学习交流的平台。为此开发文章发布系统,它能够对所存储的信息进行的规范化管理,已适应日趋增涨文章信息。2.2系统运行环境2.2.1系统运行环境和开发环境服务器端操作系统拟采用Windows XPJSP服务器采用Tomcat6.0数据库拟采用Oracle 11G。客户端采用浏览器应用软件开发工具采用MyEclipse 8.5。开发环境采用Jdk MyEclipse简介MyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和Java EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的Java EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, JavaScript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类: 1. Java EE模型 2. WEB开发工具 3. EJB开发工具 4. 应用程序服务器的连接器 5. Java EE项目部署服务 6. 数据库服务 7. MyEclipse整合帮助 对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。 简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的Java EE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。2.3.2 Oracle 11g 简介Oracle是殷墟(yn Xu)出土的甲骨文(oracle bone inscriptions)的英文翻译的第一个单词,在英语里是“神谕”的意思。Oracle是世界领先的信息管理软件开发商,因其复杂的关系数据库产品而闻名。Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。ORACLE最先将其软件移植到DEC VAX计算机上的VMS操作系统上。早在1979年公司就已经雇了一位DEC公司的技术高手Robot Brandt进行VAX上ORACLE的开发。开始的时候资金有限,只能到加州大学伯克利分校去蹭机器进行开发,后来好一些,但机器也是借来的。尽管困难重重,Brandt还是比较成功的完成了移植工作。随着VAX小型机的大量销售乃至供不应求,ORACLE软件也成为VAX上最受欢迎的程序。这一点要归功于Larry对市场的先知先觉。如果说,是IBM引领着ORACLE公司走上数据库的大船,那么DEC公司的VAX就是带着他们扬帆出海了。短短的几年之后,ORACLE数据库被移植到各种主要平台之上。ORACLE产品也一直因为有可移植性这个关键特性而被那些潜在的客户关注11。 Oracle 11g是甲骨文公司在2007年年7月12日推出的最新数据库软件,Oracle 11g有400多项功能,经过了1500万个小时的测试,开发工作量达到了3.6万人/月。相对过往版本而言,Oracle 11g具有了与众不同的特性。2.3.3 Tomcat简介Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。目前最新版本是6.0。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的 tomcat标志改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为7.0.12 Released 10。2.3.4 Java EE简介Java EE(Java Platform,Enterprise Edition)是sun公司推出的企业级应用程序版本。这个版本以前称为 J2EE。能够为我们帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。 Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。所包含的技术包括: JDBC(Java Database Connectivity)提供连接各种关系数据库的统一接口,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。 EJB(Enterprise JavaBeans)使得开发者方便地创建、部署和管理跨平台的基于组件的企业应用。 Java RMI(Java Remote Method Invocation)用来开发分布式Java应用程序。一个Java对象的方法能被远程Java虚拟机调用。这样,远程方法激活可以发生在对等的两端,也可以发生在客户端和服务器之间,只要双方的应用程序都是用Java写的。 JNDI(Java Naming and Directory Interface)提供从Java平台到的统一的无缝的连接。这个接口屏蔽了企业网络所使用的各种命名和目录服务。 JMAPI(Java Management API)为异构网络上系统、网络和服务管理的开发提供一整套丰富的对象和方法。 JMS(Java Message Service)提供企业消息服务,如可靠的消息队列、发布和订阅通信、以及有关推拉(Push/Pull)技术的各个方面。 JTS(Java transaction Service)提供存取事务处理资源的开放标准,这些事务处理资源包括事务处理应用程序、事务处理管理及监控。 JMF(Java Media Framework API), 她可以帮助开发者把音频、视频和其他一些基于时间的媒体放到Java应用程序或applet小程序中去,为多媒体开发者提供了捕捉、回放、编解码等工具,是一个弹性的、跨平台的多媒体解决方案。 Annotation(Java Annotation),在已经发布的JDK1.5(tiger)中增加新的特色叫 Annotation。Annotation提供一种机制,将程序的元素如:类,方法,属性,参数,本地变量,包和元数据联系起来。这样编译器可以将元数据存储在Class文件中。这样虚拟机和其它对象可以根据这些元数据来决定如何使用这些程序元素或改变它们的行为。 在Java技术中,值得关注的还有JavaBeans,它是一个开放的标准的组件体系结构,它独立于平台,但使用Java语言。一个JavaBean是一个满足JavaBeans规范的Java类,通常定义了一个现实世界的事物或概念。一个JavaBean的主要特征包括属性、方法和事件。通常,在一个支持JavaBeans规范的开发环境(如Sun Java Studio 和IBM VisualAge for Java)中,可以可视地操作JavaBean,也可以使用JavaBean构造出新的JavaBean。JavaBean的优势还在于Java带来的可移植性。现在,EJB (Enterprise JavaBeans) 将JavaBean概念扩展到Java服务端组件体系结构,这个模型支持多层的分布式对象应用。除了JavaBeans,典型的组件体系结构还有DCOM和CORBA,关于这些组件体系结构的深入讨论超出了本书的范围。 javaFXSun刚刚发布了JavaFX技术的正式版,它使您能利用 JavaFX 编程语言开发富互联网应用程序(RIA)。JavaFX Script编程语言(以下称为JavaFX)是Sun微系统公司开发的一种declarative, staticallytyped(声明性的、静态类型)脚本语言。JavaFX技术有着良好的前景,包括可以直接调用Java API的能力。因为 JavaFXScript是静态类型,它同样具有结构化代码、重用性和封装性,如包、类、继承和单独编译和发布单元,这些特性使得使用Java技术创建和管理大型程序变为可能。 JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入 管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。 JPA (Java Persistence API), JPA通过JDK 5.0注解或XML描述对象关系表的映射关系,并将运行期的实体对象持久化到数据库中3。3 客户关系管理系统概述3.1系统开发模型文章发布系统采用V模型。V模型开发的优点:(1) 测试在产品开发早期介入,贯穿整个产品开发生命周期,能尽早发现缺陷,降低修复成本。(2) 非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系(3) 简单易用,只要按照规定的步骤一步一步执行即可1。下图3.1是V模型的开发过程。图3.1 V模型3.3系统体系结构系统采用Browser / Web Server模式,在中心设置oracle 11g数据库服务器、Web服务器,分布在全国的用户可以通过浏览器访问系统。这样可以提高系统的可维护性,降低系统部署、维护、升级的成本。 下图3.3为B/S架构图。图3.3 B/S架构图4 系统管理模块需求分析4.1系统需求分析4.1.1系统功能分析根据需求分析的结果,基于Web的文章发布系统主要划分为5个子模块:用户注册、用户登录、用户信息管理、用户文章管理、文章留言。其中各子模块还有自己的子系统 2。图4.1系统管理模块功能图文章发布系统,其各子模块功能描述如下:l 用户注册:主要是用于创建新用户。l 用户登录:主要是已注册用户再次登录系统。 l 用户文章管理:是用户对自己的文章编辑,发布,删除以及对文章的浏览等。l 用户信息管理:是用户对注册时的信息进行修改。 l 文章留言:是用户浏览文章时对文章进行的评论。4.1.2系统用例分析用例图是被称为参与者的外部用户所能观察到的系统功能的模型图。用例是系统中的一个功能单元,可以被描述为参与者与系统之间的一次交互作用。用例模型的用途是列出系统中的用例和参与者,并显示哪个参与者参与了哪个用例的执行3。下图4.2为系统用例图。 图4.2 系统用例图4.2数据库需求分析4.2.1系统数据表根据系统需求分析,以及考虑到数据表之间的关联性,系统管理模块需要建立3个表,其用途说明如下表4.1所示。表4.1 数据表数据表名称数据表描述t_user记录用户个人的基本信息t_essay保存用户的文章t_review保存用户对文章的留言4.2.2系统管理模块E-R图E-R图是一种信息模型图,体现了系统实体之间的关系。通过系统需求分析,了解了系统的分解功能以及数据流程。根据这些实体与实体之间的关系,可以得到系统E-R图,如图4.3所示。图4.3 系统管理模块E-R图4.2.3 数据字典下列表4.2到表4.9给出4个数据表:用户表、文章表、留言表的具体描述,包括数据描述、数据名称、数据类型等。表4.2 t_user用户表字段名称说明数据类型长度主/外键约束备注userId用户IDNumber20主键userName用户姓名varchar230非空唯一userBirthday出生日期timestamp非空userEmail用户Emailvarchar230非空唯一userPassword用户密码Varchar230非空userGender用户性别Char1检查Y代表男N代表女userPhone用户手机号Number11非空userQq 用户QqNumber13userPicture用户头像名Vachar220非空表4.3 t_essay 文章表字段名称说明数据类型长度主/外键约束备注essayId文章IdNumber20主键essayIssue是否发布Char1非空Y代表发布N代表没有发布essayIssueTime文章发表时间Timestamp非空essayLastEditTime文章最后编辑时间Timestamp非空essayContentName文章存储时的文件名Varchar230非空essayTitle文章标题Varchar2200非空userId文章所属用户IdNumber20外键非空表4.4 t_review留言表字段名称说明数据类型长度主/外键约束备注reviewId留言IdNumber20主键reviewContent留言的内容Varchar21000非空reviewTime留言的时间Timestamp非空userId留言所属用户IdNumber20外键essayId留言所属文章IdNumber20外键非空4.2.4数据库关系图对于任何数据库,都可以创建任意多个数据库关系图;每个数据库表都可以出现在任意数量的关系图中。这样,便可以创建不同的关系图使数据库的不同部分可视化,或强调设计的不同方面。例如,可以创建一个大型关系图来显示所有表和列,并且可以创建一个较小的关系图来显示所有表但不显示列。面辅料管理子系统的数据库关系图如图4.4所示。图4.4数据库关系图4.2.5数据流图描述数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具。可以用来抽象地表示系统或软件。它从信息传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,同时可以按自顶向下、逐步分解的方法表示内容不断增加的数据流和功能细节。因此,数据流图既提供了功能建模的机制,也提供了信息流建模的机制,从而可以建立起系统或软件的功能模型。面辅料管理子系统的数据流图如图4.4所示。图4.5系统管理数据流图5 文章发布系统设计与实现5.1系统登录界面设计与实现5.1.1文章发布系统登录界面登录页面主要实现系统登录,每一个用户根据Email 和密码进入他们的主页面。如图5.1所示。图5.1 CRM客户关系管理系统登陆界面5.1.2登录程序代码public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception HttpSession session=request.getSession();UserLoginForm ulForm=(UserLoginForm)form;ApplicationContext ac = this.getWebApplicationContext();UserService userService=(UserService) ac.getBean(userService);User user;try user = userService.userLogin(ulForm.getUserEmail().trim(), ulForm.getUserPassword().trim(); catch (Exception e) e.printStackTrace();return mapping.findForward(error);ActionMessages errors=null;if(user=null)errors=new ActionMessages(); errors.add(user.login.error, new ActionMessage(user.login.error); this.saveErrors(request, errors);return mapping.findForward(faile);session.setAttribute(user, user);return mapping.findForward(success);5.2注册页面的设计与实现5.2.1 注册页面的界面设计注册页面,是用于新用户注册。图5.2 注册页面5.2.2 注册程序代码public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception HttpSession session=request.getSession();UserRegisterForm ufForm=(UserRegisterForm)form;ApplicationContext ac = this.getWebApplicationContext();String userVerifyCode=request.getParameter(userVerifyCode);String number=(String)session.getAttribute(number);ActionMessages errors=new ActionMessages();if(!userVerifyCode.equals(number)errors.add(user.verify.code.error,new ActionMessage(user.verify.code.error);this.saveErrors(request, errors);return mapping.findForward(faile);UserService userService=(UserService) ac.getBean(userService);User user=new User();user.setUserEmail(ufForm.getUserEmail().trim();user.setUserPassword(ufForm.getUserPassword().trim();user.setUserName(ufForm.getUserName().trim();user.setUserPhone(Long.parseLong(ufForm.getUserPhone().trim();user.setUserQq(Long.parseLong(ufForm.getUserQq().trim();user.setUserBirthday(DateUtil.getDate(ufForm.getUserBirthday();user.setUserGender(ufForm.getUserGender().toCharArray()0);Long userId;try userId = userService.register(user); catch (Exception e) e.printStackTrace();return mapping.findForward(error);String path = getServlet().getServletContext().getRealPath(user/ + userId);new File(path + /picture).mkdirs();new File(path + /essay).mkdirs();session.setAttribute(user, user);return mapping.findForward(success);5.3系统主页的设计与实现5.3.1系统主页界面系统的主页主要用于用户管理用户信息更改查看,文章删除、编辑和发布,以及查看文章信息等操作的。图5.3系统管理界面 5.3.2系统主页程序代码public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception HttpSession session=request.getSession();String userId =request.getParameter(userId);User user=null;if(userId=null)user=(User) session.getAttribute(user);elseApplicationContext ac = this.getWebApplicationContext();UserService userService=(UserService)ac.getBean(userService);try user = userService.findUser(Long.parseLong(userId); catch (Exception e) / TODO: handle exceptione.printStackTrace();return mapping.findForward(error);if(user!=null)request.setAttribute(user1, user);return mapping.findForward(success);return mapping.findForward(faile);5.4修改基本信息设计与实现5.4.1修改基本信息界面 修改基本信息:主要用于用户注册时的信信息进行修改图5.4 用户资料设置界面5.4.2修改基本信息程序代码public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception HttpSession session=request.getSession();String path = getServlet().getServletContext().getRealPath(/); User user=(User)session.getAttribute(user);ActionMessages errors=new ActionMessages(); if(user=null) errors.add(user.login.timeout.error,new ActionMessage(user.login.timeout.error); this.saveErrors(request, errors);return mapping.findForward(timeout);UserChangeInforForm ucif=(UserChangeInforForm)form;user.setUserGender(ucif.getUserGender().charAt(0);user.setUserPhone(Long.parseLong(ucif.getUserPhone();user.setUserBirthday(DateUtil.getDate(ucif.getUserBirthday();user.setUserQq(Long.parseLong(ucif.getUserQq();FormFile fFile=ucif.getUserPicture();String pictureName=fFile.getFileName();System.out.println(pictureName!=null&!pictureName.trim().equals()&pictureName.trim().lastIndexOf(.)!=-1);if(pictureName!=null&!pictureName.trim().equals()&pictureName.trim().lastIndexOf(.)!=-1)String pic=pictureName.substring(pictureName.trim().lastIndexOf(.); if(!PictureUtil.testPic(pic) errors.add(user.picture.error, new ActionMessage(user.picture.error); this.saveErrors(request, errors);return mapping.findForward(faile);String pictureName1=new Date().getTime()+pic;FileUtil.write(fFile.getInputStream(), path+user/+user.getUserId()+/picture/+pictureName1);user.setUserPicture(pictureName1);ApplicationContext ac=this.getWebApplicationContext();UserService userService=(UserService)ac.getBean(userService);try userService.userChangeInfo(user); catch (Exception e) e.printStackTrace();return mapping.findForward(error);return mapping.findForward(success);5.5 用户文章管理设计与实现5.5.1 文章管理界面文章管理界面:用户需要对文章进行管理,例如删除、编辑等。1.文章修改界面图5.5.1 文章修改删除界面2.文章修改以及编辑界面图5.5.2 文章发布界面5.5.2 文章管理代码1、文章删除程序代码public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception String essayId=request.getParameter(essayId);if(essayId=null)return mapping.findForward(success);ApplicationContext ac=this.getWebApplicationContext();EssayService essayService=(EssayService)ac.getBean(essayService);Essay essay=null;try essay = essayService.findEssayById(Long.parseLong(essayId); catch (Exception e) e.printStackTrace();return mapping.findForward(error);essayService.deleteEssay(essay);return mapping.findForward(success);2、文章编辑程序代码public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception HttpSession session=request.getSession();EssayEditForm essayEditForm=(EssayEditForm)form;String essayId

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论