JavaWeb实习报告.docx
- 文档编号:25898159
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:11
- 大小:22.22KB
JavaWeb实习报告.docx
《JavaWeb实习报告.docx》由会员分享,可在线阅读,更多相关《JavaWeb实习报告.docx(11页珍藏版)》请在冰豆网上搜索。
JavaWeb实习报告
JavaWeb实习报告
一、实习目的与任务
为了锻炼我们的实践动手能力,提高我们分析问题、解决问题的能力,培养我们的工作意识和团队合作的意识,了解软件开发的过程和基本流程,以便于帮助我们能够在大四毕业时可找到一份客观的工作,我们在大四刚开学就开始了生产实习。
这次实习的主要任务是JavaWeb软件开发,学习Java开发中比较典型且经常用到的几个知识,其中包括Jsp、Servlet、Html、JDBC等等,另外,Java开发中也必须要用到数据库,因此实习中还加入了Mysql数据库的学习。
掌握了这些基本知识之后,就开始真正的项目开发,而且此次我们所要开发的项目是有关博客页面的项目,并完成老师指定的功能。
二、实习地点
重庆足下科技有限公司
三、实习内容和要求
我们这次实习,在校外也就是软帝公司总共是十天,开始几天基本上是每天学习一个方面的内容,大概学习了六天其中包括Jsp、Servlet、Html、JDBC、Mysql等等,剩下几天就是项目时间,做出一个博客开发的项目。
大致内容如下:
1、Java语言简介
Java语言Java是由Sun微系统公司所发展出来的程序语言,它是一种面向地向的语言,Java也号称是能跨平台使用的语言,这主要是因为Java本身被编译之后,并不是直接产生可执行的代码,而是产生一种中间码叫作ByteCode,这种代码必需在透过Java的直译器来解读它,才能够真正的被执行,所以只要平台上装有这种Java的直译器,就能解读ByteCode也就能执行Java编译过的程序,故与Java程序是在那种平台上被编译的,就完全没有干系了。
Java写出来的程序可分为两类,分别是JavaApplet与一般的Application,而Application这一类就与一般的程序如C++的作用是比较类似的,是一个独立可执行的应用程序,像HotJava是一个浏览器,且就是使用Java程序所发展出来的。
最常见的Java程序包括应用程序和applets。
应用程序是单独的程序,诸如HotJava浏览器软件就是用Java语言编写的。
Applets类似于应用程序,但是它们不能单独运行,Applets可以在支持Java的浏览器中运行。
Applet主要是内置于HTML网页中,在浏览时发挥作用。
Java的目标是为了满足在一个充满各式各样不同种机器,不同操作系统平台的网络环境中开发软件。
利用Java程序语言,可以进行网页开发,其中包括静态语言开发与动态网页开发,可以在网页中加入各式各样的动态效果,可以放上一段动画,加入声音,也可以建立交互式网页等。
2、Html语言
Html是超文本标记语言,它是一种非严格的标记语言,它是web开发的基础,也是制作网页的基础,纯html的页面是静态的。
Html它由head和body两部分组成,所写的内容一般都是放在body中,其中可以添加Form表单域,其中属性Action表示提交的动作,也就是提交到那个页面,可表示为Action=“”;Method属性表示提交的方法,一般为设为post;在Form表单域中添加table表,table中的属性只有很多,常用的有width、height、align、colspan等等,当然,有表就会有行和列,其中行用tr表示,列用td表示,行与列的属性值与table差不多。
在行与列中还可以添加一些按钮,链接等等,添加按钮是用表示,添加链接则用 运用Html我们开发了一个e-mail邮件发送系统,这个界面主要用到了七个htm文件,有主页面main.html,其中主页面分为上部、左部和右部,分别用top.html、left.html、right.html文件来表示。 另外还增加了登录页面(login.html)、注册页面(regist.html)以及书写邮件的页面(write.html),由这些html文件共同实现了e-mail的基本界面。 首先进入login登录界面,输入用户名和密码,而且用户名和密码有一定的限制,输入信息符合要求后方可进入主页面,另外,在登录界面的用户名后还有一个超链接“注册”,点击“注册”就可以进入注册的页面,注册页面上有五行,包括用户名、密码、重复密码以及上传头像,另外还有两个按钮“提交注册”和“重置”,这样即可完成注册。 登陆界面中还用到了JavaScript,用以给出用户名和密码的限制条件,其中有一个function方法,用到的代码如下: functioncheckInfo(){ varname=document.getElementById('username').value; varpass=document.getElementById('pass').value; if(name==""){ alert("请输入用户名! "); returnfalse; }else{ if(pass==""){ alert("请输入密码! "); returnfalse; }else{ returntrue; } } } 以后若要用到限制条件,都是运用与此类似的方法,这段代码可以说是一个模板。 进入到主页面后,可以看到三个部分,左边的部分用链接列出几项,包括“写信”、“收信”、“联系人”、“XX”等,右边显示好友上传图片,顶部是背景图片。 点击左边的写信,跳转到write页面,可以写邮件。 右边的现实的图片可以进行查看,与空间显示的图片差不多,也是可以由小图片转换成大图片。 当鼠标点击到小图标X上时,图标就亮了,鼠标拿走,图标就暗了, 另外,我们运用Html还设计了一个hao123页面,页面中用到了text文本框、超链接、行列的布置,图片的加载等等,做出来之后,整体感觉与hao123本来的页面基本差不多。 3、Mysql数据库 Mysql是一种小型的数据库,它与Java的联系十分密切,MySQL是一个小型关系型数据库管理系统,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了Mysql作为网站数据库,因此,网页编写大多数都是用Mysql。 Mysql是一个关联数据库,它将数据保存在不同的表中,而不是将所有数据放在一个大的仓库内。 这样就增加了速度并提高了灵活性。 Mysql的Sql指得是“结构化查询语言”,Sql是用于访问数据库的最常用标准化语言。 同时,Mysql软件也是一种“开放源码”的软件,意味着任何人都能使用和改变软件。 任何人都能从Internet下载Mysql软件,而无需支付任何费用。 如果愿意,你可以研究源码并进行恰当的更改,以满足你自己的需求。 Mysql软件采用了GPL(GNU通用公共许可证),定义了在不同情况下可以用软件作的事和不可作的事。 数据库服务器具有快速、可靠和易于使用。 Mysql服务器还有一套实用的特性集合,在基准测试主页上,给出了Mysql服务器和其他数据库管理器的比较结果。 Mysql支持多种连接,包括TCP/IP、ODBC和JDBC等多种数据库连接途径,而我们此次实习用到的是JDBC数据库连接方法,这一点在下面会讲到。 此次实习我们主要学习了如何在Mysql数据库中建立表格,如何执行Sql语句等等。 首先,打开Mysql编写框,执行语句showdatabases,即可查看Mysql中有哪些数据库,运用create+数据库名语句可建立想要的数据库,运用use+数据库名即可进入对应的数据库。 进入数据库之后,就可以执行数据库中的增、删、查、改等Sql语句了,运用createtable+表名(表中所需要的元素),这样就可以建立一张表了,运用desc+表名就可以查看表,运用Sql语句“select*from+表名”就可以查看表中的所有数据,运用“insertinto……”语句可以向表中添加数据;运用“update+表set……Where……”可以更改表中指定的某项数据;运用“delete+表where……”语句可以删除表中的某项数据…… 4、JDBC数据库连接 Java中的JDBC,JDBC是JavaDataBaseConnectivity的缩写,是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。 JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。 连接数据库的方法有一个模板,代码如下: publicclassDBManager{ privatestaticfinalStringURL="jdbc: mysql: //localhost: 3306/test"; privatestaticfinalStringUSER="root"; privatestaticfinalStringPASSWORD="123"; privatestaticConnectionconn=null; publicstaticConnectiongetConn(){ try{ if(conn==null){ //注册驱动 Class.forName("com.mysql.jdbc.Driver"); conn=DriverManager.getConnection(URL,USER,PASSWORD); }}catch(ClassNotFoundExceptione){ e.printStackTrace(); }catch(SQLExceptione){ e.printStackTrace();} returnconn; } } 以后运用数据库连接基本上都是用这个模板,方便又有效,而且在其他地方连接数据库时都可以直接对其进行调用。 通过JDBC我们可以连接到所用的数据库mysql,可以从数据库中提取数据,也可以将所写数据存入数据库,用JDBC连接数据库都是一个模式,基本上都是按照一个套路在写,运用JDBC以及MyEclipse工具,我们也做出了一个小型的系统。 系统具有添加、查询、删除、修改、退出系统等功能,添加功能可以控制台中所写的信息添加到数据库中,查询信息则是根据id号从数据库中查询信息并将信息显示出来,增加、删除亦是如此,要做出这些功能首先都必须先连接到数据库,这就要用到JDBC技术,还要用到Connection方法,首先加载mysql数据库的驱动,然后在创建连接,连接时要提供所用计算机的IP地址和端口号,以及mysql数据库数据库的用户名和密码。 连接好数据库后,再根据所需要的功能编写出对应的方法,不同方法对应不同的sql语句,例如添加信息(add)中用insert语句,删除用delete语句,修改用update语句等等,然后主函数中提供对功能的选择,不同的编号对应不同的功能,并且根据所选的功能调用的方法。 5、JSP JSP是JavaServerPages的缩写,它是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。 JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(JavaScript)和JSP标记(tag),从而形成JSP文件(*.jsp)。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。 插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP页面通常被编译成为JavaServlets,这是一个标准的Java扩展。 页面开发人员能够访问全部的Java应用环境,以利用Java技术的扩展性和可移植性。 当JSP页面第一次被调用时,如果它还不存在,就会被编译成为一个JavaServlets类,并且存储在服务器的内存中。 这就使得在接下来的对该页面的调用中,服务器会有非常快的响应。 我们所做的学生信息管理系统也需要用到Mysql数据库和JDBC技术,所做的系统同样可以添加、修改、查询和删除学生信息,不过这些功能是运用不同的页面显示,点击不同的按钮即可跳转到所需的页面,而后获得想要的信息。 每个功能都建立一个JSP页面,其中主页面是Index.jsp,在这个页面中有两个链接,分别转到增加信息和浏览信息页面,浏览信息页面中还包括了对信息的修改和删除。 例如,系统中浏览学生信息的页面的代码如下: forEachitems="${stus}"var="stu"> forEach> 另外还用到了两个Java类StuDAO和StuDTO,这两个类中用到JDBC技术,它们分别用以从数据库中读取数据和将数据存入到数据库中。 这两个类中有很多方法,通过调用这些方法即可实现学生信息管理系统中的增、查、删、改等功能! 6、Servlet Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。 Servlet生成响应内容并将其传给Server,响应内容动态生成,通常取决于客户端的请求。 service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法,用的比较普遍的是doPost()方法。 举例如下: publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ //1、获取id Stringsid=request.getParameter("id"); intid=Integer.parseInt(sid); //2、根据id查询到对应的学生信息 StuDAOsdao=newStuDAO(); StuDTOstu=sdao.queryStu(id); //3、将stu传递到studentModify.jsp页面显示 request.setAttribute("stu",stu); request.getRequestDispatcher("studentModify.jsp").forward(request,response); 我们同样是以学习建立学生信息管理系统为例来学习Servlet的,Servlet与JSP差不多,最主要的差别是JSP是实现普通静态HTML和动态HTML混合编码的技术,Servlet则是web页面和服务器之间的连接物,而这基本上没什么区别。 在编写学生信息管理系统的时候,只不过在昨天编写的基础上,将某些JSP文件运用Servlet表示,像那些只做显示用的JSP页面不做变化,而中间有调用StuDAO中的方法的JSP页面,它们不做显示用,而是要与数据库联系起来,像这些JSP页面就可以转换成相应的Servlet,其中的代码与JSP中的几乎一样,这样处理之后,减少了页面,不过功能没有变化,更加方便了! 四、实习总结及分析 这次实习主要是学习JavaWeb开发方面的相关知识,主要的有JSP、Servlet、HTML,另外还有JDBC,Mysql数据库等等。 首先是JSP,它是JavaWeb开发的基础,需要的页面都是用JSP来建立的,它是一种动态的网页技术,其中,可以显示动态画面以及动画效果,在其中也可以编写Java代码,也可以加入html编写语言,通过form表单中的action属性可以实现页面间的跳转,点击不同的按钮,可以跳转到相应的页面,它是JavaWeb编程中必不可少的部分,Java语言开发的任何项目都要用到它; 其次是Servlet,它也是JavaWeb开发中必不可少的部分,Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。 Servlet生成响应内容并将其传给Server,响应内容动态生成,通常取决于客户端的请求。 service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法,用的比较普遍的是doPost()方法。 再次,是HTML语言,它也是必不可少的,经常是嵌入在JSP中运用,它是一种静态页面开发技术,其中用的最多的是运用HTML语言建立form表单,其中有行(tr)和列(td),另外它的标签 最后,其他几个方面也非常重要,像JDBC用于应用程序和数据库的连接,没有这个方法就无法和数据库连接起来,所以十分重要;Mysql数据库也是Java项目开发中用到最多的一种数据库,没有数据库就无法实现信息的增、删、查、改,所以这些都是必不可少的。 五、实习体会 实习就这样在不知不觉中就结束了,这次实习我们学到了很多知识,Java中的HTML、JSP、Servlet、JDBC等等,虽然这些知识我并没有学得很精通、深邃,也只是掌握了一点皮毛而已,不过对于JAVA我们还是有了更深刻的了解,知道了Java的博大精深,此外我还学到了另外一种数据库,Mysql数据库,这是一个小型数据库,与以前的SQLServer有相同也有不同,同时还学会了如何运用MyEclipse开发工具等等。 同时也学到了项目开发的思考角度和基本流程,提高了我们分析和解决问题的能力,锻炼了我们实际动手操作能力,为以后的工作打下了坚实的基础。 实习就快结束了,在此我要特别感谢几位老师,,首先是带领我们实习的刘黎志老师,对我们尽心尽力,经常到实习基地监督指导我们,感谢老师对于我们的关心和照顾;其次,就是要感谢带领我们进行第一阶段学习的软帝指导老师杨涛老师,他细心的教授我们知识,对没听懂的同学一一辅导,在他的讲解下我们学到了很多基础知识;最后要感谢带领我们做项目的马文成老师,他的耐心讲解让我们感受到了做项目的乐趣,哪位同学有错误他就会一一帮助修改,真的非常感谢他们! 如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。${stu.sno} ${stu.sname} ${stu.sex} ${stu.age} ${stu.major}