,可以画出一个框,里面可以添加所需要的东西。
运用Html我们开发了一个e-mail邮件发送系统,这个界面主要用到了七个htm文件,有主页面 main.html,其中主页面分为上部、左部和右部,分别用top.html、left.html、right.html文件来表示。另外还增加了登录页面(login.html)、注册页面(regist.html)以及书写邮件的页面(write.html),由这些html文件共同实现了e-mail的基本界面。
首先进入login登录界面,输入用户名和密码,而且用户名和密码有一定的限制,输入信息符合要求后方可进入主页面,另外,在登录界面的用户名后还有一个超链接“注册”,点击“注册”就可以进入注册的页面,注册页面上有五行,包括用户名、密码、重复密码以及上传头像,另外还有两个按钮“提交注册”和“重置”,这样即可完成注册。
登陆界面中还用到了JavaScript,用以给出用户名和密码的限制条件,其中有一个function方法,用到的代码如下:
以后若要用到限制条件,都是运用与此类似的方法,这段代码可以说是一个模板。 进入到主页面后,可以看到三个部分,左边的部分用链接列出几项,包括“写信”、“收信”、“联系人”、“百度”等,右边显示好友上传图片,顶部是背景图片。点击左边的写信,跳转到write页面,可以写邮件。右边的现实的图片可以进行查看,与空间显示的图片差不多,也是可以由小图片转换成大图片。当鼠标点击到小图标X上时,图标就亮了,鼠标
拿走,图标就暗了,
另外,我们运用Html还设计了一个hao123页面,页面中用到了text文本框、超链接、行列的布置,图片的加载等等,做出来之后,整体感觉与hao123本来的页面基本差不多。
三、Mysql数据库
Mysql是一种小型的数据库,它与Java的联系十分密切,MySQL是一个小型关系型数据库管理系统,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了Mysql作为网站数据库,因此,网页编写大多数都是用Mysql。
- 2 -
武汉工程大学计算机科学与工程学院 生产实习报告
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; } }
以后运用数据库连接基本上都是用这个模板,方便又有效,而且在其他地方连接数据
- 3 -
武汉工程大学计算机科学与工程学院 生产实习报告
库时都可以直接对其进行调用。
通过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,在这个页面中有两个链接,分别转到增加信息和浏览信息页面,浏览信息页面中还包括了对信息的修改和删除。
例如,系统中浏览学生信息的页面的代码如下:
学号 | 姓名 | 性别 | 年龄 | 专业 | 操作 |
${stu.sno} | ${stu.sname} | - 4 -
武汉工程大学计算机科学与工程学院 生产实习报告
${stu.sex} | ${stu.age} | ${stu.major} | 删除 修改 |
另外还用到了两个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\
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来建立的,它是一种
- 5 -
武汉工程大学计算机科学与工程学院 生产实习报告
动态的网页技术,其中,可以显示动态画面以及动画效果,在其中也可以编写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),另外它的标签
也用的比较多,主要是利用它可以在页面上任意移动,而且它的大小不会改变,还可以隐藏、变透明等等,再有就是其中的JavaScript用的也比较多,主要是写一些function方法,用来限制一些信息;
最后,其他几个方面也非常重要,像JDBC用于应用程序和数据库的连接,没有这个方法就无法和数据库连接起来,所以十分重要;Mysql数据库也是Java项目开发中用到最多的一种数据库,没有数据库就无法实现信息的增、删、查、改,所以这些都是必不可少的。
五、实习体会
实习就这样在不知不觉中就结束了,这次实习我们学到了很多知识,Java中的HTML、JSP、Servlet、JDBC等等,虽然这些知识我并没有学得很精通、深邃,也只是掌握了一点皮毛而已,不过对于JAVA我们还是有了更深刻的了解,知道了Java的博大精深,此外我还学到了另外一种数据库,Mysql数据库,这是一个小型数据库,与以前的SQL Server 有相同也有不同,同时还学会了如何运用MyEclipse开发工具等等。
同时也学到了项目开发的思考角度和基本流程,提高了我们分析和解决问题的能力,锻炼了我们实际动手操作能力,为以后的工作打下了坚实的基础。
实习就快结束了,在此我要特别感谢几位老师,,首先是带领我们实习的刘黎志老师,对我们尽心尽力,经常到实习基地监督指导我们,感谢老师对于我们的关心和照顾;其次,就是要感谢带领我们进行第一阶段学习的软帝指导老师杨涛老师,他细心的教授我们知识,对没听懂的同学一一辅导,在他的讲解下我们学到了很多基础知识;最后要感谢带领我们做项目的马文成老师,他的耐心讲解让我们感受到了做项目的乐趣,哪位同学有错误他就会一一帮助修改,真的非常感谢他们!
- 6 -