JavaWeb实习报告

时间:2024.5.2

JavaWeb实习报告

一、实习目的与任务

为了锻炼我们的实践动手能力,提高我们分析问题、解决问题的能力,培养我们的工作意识和团队合作的意识,了解软件开发的过程和基本流程 ,以便于帮助我们能够在大四毕业时可找到一份客观的工作,我们在大四刚开学就开始了生产实习。

这次实习的主要任务是Java Web软件开发,学习Java开发中比较典型且经常用到的几个知识,其中包括Jsp、Servlet、Html、JDBC等等,另外,Java开发中也必须要用到数据库,因此实习中还加入了Mysql数据库的学习。掌握了这些基本知识之后,就开始真正的项目开发,而且此次我们所要开发的项目是有关博客页面的项目,并完成老师指定的功能。

二、实习地点

重庆足下科技有限公司

三、实习内容和要求

我们这次实习,在校外也就是软帝公司总共是十天,开始几天基本上是每天学习一个方面的内容,大概学习了六天其中包括Jsp、Servlet、Html、JDBC、Mysql等等,剩下几天就是项目时间,做出一个博客开发的项目。大致内容如下:

一、Java语言简介

Java语言Java是由Sun微系统公司所发展出来的程序语言,它是一种面向地向的语言,Java也号称是能跨平台使用的语言,这主要是因为Java本身被编译之后,并不是直接产生可执行的代码,而是产生一种中间码叫作 ByteCode,这种代码必需在透过 Java 的直译器来解读它,才能够真正的被执行,所以只要平台上装有这种Java的直译器,就能解读ByteCode也就能执行Java编译过的程序,故与Java程序是在那种平台上被编译的,就完全没有干系了。

Java写出来的程序可分为两类,分别是Java Applet与一般的Application,而Application这一类就与一般的程序如C++的作用是比较类似的,是一个独立可执行的应用程序,像HotJava是一个浏览器,且就是使用Java程序所发展出来的。最常见的Java程序包括应用程序和applets。应用程序是单独的程序,诸如HotJava浏览器软件就是用Java语言编写的。

Applets类似于应用程序,但是它们不能单独运行, Applets可以在支持Java的浏览器中运行。Applet主要是内置于HTML网页中,在浏览时发挥作用。

Java的目标是为了满足在一个充满各式各样不同种机器,不同操作系统平台的网络环境中开发软件。利用Java程序语言,可以进行网页开发,其中包括静态语言开发与动态网页开发,可以在网页中加入各式各样的动态效果,可以放上一段动画,加入声音,也可以建立交互式网页等。

二、Html语言

Html是超文本标记语言,它是一种非严格的标记语言,它是web开发的基础,也是制作网页的基础,纯html的页面是静态的。

Html它由head和body两部分组成,所写的内容一般都是放在body中,其中可以添加Form表单域,其中属性 Action表示提交的动作,也就是提交到那个页面,可表示为Action=“http://www.baidu.com”;Method属性表示提交的方法,一般为设为post;在Form表单域中添加table表,table中的属性只有很多,常用的有width、height、align、colspan等等,当然,有表就会有行和列,其中行用tr表示,列用td表示,行与列的属性值与table差不多。

在行与列中还可以添加一些按钮,链接等等,添加按钮是用<input>表示,添加链接则用<a href="">来添加,另外,还有一个比较有用的标签<div>,可以画出一个框,里面可以添加所需要的东西。

运用Html我们开发了一个e-mail邮件发送系统,这个界面主要用到了七个htm文件,有主页面 main.html,其中主页面分为上部、左部和右部,分别用top.html、left.html、right.html文件来表示。另外还增加了登录页面(login.html)、注册页面(regist.html)以及书写邮件的页面(write.html),由这些html文件共同实现了e-mail的基本界面。

首先进入login登录界面,输入用户名和密码,而且用户名和密码有一定的限制,输入信息符合要求后方可进入主页面,另外,在登录界面的用户名后还有一个超链接“注册”,点击“注册”就可以进入注册的页面,注册页面上有五行,包括用户名、密码、重复密码以及上传头像,另外还有两个按钮“提交注册”和“重置”,这样即可完成注册。

