您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 实验2创建和发布Web应用程序
实验二创建和发布Web应用程序一、实验目的动态Web很重要的一部分内容就是前台实现人机交互,在后台完成业务逻辑的运算。本实验验证前后台数据传递的两种常用机制,进一步熟悉JSP结构,掌握后台响应进行动态处理的方法。更常用的后台响应程序用Servlet。Servlet是纯Java程序,但也可以输出HTML静态代码。通过本实验,掌握Servlet的编程结构,理解Servlet生命周期。有关Servlet的更高级应用请参阅相关教材。以下选做:JDBC是Java访问数据库的基础组件。通过本实验,掌握JDBC连接数据库的方法和步骤;掌握数据访问的方法;了解不同数据库和不同提供商提供的驱动程序;二、实验内容1.用JSP的内置对象request在前后台页面间传递表单数据;2.用置对象JavaBean在前后台页面间传递表单数据;3.验证是否对数值、西文、中文字符都能正常传递;4.用Servlet作后台响应程序,注意与JSP程序结构有何不同?5.掌握在MyEclipse开发环境下正确创建Servlet程序的过程;6.理解部署描述文件web.xml的作用;以下选做:1.以MSSQLServer2005为数据库,用微软提供的JDBC驱动建立连接。2.先用Application程序验证将数据插入数据库表,然后从数据库表中读回数据验证刚插入的数据是否正确;3.然后用Web程序实现form表单界面输入的数据插入数据库表,然后读回数据验证插入数据是否正确;三、实验方法和步骤==============================================================第一部分:利用JSP+BEAN实现如下图所示的留言板:1.用值对象JavaBean实现页面间的参数传递(1)创建值对象JavaBean,用以存储单条留言,包括标题、留言内容://WordBean.javapackageexamples;publicclassWordBean{privateStringwordTitle;privateStringwordContent;publicStringgetWordTitle(){returnwordTitle;}publicvoidsetWordTitle(StringwordTitle){this.wordTitle=wordTitle;}publicStringgetWordContent(){returnwordContent;}publicvoidsetWordContent(StringwordContent){this.wordContent=wordContent;}}(2)创建值对象JavaBean,用以存储多条留言,使用ArrayList存储://WordsListBean.javapackageexamples;importjava.util.ArrayList;importjava.util.List;publicclassWordsListBean{privateListwords;publicWordsListBean(){words=newArrayList();}publicbooleanaddWord(WordBeanword){words.add(word);returntrue;}publicListgetWords(){returnwords;}publicvoidsetWords(Listwords){this.words=words;}}(3)创建前台主界面WordUseBean.jsp%@pagelanguage=javapageEncoding=UTF-8%jsp:useBeanid=wordbeanclass=examples.WordBeanscope=page/jsp:useBeanjsp:useBeanid=wordsbeanclass=examples.WordsListBeanscope=application/jsp:useBean%request.setCharacterEncoding(UTF-8);%jsp:setPropertyname=wordbeanproperty=*/%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+://+request.getServerName()+:+request.getServerPort()+path+/;%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML4.01Transitional//ENhtmlheadbasehref=%=basePath%%if(wordbean.getWordTitle()!=null&&wordbean.getWordContent()!=null)wordsbean.getWords().add(wordbean);%tableborder=1cellspacing=0trth留言标题/thth留言内容/th/tr%for(inti=0;iwordsbean.getWords().size();i++){examples.WordBeanword=(examples.WordBean)wordsbean.getWords().get(i);%trtd%=word.getWordTitle()%/tdtd%=word.getWordContent()%/td/tr%}%/tablebodyformname=f1id=f1action=method=postonSubmit=returncheckForm();tableborder=0trtd标题:/tdtdinputtype=textname=wordTitleid=login/td/trtrtd内容:/tdtdtextareaname=wordContentid=password/textarea/td/trtrtdcolspan=2align=centerinputtype=Submitvalue=提交留言内容/td/tr/table/form/bodyscriptlanguage=JavascriptfunctioncheckForm(){if(document.all.wordTitle.value==''){alert(对不起,留言标题不能为空!);returnfalse;}elseif(document.all.wordContent.value==''){alert(对不起,留言内容不能为空!);returnfalse;}else{returntrue;}}/script/html【在线思考】与通过内置对象request获取请求数据相比,WordUseBean.jsp页面增加了什么类型的标签?分析标签里的内容和作用。========================================================第二部分:利用JSP+BEAN+SERVLET实现如下图所示的留言板:2.用Servlet实现页面间的参数传递(1)创建WordUseServlet.jsp,内容如下:%@pagelanguage=javaimport=java.util.*pageEncoding=UTF-8%%@pageimport=examples.WordsListBean%jsp:useBeanid=wordsbeanclass=examples.WordsListBeanscope=application/jsp:useBean%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+://+request.getServerName()+:+request.getServerPort()+path+/;%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML4.01Transitional//ENhtmlheadbasehref=%=basePath%tableborder=1cellspacing=0trth留言标题/thth留言内容/th/tr%for(inti=0;iwordsbean.getWords().size();i++){examples.WordBeanword=(examples.WordBean)wordsbean.getWords().get(i);%trtd%=word.getWordTitle()%/tdtd%=word.getWordContent()%/td/tr%}%/tablebodywordadded:br${word.wordTitle}br${word.wordContent}brformname=f1id=f1action=/servlet/AddWordServletmethod=postonSubmit=returncheckForm();tableborder=0trtd标题:/tdtdinputtype=textname=wordTitleid=login/td/trtrtd内容:/tdtdtextareaname=wordContentid=password/textarea/td/trtrtdcolspan=2align=centerinputtype=Submit/td/tr/table/form/bodyscriptlanguage=JavascriptfunctioncheckForm(){if(document.all.wordTitle.value==''){alert(对不起,留言标题不能为空!);returnfalse;}elseif(document.all.wordContent.value==''){alert(对不起,留言内容不能为空!);returnfalse;}else{returntrue;}}/script/html(2)MyEclipse创建Servlet文件向导选定当前工程击右键,“新建”—“Servlet”进入图4.1窗口,按提示输入文件名,选定要创建的方法。点击“下一步”进入图4.2确定web.xml描述文件中对Servlet的描述,请见web.xml。这里的ServletjspmappingURL是确定Servlet网络访问的映射名字,字符要尽量简单。按“完成”生成Servlet代码框架。业务逻辑代码在doPost()方法中。图4.1创建Servlet窗口图4.2确定Servlet在web.xml中的描述(3)验证Servlet能正确地得到Form数据和输出HTML文档。AddWordServlet.java如下:packageexamples;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;publicclassAddWordServletexten
本文标题:实验2创建和发布Web应用程序
链接地址:https://www.777doc.com/doc-2500130 .html