版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告实验课程:WEB编程设计学生姓名:学号:专业班级:2015年6月目录实验一Web编程环境 设置默认字符集设置用户名和密码为MyEclipse配置JRE为MyEclipse集成Tomcat新建Web工程新建Web工程结果图新建JSP页面对话框添加发布的工程选择Web服务器部署管理界面发布到Tomcat中的目录结构启动Tomcat服务器浏览网页实验心得刚开始觉得特别简单就是下载安装而已,结果却是各种出错,连原因都找不到,自己不够细心,好多细节和注意的没留心,也有对这些软件应用的部首系。觉得做什么都应该先虔诚虚心的学习再动手。参考资料《JavaWEB编程技术》郭路生编南昌大学实验报告二学生姓名:xxx学号:xxx专业班级:xxx实验类型:□验证□综合■设计□创新实验日期:实验成绩:实验项目HTML和CSS编程技术实验目的熟悉HTML静态网页编程技术,熟悉HTML各种标记,特别是表单标记熟悉CSS编程技术,掌握CSS来格式化网页、掌握CSS盒式模型掌握DIV+CSS布局和设计网页,掌握CSS设计网页的一般流程熟悉Dreamweaver的CSS设计器实验内容构思一个新闻发布网站,主题自选,设计好新闻类别制作主页PSD图用DIV+CSS布局主页框架。(如可分成top,mid,foot,其中mid再分两大块left和main)分别细化设计每一大块。要中间部分的左边或右边要设计一个小登录表单,并用CSS美化。实验仪器及耗材计算机,Dreamweaver8,Photoshop,MyEclipse等软件。实验步骤1.选择好自己制作新闻发布网站的主题,及其新闻类别将构思好的导航条用Photoshop制作好,在Dreamweaver8中通过css布局把页面整体框架做好。在左边框架中设计登录表单,完善网页各个部分,运行观看效果。实验结果网页源代码:<html><head><title>web2</title><metacharset="utf-8"><linkhref="css/css.css"rel="stylesheet"type="text/css"><styletype="text/css"><!--.STYLE2{ color:#003399; font-weight:bold;}.STYLE4{color:#FFFFFF}--></style></head><body><divid="container"><divid="banner"><imgsrc="images/1.png"></div><divid="mnu"><ul> <liid="one"><ahref="index.html"class="STYLE4">首页</a></li> <li><ahref="#"title="人口计生"class="STYLE4">人口计生</a></li><liid="three"><ahref="#"title="公共卫生"class="STYLE4">公共卫生</a></li><liid="four"><ahref="#"title="时评"class="STYLE4">时评</a></li><liid="five"><ahref="#"title="健康饮食"class="STYLE4">健康饮食</a></li><liid="three"><ahref="#"title="中医中药"class="STYLE4">中医中药</a></li><liid="three"><ahref="#"title="医学前沿"class="STYLE4">医学前沿</a></li></ul> </div><divid="content"><divid="content_class"> <divclass="STYLE2">最新资讯</div> <divid="content_class_body"> <ul> <li><ahref="#">李斌:护士要与患者守望相助共抗疾病</a></li> <li><ahref="#">吃碘盐致甲状腺癌高发证据不足</a></li> <li><ahref="#">专家解读|跳出“螺蛳壳”做道场</a></li> <li><ahref="#">叶酸可用于结直肠癌一级预防</a></li> <li><ahref="#">我国哮喘患病率10年翻一番逾九成患者未</a></li> <li><ahref="#">国家卫生计生委发布4项推荐性卫生行业标</a></li> <li><ahref="#">中国政府医疗防疫队挺进地震重灾区</a></li> <li><ahref="#">重特大疾病医疗救助工作意见出台城乡医疗救助制度年</a></li> <li><ahref="#">评论|公立医院改革:肯定探索鼓励再探索</a></li> <li><ahref="#">时评|禁烟草广告只靠《广告法》还不够</a></li> <li><ahref="#">业界评说|“不是不管,是换种方式管”</a></li> <li><ahref="#">国务院发布《中医药健康服务发展规划(2015—2020年)</a></li> </ul> </div> </div></div><divid="link">用户登录<divid="link_body"><form> 用户名: <inputtype="text"name="username"><br> 密码: <inputtype="possword"name="userpsw"><br> <inputtype="submit"value="登录"> </form></div> </div><divid="footer">"copyright">Copyright(C)1999-2015健康报社版权所有违者必究</div></div></body></html>制作效果图:实验心得理想的设计比较好,可是能力有限做不出来,css布局是关键和难点,党在更改布局时经常出现页面出界等问题,还要一个比较重要的体会是:不是WEB太难,而是自己做的少,学的太少,如果从基础学起做起,也是会有收获的南昌大学实验报告学生姓名:xxx学号:xxx专业班级:xxx实验类型:□验证□综合■设计□创新实验日期:实验成绩:实验项目JavaScript编程技术实验目的熟悉JavaScript语法掌握JavaScript函数的创建和调用熟悉JavaScript对象,特别是浏览器对象,了解DOM模型,知道文档对象的访问方法。会用JavaScript来对表单进行验证。实验内容用JavaScript完成对登录表单的验证设计一个新闻发布的页面,并用JavaScript对新闻发布表单进行验证。实验仪器及耗材计算机,Dreamweaver8,Photoshop,MyEclipse等软件。实验步骤在实验二做好的网页的基础上,在原有表单的基础上进行表单验证的制作。通过用JavaScript来编写实习表单验证,通过引入外部.js文件来进行数据验证。在完成表单验证之后,通过编写新闻发布的HTML文档,并实现与浏览器的交互,完成新闻发布页面的实现。实验结果一.利用onsubmit事件进行表单验证引用外部的.js文件:functioncheckform(){if(document.userlogin.username.value==""){alert("提示:\n\n请输入用户名!");document.userlogin.username.focus();returnfalse;}if(document.userlogin.username.value.length<6){alert("提示:\n\n用户名6位");document.userlogin.username.focus();returnfalse;}if(document.userlogin.pwd.value==""){alert("提示:\n\n请输入密码!");document.userlogin.pwd.foucs();returnfalse;}if(document.userlogin.pwd1.value==""){alert("提示:\n\n请输入用户名!");document.userlogin.pwd1.focus();returnfalse;}}二:新闻发布:1新闻发布代码:<head><metacharset="gbk"><title>新闻发布</title><linkhref="css/css.css"rel="stylesheet"type="text/css"><scriptsrc="js/checkarticle.js"></script></head><body><divid="container"><divid="newsname">新闻发布页面</div><divid="content"><formname='publish'onsubmit='returncheckarticle();'action=''method='post'><p><label>新闻名称:</label><inputname="newsname"type="text"class="topbox"><br><label>新闻作者:</label><inputname="author"type="text"class="topbox"></br></p><p><label>新闻内容:</label><labelfor="textarea"></label><textareaname="textarea"id="textarea"cols="100"rows="5"></textarea></p><p><br> <inputtype=submitvalue="发表"name=submit> <inputname=resettype=resetid="reset"value="重置"></p></form></div></div></body></html>2引用的checkarticle.js文件:functioncheckarticle(){if(document.publish.newsname.value==""){alert("提示:\n\n请输入新闻名称!");document.publish.newsname.focus();returnfalse;}if(document.publish.author.value==""){alert("提示:\n\n请输入作者名称!");document.publish.author.focus();returnfalse;}if(document.publish.textarea.value==""){alert("提示:\n\n请输入新闻内容!");document.publish.textarea.focus();returnfalse;}}实验心得实验的要求其实都是书本学习的应用,通过自己的体会实例才能真正学会以及以后的熟练的应用。每次实验错误还是会有的,改正的过程就是学习的过程,本次实验主要考察浏览器与文档的交互及新学的.js的引入应用,这些都比较巧妙,但实现的功能效果却特别好,javascripe实现的是一种实时的,动态的交互的表达能力。对于学习编程的我们特别有用。南昌大学实验报告学生姓名:xxx学号:xxx专业班级:xxx实验类型:□验证□综合■设计□创新实验日期:实验成绩:实验项目Servlet编程技术实验目的熟悉Servlet技术的创建和运行流程。会在web.xml配置Servlet的URL熟悉请求request和响应response接口熟悉请求转发接口requestDispatcher接口熟悉会话Session接口,掌握基于Session登录权限控制。实验内容完成一个基于Session的登录权限控制模块。
要求:主页登录表单提交后转到Servlet进行处理,根据用户类型转到不同的页面。如果在用户名或密码不正确把登录表单包含进来对于某些页面必须登录才能访问,如新闻发布页面。如果没有登录则禁止访问,并重定向到登录页面。实验仪器及耗材计算机,MyEclipse等软件。实验步骤安装并配置MyEclipse在电脑上,熟悉MyEclipse环境与基本操作后,新建一个名为shiyan的web工程,新建一个名为PortalServlet的servlet,发布工程并启动。在web-inf下编写loginForm.html在包中编写欢迎界面的代码WellcomeServlet.java实现登录权限编写登录表单login.html.创建另一个工程,并编写登录验证的servlet,文件名为LoginServlet.java编写管理员和普通用户的servlet,文件名为AdminServlet.java和NormalServlet.java。相关代码如下:1PortalServletpackagecom;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.RequestDispatcher;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;publicclassPortalServletextendsHttpServlet{publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=GBK"); PrintWriterout=response.getWriter(); out.println("<HTML><HEAD><TITLE>登录页面</TITLE></HEAD><BODY>"); Stringname=request.getParameter("username"); Stringpsw=request.getParameter("password"); if("web".equals(name)&&"123456".equals(psw)){ out.print("这里是PortalServlet!<BR>"); out.print("登录成功,下面把请求转发给wellComeServlet!<br>"); RequestDispatcherrd= request.getRequestDispatcher("WellcomeServlet"); rd.forward(request,response); } else{ //经常写成一句 out.print("这里是PortalServlet!<BR>没有登录或用户名密码错误!<br>"); out.print("下面通过include()把登录表单loginForm.html导入<br>"); request.getRequestDispatcher("/loginForm.html").include(request,response); } out.println("</BODY></HTML>"); out.flush(); out.close();}}2WellcomeServlet.javapackagecom;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;publicclassWellcomeServletextendsHttpServlet{ /** *ThedoGetmethodoftheservlet.<br> * *Thismethodiscalledwhenaformhasitstagvaluemethodequalstoget. * *@paramrequesttherequestsendbytheclienttotheserver *@paramresponsetheresponsesendbytheservertotheclient *@throwsServletExceptionifanerroroccurred *@throwsIOExceptionifanerroroccurred */ publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=GBK"); PrintWriterout=response.getWriter(); out.println("<HTML><HEAD><TITLE>wellcome</TITLE></HEAD><BODY>"); out.print("这里是WellcomeSerlvet!<br><br>"); out.print("欢迎"+request.getParameter("username")+"的到来!"); out.println("</BODY></HTML>"); out.flush(); out.close(); }}3loginForm.html<html><head> <title>登录表单</title> <metahttp-equiv="Content-type"content="text/html;charset=GBK"></head><body><formaction="servlet/PortalServlet">用户名:<inputtype=textname=username><br>密码:<inputtype=passwordname=password><br><inputtype=submitvalue="提交"> <inputtype=resetvalue="重置"></form></body></html>4另一工程sy的Loginservlet.javapackagecom;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.RequestDispatcher;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;publicclassLoginServletextendsHttpServlet{ publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=GBK"); PrintWriterout=response.getWriter(); Stringname=request.getParameter("username"); Stringpsw=request.getParameter("password"); if("admin".equals(name)&&"888888".equals(psw)){//管理员用户 HttpSessionsession=request.getSession(); //把登录信息(用户名和用户权限等级)存储在Session中。 session.setAttribute("username",name); session.setAttribute("grade","admin"); //重定向到管理员页面response.sendRedirect("AdminServlet"); } elseif("normal".equals(name)&&"123456".equals(psw)){//普通用户 HttpSessionsession=request.getSession(); //把登录信息(用户名和用户权限等级)存储在Session中。 session.setAttribute("username",name); session.setAttribute("grade","normal"); //重定向到管理员页面 response.sendRedirect("NormalServlet"); } else{//非法用户 out.print("<BR>用户名或密码错误!请重新登录!<br>"); //通过请求转发把登录表单包含进来 request.getRequestDispatcher("login.html").include(request,response); } }}5normalservlet.javapackagecom;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;publicclassNormalServeltextendsHttpServlet{ /** *ThedoGetmethodoftheservlet.<br> * *Thismethodiscalledwhenaformhasitstagvaluemethodequalstoget. * *@paramrequesttherequestsendbytheclienttotheserver *@paramresponsetheresponsesendbytheservertotheclient *@throwsServletExceptionifanerroroccurred *@throwsIOExceptionifanerroroccurred */ publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=GBK"); PrintWriterout=response.getWriter(); HttpSessionsession=request.getSession(); //获取Session中的用户权限信息 Stringname=(String)session.getAttribute("username"); Stringgrade=(String)session.getAttribute("grade"); //如果没有登录,重定向到登录页面 if(!"normal".equals(grade)){ response.sendRedirect("/login.html"); } //合法用户 out.println("<HTML>"); out.println("<HEAD><TITLE>普通用户页面</TITLE></HEAD>"); out.println("<BODY>"); out.println("<br>欢迎"+name+"用户!"); out.println("</BODY>"); out.println("</HTML>"); out.flush(); out.close(); }}6管理员packagecom;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;publicclassAdminServletextendsHttpServlet{ publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=GBK"); PrintWriterout=response.getWriter(); HttpSessionsession=request.getSession() //获取Session中的用户权限信息 Stringname=(String)session.getAttribute("username"); Stringgrade=(String)session.getAttribute("grade"); //如果不是管理员,重定向到登录页面 if(!"admin".equals(grade)){ response.sendRedirect("login.html"); } //合法用户 out.println("<HTML>"); out.println("<HEAD><TITLE>管理员页面</TITLE></HEAD>"); out.println("<BODY>"); out.println("<br>欢迎"+name+"管理员!"); out.println("</BODY>"); out.println("</HTML>"); out.flush(); out.close(); }}实验结果1通过浏览器访问web工程2表单登录效果2.1正确登录时2.1正确登录时2.2登录错误时二,权限控制页面未访问时登录页面效果2普通用户登录成功登录登录不成功管理员登录成功实验心得初次使用myeclipse,没有像以前使用dreamwaver那么熟悉,一些基本的都不是那么熟悉,问老师的问题现在想来只是基本常识吧,不过通过这个实验,大致会怎么用Myeclipse和通过它编写代码了,的确如老师讲的那样,上课看老师讲不如自己遇到错误再解决印象深刻。通过这个实验和对书本的再次学习已经熟悉Servlet技术的创建和运行流程,也发现了它相比其他软件功能更强大,关于权限控制页面的跳转问题,要注意路径,才能减少错误。南昌大学实验报告学生姓名:xxx学号:xxx专业班级:xxx班0实验类型:□验证□综合■设计□创新实验日期:20150604实验成绩:实验项目JSP编程技术实验目的熟悉JSP编译指令,动作标记。熟悉JSP的隐含对象正确理解request、session、application三个对象的作用域能正确处理汉字乱码问题能熟练使用JSP技术来编写网页实验内容编写一个新闻java类,用Myeclipse自动产生getter和settet函数编写管理员的新闻发布页面
要求如下:
1)撰写界面至少包括文件标题,所属栏目、作者、内容几项
2)界面用CSS进行美化
3)权限控制,必须是管理员用户才能访问,跟前面实验的登录权限控制关联起来。编写一个Servlet来处理新闻发布页面提交的表单
要求:
1)读取表单各项内容,并把存入一个文章对象中。
2)把文章对象绑定在request对象中,并转发到新闻显示页面。编写一个新闻显示页面。
要求:
1)编写静态页面模板,页面用div+css设计
2)设定文章对象已存在request对象中,取出文章对象
3)把静态页面的内容改成动态内容,如标题,作者,内容等。解决汉字乱码问题实验仪器及耗材计算机,Dreamweaver8,Photoshop,MyEclipse等软件。实验步骤1.新建一个web工程,主要文件如图所示:2.新建一个管理员新闻发布页面admin_index.jsp代码如下:<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%><framesetrows="140,*"cols="*"><framename="top"src="top.html"noresize="noresize"scrolling="no"frameborder="0"><framesetcols="180,*"rows="*"><framesrc="menu.html"name="menu"scrolling=“yes”><framesrc="publish.html"scrolling="yes"name="mainframe"></frameset></frameset>3.新闻显示页面show_news.jsp主要代码如下(隐藏部分代码):4.在servlet文件夹下处理新闻发布页面提交的表单,名为Publish.javapackageservlet;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importmons.beanutils.BeanUtils;importbll.NewsManage;importentity.News;publicclassPublishextendsHttpServlet{ publicPublish(){ super(); } publicvoiddestroy(){ super.destroy();//Justputs"destroy"stringinlog //Putyourcodehere } publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html"); PrintWriterout=response.getWriter(); out.println("<!DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.01Transitional//EN\">"); out.println("<HTML>"); out.println("<HEAD><TITLE>AServlet</TITLE></HEAD>"); out.println("<BODY>"); out.print("Thisis"); out.print(this.getClass()); out.println(",usingtheGETmethod"); out.println("</BODY>"); out.println("</HTML>"); out.flush(); out.close(); } publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=GBK"); request.setCharacterEncoding("GBK"); PrintWriterout=response.getWriter(); Newsnews=newNews(); try{ BeanUtils.populate(news,request.getParameterMap()); NewsManagenewsM=newNewsManage(); if(newsM.publish(news)) out.println("发布成功!"); else out.println("发布失败!"); }catch(Exceptione){ e.printStackTrace(); } } publicvoidinit()throwsServletException{ //Putyourcodehere }}实验结果效果图如图所示:admin_index.jsp登录权限控制效果新闻显示页面如图所示:实验心得通过实验的操作运用,对JSP功能运用有了进一步的了解。JSP基于强大的Java语言,具有良好的伸缩性,与JavaEnterpriseAPI紧密地集成在一起,在网络数据库应用开发领域具有得天独厚的优势。JSP在跨平台、执行速度等特性上具有很大技术优势,在很多方面都比较占优势的JSP在运用操作时还是比较容易的。只要在使用前先学习一下效果会很好。南昌大学实验报告学生姓名:xxx学号:xxx专业班级:xxx班实验类型:□验证□综合■设计□创新实验日期:20150601实验成绩:实验项目JavaBean编程技术实验目的熟悉JavaBean的规范会编写JavaBean;会在JSP和Servlet中创建和使用JavaBean对象掌握JSP的<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>的使用掌握JSP中表单和表单Bean的映射掌握Servlet中表单和表单Bean的映射会编写封装业绩逻辑的JavaBean会使用上传下载组件jspSmartUpload外部组件实验内容修改上一章实验的封装新闻(文章)的JavaBean,使其符合JavaBean规范修改新闻发表Serlvet,用来完成新闻发布表单的处理,要求利用映射机制把新闻表单映射到新闻的JavaBean中,以便后继把这个JavaBean写入数据库。编写一个封闭新闻管理的业务Bean.这里只需定义接口即可。参考教材,编写一个上传下载模块(可选)参考教材,实现登录动态验证(可选)实验仪器及耗材计算机,Dreamweaver8,Photoshop,MyEclipse等软件。实验步骤(1)新建一个业务逻辑bll包,在这下面建一个NewsManage.javapackagebll;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.util.ArrayList;importentity.Admin;importentity.News;publicclassNewsManage{ publicNewsgetNewsById(intid){ Connectionconn=dao.Conn.createConn(); Stringsql="select*fromnewswhereid=?"; ResultSetrs=null; Newsnews=null; try{ PreparedStatementpstat=conn.prepareStatement(sql); pstat.setInt(1,id); rs=pstat.executeQuery(); if(rs.next()){ news=newNews(); news.setId(rs.getInt("id")); news.setTitle(rs.getString("title")); news.setAuthor(rs.getString("author")); news.setNewstype(rs.getInt("typeid")); news.setContent(rs.getString("content")); } }catch(Exceptione){ e.printStackTrace(); returnnull; } returnnews; } publicArrayList<News>getNewsByTypeIdAndPageId(inttypeid,intpageid,intpagesize){returnnull; } publicbooleanlogin(Stringusername,Stringpassword){ returnfalse; } publicbooleanlogin(Adminadmin){ returnfalse; } publicbooleanpublish(Newsnews){ Connectionconn=dao.Conn.createConn(); Stringsql="insertintonews(title,author,typeid,content)values(?,?,?,?)"; try{ PreparedStatementpstat=conn.prepareStatement(sql); pstat.setString(1,news.getTitle()); pstat.setString(2,news.getAuthor()); pstat.setInt(3,news.getNewstype()); pstat.setString(4,news.getContent()); inti=pstat.executeUpdate(); if(i!=1)returnfalse; }catch(SQLExceptione){ e.printStackTrace(); returnfalse; } returntrue; } publicbooleanmodify(Newsnews){ returnfalse; } publicbooleandelete(intid){ returnfalse; } publicstaticvoidmain(String[]args){ }}(2)在Servlet中实现参数与JavaBean属性自动映射。新闻发布页面:publish.jsp部分代码如下<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%><framesetrows="140,*"cols="*"><framename="top"src="top.html"noresize="noresize"scrolling="no"frameborder="0"><framesetcols="180,*"rows="*"><framesrc="menu.html"name="menu"scrolling=“yes”><framesrc="publish.html"scrolling="yes"name="mainframe"></frameset></frameset>编写Servlet:publish.java在Servlet中实现表单元素自动转存到表单Bean中的基本方法是:首先用ServletRequest.getParameterMap()获得存储表单元素的Map对象,再利用BeanUtils.populate()将Map对象中表单值填入JavaBean对象中。文件名:RegServlet.java(部分代码)packageservlet;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importmons.beanutils.BeanUtils;importbll.NewsManage;importentity.News;publicclassPublishextendsHttpServlet{ publicPublish(){ super(); } publicvoiddestroy(){ super.destroy();//Justputs"destroy"stringinlog //Putyourcodehere } publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html"); PrintWriterout=response.getWriter(); out.println("<!DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML4.01Transitional//EN\">"); out.println("<HTML>"); out.println("<HEAD><TITLE>AServlet</TITLE></HEAD>"); out.println("<BODY>"); out.print("Thisis"); out.print(this.getClass()); out.println(",usingtheGETmethod"); out.println("</BODY>"); out.println("</HTML>"); out.flush(); out.close(); } publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=GBK"); request.setCharacterEncoding("GBK"); PrintWriterout=response.getWriter(); Newsnews=newNews(); try{ BeanUtils.populate(news,request.getParameterMap()); NewsManagenewsM=newNewsManage(); if(newsM.publish(news)) out.println("发布成功!"); else out.println("发布失败!"); }catch(Exceptione){ e.printStackTrace(); } } publicvoidinit()throwsServletException{ //Putyourcodehere }}实验结果实验心得通过实验的学习和运用,我知道并理解了JavaBean是一个可以重用的软件组件,它们在容器中运行,对外提供具体的业务逻辑功能。JavaBean作为一个组件,具有重用性、封装性和独立性等特点。可以在应用程序中使用,也可以提供给其它应用程序使用,它能构成复合组件、小程序、应用程序或Servlet。它是一个比较好用的系统工具,对学习系统十分有益。南昌大学实验报告学生姓名:xxx学号:xxx专业班级:信管21班实验类型:□验证□综合■设计□创新实验日期:20150608实验成绩:实验项目JDBC数据库编程技术实验目的掌握JDBC来访问数据库的一般步聚掌握JDBC来连接各类数据库掌握Connection、Statement、PrepareStatement和ResultSet几个类。掌握JDBC事务处理机制。会编写使用JDBC访问数据库的JavaBean掌握分页显示技术掌握连接池技术实验内容创建一个数据库,创建用户信息表、新闻表(与前面的JavaBean对应,注意类型的选择)创建一个访问数据库的JavaBean,或把创建连接createConn(),关闭连接closeConn()方法写到新闻管理业务Bean中。实现新闻管理业务Bean中的各个模块,如登录验证、新闻发布、新闻列表、新闻阅读等数据库访问。配置Tomcat自带的连接池,并修改访问数据库的Bean或新闻管理业务Bean中的创建连接方法createConn(),使之能调用连接池。编写新闻阅读、新闻列表JSP页面。实验仪器及耗材计算机,Dreamweaver8,MyEclipse等软件。实验步骤创建数据库创建一个dao包和entity包Conn.java代码如下:packagedao;importjava.sql.Connection;importjava.sql.DriverManager;importjavax.naming.InitialContext;importjavax.sql.DataSource;publicclassConn{ privatestaticStringdriverName="com.mysql.jdbc.Driver"; privatestaticStringdbURL="jdbc:mysql://localhost:3306/info"; privatestaticStringuser="root"; privatestaticStringpassword="root"; //创建连接,存储在conn变量中。方法被构造方法调用或被其它方法显式调用 publicstaticConnectioncreateConn(){ Connectionconn; try{ Class.forName(driverName); conn=DriverManager.getConnection(dbURL,user,password); } catch(Exceptione) { e.printStackTrace(); returnnull; } returnconn; }}entity中Admin.java如下:(News和NewType)等代码省略packageentity;publicclassAdmin{ privateStringadminname; privateStringpassword; publicStringgetAdminname(){ returnadminname; } publicvoidsetAdminname(Stringadminname){ this.adminname=adminname; } publicStringgetPassword(){ returnpassword; } publicvoidsetPassword(Stringpassword){ this.password=password; }}编写新闻阅读和新闻列表Admin_newsList.jsp代码如下:<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%><%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><head><basehref="<%=basePath%>"><title>MyJSP'admin_newsList.jsp'startingpage</title> <metahttp-equiv="pragma"content="no-cache"> <metahttp-equiv="cache-control"content="no-cache"> <metahttp-equiv="expires"content="0"> <metahttp-equiv="keywords"content="keyword1,keyword2,keyword3"> <metahttp-equiv="description"content="Thisismypage"> <!-- <linkrel="stylesheet"type="text/css"href="styles.css"> --></head><body>ThisismyJSPpage.<br></body></html>Readne.html代码如下:<!DOCTYPEhtml><html><head><title>readne.html</title> <metahttp-equiv="keywords"content="keyword1,keyword2,keyword3"><metahttp-equiv="description"content="thisismypage"><metahttp-equiv="content-type"content="text/html;charset=gbk"><!--<linkrel="stylesheet"type="text/css"href="./styles.css">--></head><body>ThisismyHTMLpage.<br></body></html>实验结果实验心得通过学习操作,了解到JDBC是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,JDBC实现了所有这些面向标准的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新疆警察学院《数字逻辑与数字电路技术实验》2023-2024学年第一学期期末试卷
- 《课间数学家逸闻》课件
- 校园贷款安全
- 《继承的法律冲突法》课件
- 空港股合同范例
- 手工车间设备转让合同范例
- 医疗备案合同范例
- 防水增项合同范例
- 家养宠物购买合同范例
- 雕塑采购合同范例
- 光伏扶贫项目可行性研究报告
- 深信服adesk桌面云方案测试
- PDCA降低I类切口感染发生率
- 弘扬兵团精神做兵团传人课件
- 数控车床上下料机械手设计说明书
- 2022年高考全国甲卷语文试题评讲课件55张
- 学校学生在校证明word模板
- 欠条(标准模版)
- 场内叉车安全培训
- 不锈钢项目立项申请报告
- 国家开放大学电大本科《西方社会学》2023-2024期末试题及答案(试卷代号:1296)
评论
0/150
提交评论