登陆界面中还用到了JavaScript,用以给出用户名和密码的限制条件,其中有一个function方法,用到的代码如下:

<script type="text/javascript">

function checkInfo(){

var name=document.getElementById('username').value;

var pass=document.getElementById('pass').value;

if(name==""){

alert("请输入用户名!");

return false;

}else{

if(pass==""){

alert("请输入密码!");

return false;

}else{

return true;

}

}

}

</script>

以后若要用到限制条件,都是运用与此类似的方法,这段代码可以说是一个模板。

进入到主页面后,可以看到三个部分,左边的部分用链接列出几项,包括“写信”、“收信”、“联系人”、“百度”等,右边显示好友上传图片,顶部是背景图片。点击左边的写信,跳转到write页面,可以写邮件。右边的现实的图片可以进行查看,与空间显示的图片差不多,也是可以由小图片转换成大图片。当鼠标点击到小图标X上时,图标就亮了,鼠标拿走,图标就暗了,

另外,我们运用Html还设计了一个hao123页面,页面中用到了text文本框、超链接、行列的布置,图片的加载等等,做出来之后,整体感觉与hao123本来的页面基本差不多。

三、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编写框,执行语句show databases,即可查看Mysql中有哪些数据库,运用create+数据库名语句可建立想要的数据库,运用use+数据库名即可进入对应的数据库。

进入数据库之后,就可以执行数据库中的增、删、查、改等Sql语句了,运用create table +表名(表中所需要的元素),这样就可以建立一张表了,运用desc+表名就可以查看表,运用Sql语句“select * from +表名”就可以查看表中的所有数据,运用“insert into ……”语句可以向表中添加数据;运用“update +表 set …… Where……”可以更改表中指定的某项数据;运用“delete +表 where ……”语句可以删除表中的某项数据……

四、JDBC数据库连接

Java中的JDBC,JDBC是Java Data Base Connectivity的缩写,是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。

连接数据库的方法有一个模板,代码如下:

public class DBManager {

private static final String URL="jdbc:mysql://localhost:3306/test";

private static final String USER="root";

private static final String PASSWORD="123";

private static Connection conn=null;

public static Connection getConn(){

try {

if(conn==null){

//注册驱动

Class.forName("com.mysql.jdbc.Driver");

conn=DriverManager.getConnection(URL,USER,PASSWORD);

} } catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace() ;}

return conn;

}

}

以后运用数据库连接基本上都是用这个模板,方便又有效,而且在其他地方连接数据库时都可以直接对其进行调用。

通过JDBC我们可以连接到所用的数据库mysql,可以从数据库中提取数据,也可以将所写数据存入数据库,用JDBC连接数据库都是一个模式,基本上都是按照一个套路在写,运用JDBC以及MyEclipse工具,我们也做出了一个小型的系统。

系统具有添加、查询、删除、修改、退出系统等功能,添加功能可以控制台中所写的信息添加到数据库中,查询信息则是根据id号从数据库中查询信息并将信息显示出来,增加、删除亦是如此,要做出这些功能首先都必须先连接到数据库,这就要用到JDBC技术,还要用到Connection 方法,首先加载mysql数据库的驱动,然后在创建连接,连接时要提供所用计算机的IP地址和端口号,以及mysql数据库数据库的用户名和密码。

连接好数据库后,再根据所需要的功能编写出对应的方法,不同方法对应不同的sql语句,例如添加信息(add)中用insert语句,删除用delete语句,修改用update语句等等,然后主函数中提供对功能的选择,不同的编号对应不同的功能,并且根据所选的功能调用的方法。

五、JSP

JSP是Java Server Pages的缩写,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(JavaScript)和JSP标记(tag),从而形成JSP文件(*.jsp)。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

JSP页面通常被编译成为Java Servlets,这是一个标准的Java扩展。页面开发人员能够访问全部的Java应用环境,以利用Java技术的扩展性和可移植性。当JSP页面第一次被调用时,如果它还不存在,就会被编译成为一个Java Servlets类,并且存储在服务器的内存中。这就使得在接下来的对该页面的调用中,服务器会有非常快的响应。

