jsp教育课程网站ssh论文_第1页
jsp教育课程网站ssh论文_第2页
jsp教育课程网站ssh论文_第3页
jsp教育课程网站ssh论文_第4页
jsp教育课程网站ssh论文_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

PAGE论文作者姓名:申请学位专业:申请学位类别:论文提交日期:摘要教育课程网站是建立在以网络为基础的一种教学方式,它的及时性,互动性,以及模拟演示等方面,是传统教学无法逾越的,它有着传统教学方式无法比拟的优势。教育课程网站作为现代课件教育的重要组成部分在保障教学效果方面起着不可替代的作用,已经获得了越来越多的人青睐。但是由于它的发展起步较晚,技术上还很不成熟。本设计的开发是基于B/S结构,采用JSP程序设计语言及Mysql数据库进行开发;论文首先阐述了基于B/S模式的课件教育的开发,并对该系统进行了较详细的需求分析;然后探讨了该系统需要实现的设计方案。最后,在测试与分析过程中,该系统表现出了运行稳定、可靠和实用等特性,具有一定的实用价值。关键词:课件教育;B/S结构;数据库;JSPAbstractComputernetworkcoursesistoestablishaweb-basedteachingmethods,itstimeliness,interactive,andanalogpresentationistraditionalteachinginsurmountable,ithastheadvantagesoftraditionalteachingmethodscannotmatch.Computernetworkclassasanimportantpartofthemoderndistanceeducationplaysanirreplaceableroleintheprotectionoftheeffectivenessofteaching,hasgainedmoreandmorepeoplefavor.However,duetothelatestartofitsdevelopment,technicallystillimmature.ThedevelopmentofthisdesignisbasedonB/Sstructure,theuseofJSPprogramminglanguageandMysqldatabasedevelopment;paperfirstdescribesthethenetworkcurriculumdevelopmentbasedonB/Smode,andamoredetailedneedsanalysisofthesystem;andthendiscussestheneedtoachievethesystemdesign,thesystemincludesfront:studentenrollment,teachingmaterials,teachingvideo,softwaredownloads,self-test,forums,Introduction;background:usermanagement,teachingmaterialsintroducedmanagement,curriculuminformationmanagement,thecoursewaredownloadmanager,teachingvideomanagement,personalinformationmanagement,exammanagement,systemmanagement,andotherfunctionalmodules.Finally,intheprocessoftestingandanalysis,thesystemperformanceisstable,reliableandpracticalfeatures,hasacertainpracticalvalue.Keywords:NetworkCourse;B/Sstructure;database;JSP目录1引言 21.1课题背景 21.2本课题研究的意义 21.3本课题的研究思路和方法 31.4本文的主要工作 32开发工具介绍 52.1JSP技术 52.1.1JAVA简介 52.1.2JSP简介 52.1.3JavaBeans介绍 62.1.4JDBC驱动程序介绍 62.2Myeclipse介绍 72.3Browser/Server(B/S)结构 73需求分析及设计方案 83.1需求分析 83.2设计方案 93.2.1系统功能 94具体设计流程及实现 94.1数据库设计 94.1.1数据库需求分析及E-R图 94.1.2数据表具体设计 104.2部分关键编码实施实现 134.2.1课件下载编码实现 134.2.2教学视频编码实现 175系统运行及测试与分析 235.1系统的运行 235.1.1用户登录界面 235.1.2后台主界面 235.1.3教材介绍管理 235.1.4课程信息管理 235.1.5课件下载管理 235.1.6教学视频管理 235.2测试与分析 23结论 24参考文献 25致谢 26第9页共39页1引言1.1课题背景21世纪人类社会正在快速步入信息时代,计算机走入千家万户,互联网的兴起正以惊人的速度改变着人们的生存方式与学习方式,“现代教育技术是当代教育的制高点,谁占领了这个山头,谁就在新世纪中处于有利位置。”社会经济教育的深刻变革,决定了课堂教育改革必须以现代教育技术为手段,研究探究网络及网络环境下的教育教学模式。新一轮课改已全面展开。新课程大力倡导动手实践、自主探索、合作交流的学习方式。著名课程改革专家余文森指出:学习方式的转变是本次课程改革的显著特征,改变原有的单纯接受式的学习方式,建立和形成旨在充分调动、发挥学生主体性的探究式学习方式。自然成为教学改革的核心任务。”课堂教学的精妙在于艺术性的激发学生的情趣,调动他们的积极性,使其产生顿悟,迸发出创造性的思维的火花,而不是把预先设计的教案表演得如何淋漓尽致。但是简单的多媒体课堂教学手段是另一种借助于高科技的满堂灌,教师手不离鼠标,学生眼不离屏幕,学生在学习过程中的主体地位在无意中消失,师生之间无声的交流被隔断了,课堂上教学相长的热烈与融洽的交流气氛大减,学生个性、情感、态度培养被忽视。显然,我们需要一种新的高科技教学手段来补充。网络环境下的教学模式应运而生,它的特点是:信息资源广泛开放、教学双方多向交流、学习程序按需而变,教学手段丰富多彩;学习者的地位主体化,学习态度主动化,学习过程辐射化,学习反馈及时化1.2本课题研究的意义网络教学有着以下几个有利条件:(1)有利于激发学生的学习兴趣,充分体现学生的主体作用。人机灵活交互是网络教学的显著特征,是投影仪教学、多媒体教学所没有的,它给学生展现的是精彩的声画,随思呈现、纷至沓来,丰富多彩的内容如人所愿,为我所欲。一切为学生学习服务。改变了多媒体教学中的课件预先摄定、上课程序一经确定难以改变的缺陷,电脑中心变成了学生中心、学习中心。这种网络化教学友好、平等、耐心、善解人意,而且可以立即反馈,因而能有效地激发学生兴趣,真正体现出学生的主体作用。(2)有利于实现对教学信息最有效的获取、保持、重组,为探究式学习提供了广阔天地。利用网络技术与课堂教学整合,拓宽了教学资源,信息量尽可能大,思维尽可能深,交流尽可能广。学生看得见,听得到,动脑还能动手,再通过讨论交流论辩,知识的获取、保持、重组,将大大优于传统教学和其他现代技术作为辅助手段的现代教学。例如:英语教学中,“听、说、读、写”是四个基本的教学要求,利用网络的超文本方式,可以组织成图、文、音、像并茂的丰富多彩的一体化电子教材,学生可以何根据学习要求搜寻信息,由表及里去粗存精处理信息,确立自己的见解,这与传统教学是不可同日而语的。(3)有利于学生情感、态度、价值观的培养。在以往的多媒体教学中,电脑是机器,是没有情感的冷冰冰的车西;教师是机器的操纵者;学生是机器表演的观众,忽视了学生情感态度价值观的培养。网络化教学人机交互,是否会忽视人性化的教育,是否会导致人际沟通缺少而引发一系列的心理问题,这种担心是不必要的。网络化教学在设施配置、教师培训、教学思想确定、教学程序设计上都高度重视并作了相应改进,因而保证了学生情感态度价值观的培养、发展与交流,从而有利于培养身心全面和谐健康发展的人。(4)有利于培养学生合作精神、团队精神。是世界上最大的知识库、资源库,它为学习者对同一问题提供多种不同观点,学习者可以进行观察、分析、讨论。所以,基于的教育网络由于教学设施的到位,使得人机交互情况下的自由讨论、竞争、协同、伙伴和角色扮演变得更为方便,特别适合于学生进行基于自主发现、自主探索的合作探究学习。学生从小有机会在这样的环境中遨游、探索,更能在激扬个性的基础上发展团队合作精神和合作能力合作技巧,更快地成长为世纪的新型人才。(5)有利于增加学生实践活动,提高学生“信息素养”。语文、数学、外语、科学学科的课一般都在网络教室上,学生整天与网络打交道,他们的信息意识、信息搜集能力、信息价值判断、信息处理能力、信息交流能力、计算机网络操纵等信息素养和实践能力会明显高于一般教学摸式下的学生。1.3本课题的研究思路和方法本系统的开发要求采用B/S结构,设计与开发一个功能较完善的基于网络的课件教育系统。因此,本次毕业设计应首先分析课件教育的相关功能,结合本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识(包括以前所学的一些关于网络技术、数据库、编程技术等相关知识),选择所熟悉的开发工具进行本毕业设计的开发;在设计中以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;同时,在开发设计与实现中,要保存好相关的设计文挡,为后面的毕业论文的写作准备材料;最后,系统开发完毕后,进行调试和试运行,做好调试和试运行的相关记录,也为后面的毕业论文的写作准备材料。1.4本文的主要工作本文主要是对设计与开发一个课件教育,首先对本系统所基于的B/S结构,采用的JSP编程技术和Mysql数据库,运用的MyEclipse开发工具等进行详细的介绍;然后对用户的需求分析,指出了需要解决的问题,需要实现的功能,包括前台:学生注册、教材介绍、教学视频、课件下载、自我测试、论坛、系统简介;后台:用户管理、教材介绍管理、课程信息管理、课件下载管理、教学视频管理、个人资料管理、题库管理、系统管理等功能模块;其次是具体设计流程及实现,详细介绍了数据库的设计,编码的实施;接着是系统测试,通过测试发现了系统的一些问题,排除了的错误,发现了一些不足等;最后是对本次设计制作的小结,总结了设计过程中遇到的问题和收获。2开发工具介绍本系统是采用JSP编程技术和SQL2005数据库,在WindowsXP操作系统环境下,采用Myeclipse开发工具以及Javabeans编写进行设计与开发完成的基于B/S结构的课件教育。2.1JSP技术2.1.1JAVA简介.Java语言诞生于20世纪90年代的初期,最初是以智能家电的芯片语言出现的。但是很快,人们发现了它有更广阔的用武之地,由于它适用于Internet环境,引起计算机界的广泛关注,迅速发展成计算机网络编程语言。Java语言备受推崇,因其确实可称得上是新一代编程语言,具有众多优点,它简单、面向对象、可移植、与硬件无关、系统强健安全、具有很高的性能,并提供了分布性、多线程、动态性的支持。2.1.2JSP简介JSP(JavaServerPages)是由Sun公司在java语言上开发出来的一种动态网页制作技术,JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果,使您可以将网页中的动态部分和静态的HTML相分离。⑴将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。⑵强调可重用的组件绝大多数JSP页面信赖于可重用的、跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,井使得这些组件为更多的使用者或者客户团体所使用[6]。⑶采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在生成与JSP相关的XML标识的动态内容时所需要的。标准的JSP标识能够访问和实例化JavaBeans组件、设置或者检索组件属性、下载Applet,以及执行用其他方法更难于编码和耗时的功能。⑷健壮性与安全性由于JSP页面的内置脚本语言是基于Java编程语言的,且都被编译为JavaServlet,它就具有Java技术的所有好处,包括健壮的存储管理和安全性[7]。⑸良好的移植性作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,可以使用自己所选择的服务器和工具,而且更改工具或服务器并不影响当前的使用。⑹企业级的扩展性和性能当与Java2平台,企业版(J2EE)和EnterpriseJavaBeans技术整合时,JSP页面将提供企业级的扩展性和性能,这对于虚拟企业中部署基于Web的应用是必需的。2.1.3JavaBeans介绍JavaBeans是一个可以重复使用的软件组件。实际上JavaBeans是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象,简称beans。JavaBeans是基于Java语言的,具有以下特点:(1)可以实现代码的重复利用。(2)易编写,易维护,易使用。(3)可以在任何安装了Java运行环境的平台上的使用,而不需要重新编译。2.1.4JDBC驱动程序介绍从编程的角度出发,有两个主要的类负责建立与数据库的连接。第一个类DriverManager是在JDBCAPI中提供的为数不多的实际类。DriverManager负责管理已注册驱动程序的集合,实质上就是提取使用驱动程序的细节,这样程序员就不必直接处理它们。第二个类是实际的JDBCDriver类。JDBC驱动程序有四种类型。第一种驱动程序:它们都使用JDBC-ODBC桥,这是作为JDK的一个标准部分包括的。第一种驱动程序通过附加在JDBC-ODBC桥的“开放式数据库连接性”(OpenDataBaseConnectivity(ODBC))驱动程序来区分。要连接到一个不同的数据源,您只需要使用ODBC管理员注册(或有效地绑定)一个不同的ODBC数据源到合适的数据源名称即可。第二种驱动程序也称为部分Java驱动程序,因为它们直接将JDBCAPI翻译成具体数据库的API。对于分布式应用程序,这种需求会产生额外的许可证问题,还可能带来可怕的潜在代码分布问题。第三种驱动程序是纯Java驱动程序,它将JDBCAPI转换成独立于数据库的协议。JDBC驱动程序并没有直接和数据库进行通讯;它和一个中间件服务器通讯,然后这个中间件服务器和数据库进行通讯。这种额外的中间层次提供了灵活性:可以用相同的代码访问不同的数据库,因为中间件服务器隐藏了Java应用程序的细节。要转到不同的数据库,您只需在中间件服务器上改变参数。第四种驱动程序是纯Java驱动程序,它直接与数据库进行通讯。很多程序员认为这是最好的驱动程序,因为它通常提供了最佳的性能,并允许开发者利用特定数据库的功能。当然,这种紧密耦合会影响灵活性,特别是如果您需要改变应用程序中的底层数据库时。这种驱动程序通常用于applet和其它高度分布的应用程序。2.2Myeclipse介绍MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse几乎囊括了目前所有主流开源产品的专属eclipse开发工具。2.3Browser/Server(B/S)结构B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。3需求分析及设计方案3.1需求分析课件教育教学系统就是通过网络技术建立一个基于Web的支持和管理教学过程、提供共享学习资源和各种学习工具的虚拟学习环境,为网络教学的实施提供基础性通信与学习管理服务。课件教育教学系统提供了学习者、教师等用户的管理,课件教育的创作、存储与发布,课件教育学习过程的支持工具。可以说,课件教育教学支撑平台是实施课件教育教学实践的基础与核心。系统功能需求分析作为传统教学的补充,一个理想的课件教育必须是一个整合性的教学平台:1.教师在这个平台上开设网络教学活动,并能方便地通过此平台进行教学管理。2.学生可以根据自身的情况自主地选择学习内容和上机实践内容,能方便地通过此平台进行多样地学习。3.为教师与学生提供教与学的交互平台,使教师与学生间、学生与学生间能相互沟通和交流。4.学生提交作业和测试结果,及进行课程练习自测。5.学生获得相关通知、公告以及学习资源。6.各教师发布的习题、实验、资源信息可以共享。7.管理员对系统的维护、管理。8.界面友好,各用户可以有效的使用本系统。。3.2设计方案根据前面章节需求分析的情况,结合本系统所要实现的功能,具体设计方案如下。3.2.1系统功能通过对用户需求的分析,一个课件教育系统应包括以下的主要功能:系统功能模块设置:(1)系统管理模块:管理员通过本模块,对系统基本信息、资源及数据进行管理,对数据库进行备份和维护。(2)最新通知模块:浏览者或学员可以查看最新通知,管理员在后台进行更新,通知包括文字、图片、声音、视频等多种形式。教师通过后台添加课程通知,便于学员查看。(3)学习资源管理模块:通过后台进行教学资源上传和规划管理。学员通过登录后可以进行下载。(4)互动模块:浏览者或学员在浏览中的疑问可以在留言板进行提问,教师和管理员在后台进行解答。4具体设计流程及实现4.1数据库设计4.1.1数据库需求分析及E-R图根据以上的系统功能分析,可以得到E-R图:学生和教学视频E-R图:IDIIDIdMN学生教学视频观看IDid名称品大小姓名图4-1学生和教学视频E-R图学生和课件E-R图:IDIIDIdMN学生课件下载IDid名称品大小姓名图4-2学生和课件视频E-R图学生和试卷E-R图:IDIIDId1N学生试卷测试IDid名称品大小姓名图4-3学生和试卷E-R图4.1.2数据表具体设计(1)用户表:记录用户基本信息,如表1所示。表1用户表(allusers)序号列名数据类型长度是否必填1IdIntNotnull2usernamevarchar50null3Pwdvarchar50null4cxvarchar50null5addtimedatetimenull(2)成绩表:记录成绩信息,如表2所示。表2成绩信息表(cj)(3)对象表:记录对象信息,如表3所示。表3对象表(dx)序号列名数据类型长度是否必填1IdIntNotnull2Leibienvarchar50null3contenttextnull(4)课程信息表:记录课程信息,如表4所示。表4课程信息表(kechengxinxi)序号列名数据类型长度是否必填1IdIntNotnull2Kechengmingchengvarchar50null3Xueshivarchar50null4Xuefenvarchar50null5Leixingvarchar50null6Beizhuvarchar500null7addtimedatetimenull(5)留言板表:记录留言板信息,如表5所示。表5留言板表(liuyanban)序号列名数据类型长度是否必填1IdIntNotnull2Chengvarchar50null3Xingbievarchar2null4QQvarchar50Notnull5Youxiangvarchar50null6Dianhuavarchar50null7Neirongvarchar500null8addtimedatetimenull9huifuneirongvarchar500null(6)新闻通知表:记录新闻通知信息,如表6所示。表6新闻通知表(xinwentongzhi)序号列名数据类型长度是否必填1IdIntNotnull2BiaotiIntnull3LeibieDatetimenull4NeirongIntNotnull5TianjiarenIntnull6ShouyetupianDatetimenull7DianjilvIntnull8addtimeIntnull(8)学习视频表:记录学习视频信息,如表8所示。表8学习视频表(xuexishipin)序号列名数据类型长度是否必填1IdIntNotnull2Bianhaovarchar50null3Mingchengvarchar300null4kechengvarchar50null5Zhujiangrenvarchar50null6Neirongtextnull7Wenjianvarchar50null8addtimedatetimenull(9)用户注册表:记录用户注册信息,如表9所示。表9用户注册表(yonghuzhuce)序号列名数据类型长度是否必填1IdIntNotnull2Yonghumingvarchar50null3Mimavarchar50null4Xingmingvarchar50null5Xingbievarchar2null6Chushengnianyuevarchar50null7QQvarchar50null8Youxiangvarchar50null9Dianhuavarchar50null10Shenfenzhengvarchar50null11Touxiangvarchar50null12dizhivarchar300null13Beizhuvarchar500null14Addtimedatetimenull15isshvarchar2null(13)资料下载表:记录资料下载信息,如表13所示。表13资料下载表(ziliaoxiazai)序号列名数据类型长度是否必填1IdIntNotnull2bianhaovarchar50null3Mingchengvarchar300null4Leibievarchar50null5Kechengvarchar50null6Jianjievarchar500null7Fujianvarchar50null8addtimedatetimenull4.2部分关键编码实施实现4.2.1课件下载编码实现packagecom.dy.dao;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjava.util.ArrayList;importjava.util.List;importcom.dy.bean.Commodity;importcom.dy.util.DBUtil;publicclassCommodityDao{ publicvoidadd(StringcomName,StringcomSpec,Stringentid, Stringprice,StringcomBrand,StringcomDate,Stringexpdate,Stringgurl,Stringtype ){ //TODOAuto-generatedmethodstub DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); try{ StringsqlAddent="insertintocommodity(comName,comSpec,entid,price,comBrand,comDate,expdate,url,type)values('" +comName +"','" +comSpec +"'," +entid +"," +price +",'" +comBrand +"','" +comDate +"','" +expdate+"','" +gurl+"'," +type+")"; Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlAddent); Stringsql="select*fromcommodityorderbyentiddesc"; intcomid=0; PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ comid=rs.getInt("comid"); break; } StringsqlAdduser="insertintokc(comid,num,entid)values(" +comid+",0,"+entid+")"; Statementstmt2=conn.createStatement(); stmt2.executeUpdate(sqlAdduser); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } } publicList<Commodity>list(Stringentid){ //TODOAuto-generatedmethodstub Stringsql="select*fromcommoditywhereentid="+entid; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); List<Commodity>list=newArrayList<Commodity>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ Commoditybean=newCommodity(); bean.setEntid(rs.getInt("entid")); bean.setComBrand(rs.getString("comBrand")); bean.setComDate(rs.getDate("comDate")); bean.setComID(rs.getInt("comID")); bean.setComName(rs.getString("comName")); bean.setComSpec(rs.getString("comSpec")); bean.setExpdate(rs.getDate("expdate")); bean.setPrice(rs.getDouble("price")); bean.setType(rs.getInt("type")); bean.setUrl(rs.getString("url")); list.add(bean); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnlist; } publicvoiddeletes(Stringid){ //TODOAuto-generatedmethodstub DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="deletefromcommoditywherecomID="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlmodify); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } publicCommoditymodifyBefore(Stringid){ //TODOAuto-generatedmethodstub Stringsql="select*fromcommoditywherecomID="+id; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Commoditybean=newCommodity(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ bean.setEntid(rs.getInt("entid")); bean.setComBrand(rs.getString("comBrand")); bean.setComDate(rs.getDate("comDate")); bean.setComID(rs.getInt("comID")); bean.setComName(rs.getString("comName")); bean.setComSpec(rs.getString("comSpec")); bean.setExpdate(rs.getDate("expdate")); bean.setPrice(rs.getDouble("price")); break; } returnbean; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnbean; } publicvoidmodify(Stringid,StringcomSpec,Stringprice,StringcomBrand){ //TODOAuto-generatedmethodstub DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="updatecommoditysetcomSpec='"+comSpec+"',price="+price+",comBrand='"+comBrand+"'wherecomID="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlmodify); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } }}}4.2.2教学视频编码实现packagecom.dy.dao;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjava.util.ArrayList;importjava.util.List;importcom.dy.bean.Enterprise;importcom.dy.bean.Kc;importcom.dy.bean.User;importcom.dy.util.DBUtil;publicclassKcDao{ publicvoidadd(Stringentname,Stringentenname,Stringentemail, Stringenttel,Stringentadd,Stringentman,Stringenttype, Stringentindreg,StringuserName,Stringpassword){ //TODOAuto-generatedmethodstub DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); try{ StringsqlAddent="insertintoenterprise(entname,entenname,entemail,enttel,entadd,entman,enttype,entindreg)values('" +entname +"','" +entenname +"','" +entemail +"','" +enttel +"','" +entadd +"','" +entman +"','" +enttype+"','"+entindreg+"')"; Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlAddent); Stringsql="select*fromenterpriseorderbyentiddesc"; intentid=0; PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ entid=rs.getInt("entid"); break; } StringsqlAdduser="insertintousers(userName,password,roleid,entid,depid,status)values('" +userName+"','"+password+"',0,"+entid+",0,0)"; Statementstmt2=conn.createStatement(); stmt2.executeUpdate(sqlAdduser); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } } publicList<String>getEntName(){ //TODOAuto-generatedmethodstub Stringsql="select*fromenterprise"; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringentname=""; List<String>list=newArrayList<String>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ entname=rs.getString("entname"); list.add(entname); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnlist; } publicEnterprisegetOneEnt(Stringentname){ //TODOAuto-generatedmethodstub Stringsql="select*fromenterprisewhereentname='"+entname +"'"; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Enterprisebean=newEnterprise(); List<String>list=newArrayList<String>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ bean.setEntadd(rs.getString("entadd")); bean.setEntemail(rs.getString("entemail")); bean.setEntenname(rs.getString("entenname")); bean.setEntid(rs.getInt("entid")); bean.setEntindreg(rs.getString("entindreg")); bean.setEntman(rs.getString("entman")); bean.setEntname(rs.getString("entname")); bean.setEnttel(rs.getString("enttel")); bean.setEnttype(rs.getString("enttype")); break; } returnbean; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnbean; } publicList<Kc>list(Stringentid){ //TODOAuto-generatedmethodstub Stringsql="select*fromkcwhereentid="+entid; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); List<Kc>list=newArrayList<Kc>(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ Kcbean=newKc(); bean.setEntid(rs.getInt("entid")); bean.setComid(rs.getInt("comid")); bean.setId(rs.getInt("id")); bean.setNum(rs.getInt("num")); list.add(bean); } returnlist; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnlist; } publicvoiddeletes(Stringid){ //TODOAuto-generatedmethodstub DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="updateuserssetstatus=0whereuserid="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlmodify); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } publicUsermodifyBefore(Stringid){ //TODOAuto-generatedmethodstub Stringsql="select*fromuserswhereuserid="+id; DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Userbean=newUser(); try{ PreparedStatementpstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); while(rs.next()){ bean.setDepid(rs.getInt("depid")); bean.setEntid(rs.getInt("entid")); bean.setPassword(rs.getString("password")); bean.setRoleid(rs.getInt("roleid")); bean.setStatus(rs.getInt("status")); bean.setUserid(rs.getInt("userid")); bean.setUserName(rs.getString("userName")); break; } returnbean; }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } returnbean; } publicvoidadd(StringuserName,Stringpassword,intentid){ //TODOAuto-generatedmethodstub DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); try{ StringsqlAddent="insertintousers(userName,password,roleid,entid,depid,status)values('" +userName+"','"+password+"',1,"+entid+",0,1)"; Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlAddent); }catch(SQLExceptione){ e.printStackTrace(); }finally{ util.closeConn(conn); } } publicvoidmodify(Stringid,Stringpassword){ //TODOAuto-generatedmethodstub DBUtilutil=newDBUtil(); Connectionconn=util.openConnection(); Stringsqlmodify="updateuserssetpassword='"+password+"'whereuserid="+id; System.out.println("sqlmodify"+sqlmodify); try{ Statementstmt=conn.createStatement(); stmt.executeUpdate(sqlmodify); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } publicvoidaddkc(Stringentid,intcomid,intnum){ //TODOAuto-generatedme

温馨提示

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

评论

0/150

提交评论