我们所做的学生信息管理系统也需要用到Mysql数据库和JDBC技术,所做的系统同样可以添加、修改、查询和删除学生信息,不过这些功能是运用不同的页面显示,点击不同的按钮即可跳转到所需的页面,而后获得想要的信息。每个功能都建立一个JSP页面,其中主页面是Index.jsp,在这个页面中有两个链接,分别转到增加信息和浏览信息页面,浏览信息页面中还包括了对信息的修改和删除。

例如,系统中浏览学生信息的页面的代码如下:

<body>

<table align="center">

<tr bgcolor="pink">

<td width="100px" align="center">学号</td>

<td width="100px" align="center">姓名</td>

<td width="50px" align="center">性别</td>

<td width="50px" align="center">年龄</td>

<td width="160px" align="center">专业</td>

<td width="180px" align="center">操作</td>

</tr>

<c:forEach items="${stus}" var="stu">

<tr>

<td>${stu.sno}</td>

<td>${stu.sname}</td>

<td>${stu.sex}</td>

<td>${stu.age}</td>

<td>${stu.major}</td>

<td align="center">

<a href="studentDelete.jsp">删除</a>

<a href="studentUpdate.jsp">修改</a>

</td> </tr> </c:forEach>

</table>

<body>

另外还用到了两个Java类StuDAO和StuDTO,这两个类中用到JDBC技术,它们分别用以从数据库中读取数据和将数据存入到数据库中。这两个类中有很多方法,通过调用这些方法即可实现学生信息管理系统中的增、查、删、改等功能!

六、Servlet

Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。

Servlet生成响应内容并将其传给Server,响应内容动态生成,通常取决于客户端的请求。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法,用的比较普遍的是doPost()方法。举例如下:

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

//1、获取id

String sid=request.getParameter("id");

int id=Integer.parseInt(sid);

//2、根据id查询到对应的学生信息

StuDAO sdao=new StuDAO();

StuDTO stu=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中的几乎一样,这样处理之后,减少了页面,不过功能没有变化,更加方便了!

四、实习总结及分析

这次实习主要是学习Java Web开发方面的相关知识,主要的有JSP、Servlet、HTML,另外还有JDBC,Mysql数据库等等。

首先是JSP,它是Java Web开发的基础,需要的页面都是用JSP来建立的,它是一种动态的网页技术,其中,可以显示动态画面以及动画效果,在其中也可以编写Java代码,也可以加入html编写语言,通过form表单中的action属性可以实现页面间的跳转,点击不同的按钮,可以跳转到相应的页面,它是Java Web编程中必不可少的部分,Java语言开发的任何项目都要用到它;

其次是Servlet,它也是Java Web开发中必不可少的部分,Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。Servlet生成响应内容并将其传给Server,响应内容动态生成,通常取决于客户端的请求。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法,用的比较普遍的是doPost()方法。

再次,是HTML语言,它也是必不可少的,经常是嵌入在JSP中运用,它是一种静态页面开发技术,其中用的最多的是运用HTML语言建立form表单,其中有行(tr)和列(td),另外它的标签<div>也用的比较多,主要是利用它可以在页面上任意移动,而且它的大小不会改变,还可以隐藏、变透明等等,再有就是其中的JavaScript用的也比较多,主要是写一些function方法,用来限制一些信息;

最后,其他几个方面也非常重要,像JDBC用于应用程序和数据库的连接,没有这个方法就无法和数据库连接起来,所以十分重要;Mysql数据库也是Java项目开发中用到最多的一种数据库,没有数据库就无法实现信息的增、删、查、改,所以这些都是必不可少的。

五、实习体会

实习就这样在不知不觉中就结束了,这次实习我们学到了很多知识,Java中的HTML、JSP、Servlet、JDBC等等,虽然这些知识我并没有学得很精通、深邃,也只是掌握了一点皮毛而已,不过对于JAVA我们还是有了更深刻的了解,知道了Java的博大精深,此外我还学到了另外一种数据库,Mysql数据库,这是一个小型数据库,与以前的SQL Server 有相同也有不同,同时还学会了如何运用MyEclipse开发工具等等。

同时也学到了项目开发的思考角度和基本流程,提高了我们分析和解决问题的能力,锻炼了我们实际动手操作能力,为以后的工作打下了坚实的基础。

实习就快结束了,在此我要特别感谢几位老师,,首先是带领我们实习的刘黎志老师,对我们尽心尽力,经常到实习基地监督指导我们,感谢老师对于我们的关心和照顾;其次,就是要感谢带领我们进行第一阶段学习的软帝指导老师杨涛老师,他细心的教授我们知识,对没听懂的同学一一辅导,在他的讲解下我们学到了很多基础知识;最后要感谢带领我们做项目的马文成老师,他的耐心讲解让我们感受到了做项目的乐趣,哪位同学有错误他就会一一帮助修改,真的非常感谢他们!

  • 1
  • 2
  • 全文阅读
更多相关推荐:
java web课程设计报告.用户注册界面设计

课程设计Javaweb开发课程设计论坛系统用户注册界面的设计目录设计目的设计内容及目标定义CSS样式也就是网页样式4利用HTML语言安排控件5JavaScript交互功能的实现8HtmlcssjspJavaSc...

java课程设计报告

黄淮学院JAVA课程设计报告题目:《日记本的设计与实现》课程设计学院:信息工程学院姓名:学号:专业:软件工程班级:软工1101B班指导教师:二0##年十二月目录1.引言...32.设计目的与任务...43.设计…

Java课程设计报告模板

Java程序设计课程设计报告20xx20xx年度第1学期Hannio塔专业学生姓名班级学号指导教师完成日期计算机科学技术网络工程马千里B计算机1021010704213徐森20xx年1月8日Hannoi塔目录目...

Java课程设计报告

安阳工学院计算机学院JAVA课程设计报告蜘蛛纸牌游戏专业班级09级网络工程2班学生姓名李瑞琳学生学号20xx03060016小组成员司慧晓郑亚楠司小婷杨达允指导教师姓名宋强目录1选题目的与系统概述32系统可行性...

java实习报告模板

新疆农业职业技术学院《Java程序设计》教学实习报告部门:信息技术分院专业:班级:姓名:指导教师:徐玉莲《Java程序设计》教学实习报告一、实习时间:年月日至年月日二、实习地点:三、实习目的1、掌握搭建Java…

java实训报告模板

辽宁建筑职业学院Java高级应用实训报告课题名称婚庆公司网站专业软件技术班级xxxxxxxxxx学号姓名xxxx指导教师xxx二O一三年十二月三十日成绩评定标准1目录一课程设计目的32二课程设计题目描述和要求3...

java实习总结报告

java实习总结报告,内容附图。

java实训报告

Java实训设计报告项目名称万年历记事本专业计算机网络技术班级0922学号姓名石家庄科技信息职业学院信息工程系20xx年5月30日Java实训设计报告项目名称一项目需求整合万年历和记事本的功能提供重要事件记录功...

java生产实习报告

西安邮电学院通信与信息工程学院生产实习报告专业班级:学生姓名:学号(班内序号):20##年3月23日西安邮电学院通信与信息工程学院生产实习考核表西安邮电学院通信与信息工程学院院(系)生产实习过程考核表Andro…

Java培训实习报告

实习报告实习名称实习时间学生姓名学院名称专业名称班级名称学号指导教师20xx082620xx0908张利智通信与电子工程学院电子信息工程电子12220xx1310681实习时间20xx年8月26日20xx年9月...

Java实训报告

Java程序设计实训报告实训名称图书管理系统实训专业计算机应用技术班级学号090443220姓名高宇国指导教师侯丽敏20xx年12月26日实训成绩一实训目的1熟练掌握Java面向对象程序设计的基础知识2熟练掌握...

Java程序设计实训报告

Java程序设计实训报告实训名称仓库管理系统实训专业计算机应用班级计算机10A1学号姓名指导教师侯丽敏20xx年12月8日实训成绩一实训目的1熟练掌握Java面向对象程序设计的基础知识2熟练掌握Java中常用的...

javaweb实习报告(23篇)