当前位置:文档之家› jsp实验报告

jsp实验报告

jsp实验报告
jsp实验报告

在线音乐吧试验报告

专业:09计算机2班

1 在线音乐模块概述

1.1 功能描述

在线音乐模块可以分为前台和后台两个部分。其中,前台主要用于提供歌曲显示、上线试听、歌曲搜索、歌曲下载等功能;后台主要用于对网站中的信息进行管理,重点是添加歌曲和删除歌曲。

在线音乐模块的前台功能结构如图所示。

前台功能结构图

在线音乐模块的后台功能结构如图

后台功能结构图1.2 系统流程

在线音乐模块的系统流程如图B.3所示。Array

系统流程图

1.3 主界面预览

为了使读者对本模块有一个基本的了解,下面将给出在线音乐模块的主界面预览效果图。在线音乐模块的主界面运行结果如

主界面运行结果图

2 关键技术

2.1 验证客户端是否安装Windows Media Player和Real Player 播放器的方法

想要通过网页在客户端播放音乐或视频,客户端必须安装指定的播放器,如果客户端没有安装指定的播放器,将不能播放音乐或视频。这时为了当客户端机器上没有安装指定的播放器时,给予相关提示,可以在程序中添加检测客户端是否安装指定播放器的功能。

目前比较常用的两种播放器是Windows Media Player和Real Player。验证客户端是否安装这两种播放器的基本步骤如下。

(1)定义验证客户端是否安装Windows Media Player播放器和Real Player播放器的变量。(2)根据创建的结果设置变量checkRealPlayer(标记是否安装Real Player播放器)和

isMeidaplay(标记是否安装Windows Media player播放器)的值,为true,表示已经安装,为false,表示未安装。

2.2调用Real Player播放器的具体代码.

2.3 获取LRC歌词的行数

在实现音乐试听中的同步显示歌词功能时,需要获取歌词的行数。要获取歌词的行数,首先需要对歌词文件的格式有所了解,下面我们先来看看歌词文件的格式。例如“改变自己”的歌词文件的内容

说明:在LRC歌词中,通过[MM:SS.MS]指定时间、[ar:演唱者名]指定演唱者、[ti:歌曲名]指定歌曲名、[al:专辑名]指定专辑名、[by:歌词编辑者]指定歌词编辑者、[Offset:MS]用于调整整个歌词文件的时间标签值,单位是毫秒,可以是负值,也是LRC歌词格式中,唯一可以使用负值的时间标签。在LRC歌词格式中,每一个中括号对代表一行歌词。这时要获取歌词的行数,就可以获取中括号对的个数,具体的实现过程如下。

(1)读取歌词文件的内容,并保存到一个字符串中。

(2)通过java.util.StringTokenizer类分析歌词内容字符串,获取歌词的行数,关键代码如下:代码位置:src\com\action\SongAction.java

StringTokenizer st=new StringTokenizer(content,"\\[*\\]"); //分析字符串中共包括多少个中括号对“[]”

lineNumber=st.countTokens(); //返回分析的结果

java.util.StringTokenizer类用于分析字符串,并将字符串分解成可被独立使用的单词。该类有以下两个常用的构造方法。

StringTokenizer(String s)

该构造方法为字符串s构造一个分析器。使用默认的分隔集合,即空格符(若干个空格被看做一个空格)、换行符、回车符、

2.4 应用jspSmartUpload组件实现文件重命名的上传

为了实现歌词同步显示,需要保证歌词文件和歌曲文件同名(例如,歌曲文件名为gbzj.mp3,歌词文件的名称就应该是gbzj.lrc)。这样,在上传歌词文件时,就需要将歌词文件重命名。在应用jspSmartUpload组件上传文件时,可以通过文件上传组件的getFile()方法获取Files 类的对象,然后通过Files类的getFile()方法获取文件集合中指定的文件对象,再通过

该文件对象的saveAs()方法将文件进行重命名上传即可。关键代码如下:

upFile.getFiles().getFile(0).saveAs("/music/"+fileName);

3 数据库设计

本实例数据库采用SQL Server2000数据库,数据库名称为db_onLineMusic,在该数据库中包含3个数据表,分别是管理员信息表tb_manager(由管理员ID、管理员名和密码3个字段组成)、歌曲类别信息表tb_songType(由类别ID和类别名称两个字段组成)和歌曲信息表tb_song。由于管理员信息表和歌曲类别信息表的结构比较简单,这里将不作具体介绍。下面将给出歌曲信息表的表结构,如表所示。

tb_song数据表的表结构

tb_liuyan数据表结构

4 公共模块设计

4.1 数据库连接及操作类的编写

数据库连接及操作类通常包括连接数据库的方法getConnection()、执行查询语句的方法executeQuery()、执行更新操作的方法executeUpdate()、关闭数据库连接的方法close()。在线音乐模块中的数据库连接及操作类ConnDB.java

4.2 字符串处理类的编写

字符串处理类是解决程序中经常出现的有关字符串处理问题方法的类。本模块中的字符串处理类包括将ISO-8859-1编码的字符串转换为GBK编码和对输入的字符串进行一次编码转换方法。下面将详细介绍如何编写在线音乐模块中的字符串处理类StringUtils。

编写将ISO-8859-1编码的字段串转换为GBK编码的方法。

4.3 编写保存分页代码的JavaBean

由于在线音乐模块的按类别分页显示各类歌曲、前台分页显示搜索结果和后台分页显示搜索结果页面需要进行数据的分页显示,所以需要编写一个保存分页代码的JavaBean。

4.4 编写在线音乐模块的ActionForm实现类

在Struts框架中,ActionForm类是一个具有getXXX()和setXXX()方法的类,用于获取或设置HTML表单数据,同时,该类也可以实现验证表单数据的功能。ActionForm类通常与数据表相对应。在线音乐模块中,共涉及到3个数据表,因此,需要创建3个ActionForm实现类与各数据表相对应。与管理员信息表tb_manager相对应的ActionForm实现类为ManagerAction,与歌曲类别信息表tb_songType对应的ActionForm实现类为SongTypeForm,与歌曲信息表tb_song对应的ActionForm实现为SongForm,由于ActionForm类的创建方法比较简单,这里不进行详细介绍。下面将给出SongForm类的关键代码。

4.5 创建在线音乐模块的Action实现类

Action实现类是Struts中控制器组件的重要组成部分,是用户请求和业务逻辑之间沟通的桥梁。Action类被运行在一个多线程的环境中。在线音乐模块共涉及到两个Action实现类,一个是管理员信息相关的Action实现类ManagerAction,另一个是歌曲信息相关的Action 实现类SongAction。下面将以歌曲信息相关的Action实现类为例进行介绍。

在歌曲信息相关的Action实现类SongAction中,首先需要声明所需类的对象,并且在构造方法中实例化歌曲信息相关的SongDAO类(该类用于实现与数据库的交互),然后在Action 实现类的execute()方法(该方法会被自动执行)中,应用HttpServletRequest的getParameter()方法获取action参数值,再根据获取的参数值调用相应的方法完成对歌曲信息的操作。歌曲信息相关的Action实现类SongAction。

4.6 Struts配置文件

Struts框架需要通过一个专门的配置文件来控制,它就是struts-config.xml,当然也可以取其他名字,那么网站是怎么找到这个Struts的配置文件的呢,只要在web.xml里面配置即可,从代码中可以看出,在web.xml中配置Struts的配置文件,实际上就是一个Servlet的配置,在配置Servlet的config参数中定义Struts的配置文件(包括相对路径),及在Servlet 的URL访问里使用的后缀名,本实例中使用“.do”作为后缀名。

接下来的工作就是如何配置struts-config.xml文件。

5 前台首页的实现

5.1 设计前台首页

访问在线音乐网站时,首先进入的是网站的前台首页,如图B.4所示,在该页面中包括页面头部、导航栏、内容显示区和版权信息栏4部分。其中,内容显示区包括新歌速递和歌曲排行榜两部分。考虑到程序代码的条理性及可重用性,将页面头部、导航栏和版权信息栏3部分分别保存在单独的文件中,然后通过动作标识将其包含到前台首页中。前台首页的布局如图所示。

前台首页的布局图

5.2 实现新歌速递

在线音乐模块的前台首页中,提供了新歌速递区。在该区域中,将分栏显示各类别中最新上线的5首新歌曲,如图所示。

新歌速递区的运行结果

实现新歌速递功能的具体步骤如下。

(1)获取歌曲类别及各类别中最新上传的5首歌曲信息。

在进入首页前,需要访问歌曲信息相关的Action实现类,参数为main,对应的实现方法是main(),在该方法中,首先调用SongDAO类中的queryType()方法获取歌曲的类别信息,

然后通过for循环分别获取各类别的最新上传的5首歌曲,并保存到HttpServletRequest对象中,再将获取的类别信息数组保存到HttpServletRequest对象中,最后重定向页面到首页中。

在代码中,应用了songDAO类的queryType()和query()方法。其中,queryType()方法用于查询歌曲类别信息,该方法比较简单,只需要执行一条查询前6条数据的SQL语句,并将查询结果保存到List集合中即可,这里不作详细介绍,只给出相关的SQL语句,具体的SQL语句如下:

SELECT TOP 5* FROM tb_songType

下面将介绍query()方法,这里调用的query()方法用于查询最新上传的几首歌曲信息。该方法包括两个参数,第一个参数condition,用于指定查询条件,第二个参数top,用于指定获取的记录数。

(2)在Struts的配置文件struts-config.xml中配置新歌速递所涉及的元素,该元素用于完成对页面的逻辑跳转工作。

(3)在显示新歌速递的

标记中,添加分栏显示各类别最新上传的5首歌曲的表格。

由于在分栏显示各类别的新歌时,各类别的显示代码是相同的,所不同的是数据,所以这里将显示各类别新歌信息的代码放置在一个单独的文件中,在这里只需要应用include指令调用即可。

(4)编写显示各类别新歌信息的文件nueSongList.jsp,在该文件中,将应用struts的Logic 标签和bean标签显示指定类别的歌曲信息。

5.4 在线时钟的创建

因为考虑到某些用户因为时间观看的问题不方便所以我们便设立了一个在线时钟系统。

这个在线时钟简单的运用了一些小小的在线时钟代码和动态网站应用代码,使用户可以合理的安排时间而且能够提高对网站的满意度。

为了使用在线时钟与系统时钟同步var timeText:TextField = this.createTextField("time", 0, 0, 0, 100, 20); function init() { hitTime = 0;beginRunTime = 0;totalRunTime = 0;timeText.text = "00:00:00";}

init();onMouseDown = function () {switch (hitTime) { case 0 :hitTime++; recordR unTime();

run();break case 1 : //暂停计时hitTime++; delete onEnterFrame;break case 2 : hitTime++; recordRunTime(); run(); break; case 3 : init(); delete onEnterFr ame; break; }};

function recordRunTime() {beginRunTime = getTimer();}

function run() { onEnterFrame = function () { trace(hitTime); if (hitTime == 1 ) { var totalHm = totalRunTime=getTimer()-beginRunTime;} else if (hitTime == 3) var totalHm = getTimer()+totalRunTime-beginRunTime; } var totalM = int(tota lHm/1000); var hm = totalHm%1000; var m = totalM%60; var f = int(totalM/60); timeText.text = f+":"+m+":"+hm; };}

时钟显示页面

5.5:还有动态flash广告的创建

因为考虑到网站的营业问题,就必须得在动态网站的规划上面创造盈利的方案,使网站可以合理的利用资源合理的运营下去,所以动态flash广告的建立是必须的这个动态广告运用了一个swf文件发布在动态网页中,页面作用两边也上下漂浮的小广告,还能连接到相应的网站但用户不需要时可以删掉,使用动态jsp代码规划。

/

使用这个代码可以创建一个合理使用的

5.6.合理的美化页面包括样式和页面大小的设计

在网站的运行和发展方面美观可以排在第一位因为用户第一个看到的就是美观方面因为,外观方面的不足容易给人留下不好的影响,比如说画工粗糙登问题会让用户产生审美疲劳,还有留下不好的方面,所以在老师的教导下面我们学习了用ps技术合理的美观页面譬如说运用半透明图片当背景可以给人一种美轮美奂的感觉,延长了网站的使用寿命还有实用价值。

5.7.管理员注册系统的设计

因为在光盘中原本就给我们留下了一个管理员账号用于管理网站,但是因为管理的需要和管理网站的制约,我们不可能仅仅使用一个管理员来管理和安排网站,只有通过大家共同的努力和发展我们才又可能进一步的发展和规划我们的网站,使网站能够进一步的迈向美好的境界,所以创建一个多管理员注册系统是必须的,在我们小组的共同努力下,创立了一个能够连接数据库并且能够注册的管理员注册于登录的系统,他运用了数据库连接功能和注册管理员基本信息的功能还有赋予管理员与原本系统所给的管理员同样的权利,能够使用歌曲上传,歌曲删除歌曲管理等等功能,提升了网站的维护性和安全性,使浏览网页的用户的用户能够享有添加个歌曲等一些管理员才特有的权利,这样给页面带来了很大的交互性,也更能够进一步理解客户的需求。包含两个jsp文件register.jsp 和register_ok.jsp,一个是创建注册页面,一个是处理用户注册的一些信息,并用户信息保存在书库库中,便宜用户遗忘密码时找回密码。

5.8找回密码模块

对于参考网络上面一些流行音乐吧还有一些流行的门户网站,我们发现在注册系统中其实我们还存在着某些不足,用我们的自身经验来说通吃有些用户都会因为某些小事而忘记掉登录密码使用户丧失了对于二次注册的繁琐程序的耐心造成了用户流失的现象,所以我们觉得找回密码模块模拟其他网站是势在必行的一个举措,找回密码,其中包含了蛮多的代码之类的,最主要就是能够和数据库连接并执行验证信息而且找回密码是关键,通过对数据库的操作执行下列指令,并返回给用户:他通过管理员注册时登记的邮箱和用户的用户名来找回密码,

包含的两个jsp文件一个是findpwd.jsp和findpwd_ok.jsp

成功找回密码页面

5.9验证码板块

验证码的存在主要是为了验证用户是否为非法用户或者说是挂机的用户,因为由于一系

列的原因某些用户可能会进行虚假的挂机或者重复的不断的刷去流量霸占资源造成了网站

运行困难,并且进一步的使更多用户不能快速的浏览网页所以需要采用验证码适用于网站的登录页面来验证是否为真实用户,来进一步提高网站服务质量,使用户得到更好的服务,进一步扩大服务人群:需要新建一个image.jsp文件用于创建验证码和管理验证码

Image.jsp的主要代码如下:

<%@ page contentType="image/jpeg;charset=gb2312"

import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>

<%!

Color getRandColor(int fc,int bc){//给定范围获得随机颜色

Random random = new Random();

if(fc>255) fc=255;

if(bc>255) bc=255;

int r=fc+random.nextInt(bc-fc);

int g=fc+random.nextInt(bc-fc);

int b=fc+random.nextInt(bc-fc);

return new Color(r,g,b);

}

%>

<%

//设置页面不缓存

response.setHeader("Pragma","No-cache");

response.setHeader("Cache-Control","no-cache");

response.setDateHeader("Expires", 0);

// 在内存中创建图象

int width=60, height=20;

BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

// 获取图形上下文

Graphics g = image.getGraphics();

//生成随机类

Random random = new Random();

// 设定背景色

g.setColor(getRandColor(200,250));

g.fillRect(0, 0, width, height);

//设定字体

g.setFont(new Font("Times New Roman",Font.PLAIN,18));

//画边框

//g.setColor(new Color());

//g.drawRect(0,0,width-1,height-1);

// 随机产生155条干扰线,使图象中的认证码不易被其它程序探测到

g.setColor(getRandColor(160,200));

for (int i=0;i<155;i++)

{

int x = random.nextInt(width);

int y = random.nextInt(height);

int xl = random.nextInt(12);

int yl = random.nextInt(12);

g.drawLine(x,y,x+xl,y+yl);

}

// 取随机产生的认证码(4位数字)

String sRand="";

for (int i=0;i<4;i++){

String rand=String.valueOf(random.nextInt(10));

sRand+=rand;

// 将认证码显示到图象中

g.setColor(new

Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt (110)));//调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成

g.drawString(rand,13*i+6,16);

}

// 将认证码存入SESSION

session.setAttribute("numrand",sRand);

// 图象生效

g.dispose();

// 输出图象到页面

ImageIO.write(image, "JPEG", response.getOutputStream());

out.clear();

out = pageContext.pushBody();

%>

5.10页面刷新和框架页面的布局设计

页面刷新主要是使用户能够更快更便捷的同步实时的和网站接轨,防止因为网络的原因或者是其他原因导致的更新延迟等重要问题,对于21世纪来说信息是最值钱的,实时的同步信息能提高用户的满意度,这个是时代的需求,因为计算机的发展,信息的传送速度和延迟速度也成为了重中之重,而我们能做的只是让页面自主刷新来进一步提高我们的服务态度和质量,进一步的留住用户,也为了当跟新了信息时及时的反馈到用户界面那里,其中蕴含的技术是页面定时刷新。

5.11同步显示歌词

同步显示歌词是重中之重啊其中包括了很多,音乐吧的中心就是音乐不可否认,1、首先JSP生成网页的时候,将音乐播放器插件的ID命名为WMA,当然,你可以随便命名,只是这里便于说明。 2、读取XML或LRC内容,利用Ajax加载到id为lrc的div中。并将XML或LRC的每行的歌词存到数组testmp3中(此数组当然是二维数组,数据组分别播放时间与歌词内容) 好了,到此,准备工作就做好了,下面就是重点---歌词同步。

在本模块中,不仅提供了在线试听歌曲的功能,而且如果歌曲提供了歌词文件,还可以实现歌词同步显示功能。例如,在新歌速递区中,单击“改变自己”后面的“”按钮,将打开如图所示的在线试听页面,播放该歌曲,并同步显示歌词。

在线试听并同步显示歌词

实现试听歌曲并同步显示歌词的具体步骤如下。

(1)在提供在线试听的歌曲后面添加试听图标,并为其设置超链接,关键代码newSongList.jsp

(2)在歌曲信息相关的Action实现类中,编写实现在线试听的方法tryListen()。在该方法中,首先获取要播放歌曲的ID,并根据该ID调用SongDAO类中的tryListen()方法获取该歌曲的信息,然后读取该歌曲对应的歌词文件(即LRC文件),将读取的歌词内容连接成一个字符串,并统计歌词的行数,再将歌词的行数、歌词内容、当前页的歌曲信息和当前试听的歌曲名称保存到HttpServletRequest对象中,最后将页面重定向到在线试听页面。tryListen()方法。

在该方法中调用了SongDAO类中的tryListen()方法获取歌曲的名称和歌曲对应的文件名保存到数组中并返回。由于该方法比较简单,这里不进行详细介绍。

(3)编写在线试听页面,实现播放歌曲并设置歌词同步显示。

5.12留言板模块

首先因为没有任何一个网站是完美的,只有通过不断的改进不断的编写不断的修正才又可能是网站一步步的走向正轨,其中用户或者说是我们网站的服务人群的意见可以说是重中之重,因为只有足够的重视他们的意见,网站才能够真正的做大做强,而收集和集合用户的意见最需要注意的模块也是最重要的模块留言板包含了许多技术,包括回复,留言,护肤他人留言,用户留言时间,都需要一定的技术需求和能力,留言里面包含的类容较多,其中怎样把页面中的用户的留言显示出来,这些信息从哪里取出来,用户留言的信息保存在哪里,怎样实现分页,怎样浏览用户的最新留言,并同步的显示日期和时间。

5.13留言板中的分页新纪录的最新显示和同步的显示日期和时间,怎样连接数据库等等

5.14排行选择,包括歌曲排行版和最新留言排行版

流行歌曲或者是用户点击都需要一个排行榜来统计计算着个可以让管理员进一步了解网站并且能更好的改正网站其中主要的操作就是操作数据库字段《点击数》然后是关于链接的描述,然后让数据库操作如下,每当点击一次,数据库点击数+1,返回到网站在线音乐模块的前台首页中,提供了歌曲排行榜。在该区域中,将分别显示试听排行和下载排行,如图所示。

歌曲排行榜的运行结果

实现歌曲排行榜的具体步骤如下。

(1)根据传递的参数获取试听排行信息或下载排行信息。

在歌曲信息相关的Action实现类中,编写获取歌曲排行信息的方法songSort(),在该方法中,首先获取表示是试听排行还是下载排行的参数值,然后根据该参数值获取相应的排行信息,并保存到HttpServletRequest对象中,再将排行类型保HttpServletRequest对象中,最后将页面重定向到歌曲排行榜页面。

在代码中,调用了songDAO类的query()方法来获取排行信息,该方法同5.2节中调用的query()方法相同。

(2)在显示歌曲排行的

标记中,应用动作指令动态包含显示排行信息的JSP文件。在包含文件时,需要传递两个参数,一个用于指定action参数,另一个用于指定获取的是试听排行还是下载排行。其中,试听排行传递的参数值为hits,下载排行传递的参

数值为download。

(3)将获取的歌曲排行信息显示到排行榜中。

将获取的歌曲排行信息显示到排行榜中的方法,同显示各类别新歌信息类似,也是应用Struts的Logic标签和bean标签进行循环显示的。

6 以顺序和随机方式进行歌曲连播

在本模块中介绍的甜橙音乐网中,还提供了以顺序和随机两种方式进行歌曲连播。例如,在新歌速递区中,选中“有多少爱可以重来”、“红遍全球”和“改变自己”前面的复选框后,单击“歌曲连播”超链接,将打开歌曲连播窗口,在该窗口中,可以选择顺序播放还是随机播放,如图所示,默认情况下采用的是顺序播放。

以顺序或随机方式进行歌曲连播

实现以顺序和随机方式进行歌曲连播的具体步骤如下。

(1)在提供歌曲连播的歌曲列表前面添加一个标记是否选中的复选框,以及用于控制复选框全选或反选的复选框和“歌曲连播”超链接。

(2)编写自定义的JavaScript函数CheckAll(),用于设置复选框的全选或反选。

(3)编写自定义的JavaScript函数continuePlay(),用于判断用户是否选择了要播放的歌曲,如果没有选择,则提示“请选择要播放的歌曲”;否则提交表单进行播放。

(4)在歌曲信息相关的Action实现类中,编写实现歌曲连播的方法continuePlay()。在该方法中,首先获取要进行连播歌曲的ID,并将获取的ID数组连接为一个以逗号分隔的字符串,然后获取出歌曲文件的路径,再调用SongDAO类中的continuePlay()方法获取要播放歌曲的信息,并保存到HttpServletRequest对象中,最后将页面重定向到歌曲连播页面。

(5)编写歌曲连播页面,实现按顺序或随机方式播放歌曲。

①在页面中添加一个表单及一张3行2列的表格,并将该表格的第一行的两个单元格合并为一个单元格,将其id属性设置为myPlayer,用于显示播放器。

②在步骤①中创建的表格的第二行的左侧的单元格中输入提示性文字“播放列表”,右侧的单元格中添加一个名称为playType的下拉列表框,该下拉列表框包括“顺序播放”和“随机播放”两个选项。

③将步骤①中创建的表格的第3行合并为一个单元格,并在该单元格中添加一个用于显示播放列表的列表框。

④编写自定义的JavaScript函数init(),用于在页面加载后调用相应的播放器,按顺序方式播放歌曲列表。在该函数中,将首先判断客户端是否安装Windows Media Player播放器,如果安装,将动态加载该播放器,进行歌曲连播,否则判断客户端是否安装Real Player播放器,如果已经安装,将加载该播放器进行歌曲连播,否则将提示请安装相关播放器。

⑤编写自定义的JavaScript函数checkPlayStatus(),用于当使用Windows Media Player播放器时,在播放状态改变时连续播放歌曲。

⑥编写自定义的JavaScript函数,用于当使用Real Player播放器时,进行连续播放歌曲。

⑦在进行歌曲连播时,为了让用户可以选择指定的歌曲开始播放,还需要添加双击列表框中指定歌曲时开始播放的功能。实现该功能时,需要编写一个自定义的JavaScript函数,这里为list_dblClick(),在该函数中,也需要根据选择的播放器从指定的歌曲开始播放。list_dblClick()函数编写完成后,还需要在列表框的ondblclick事件中调用该方法。

7 添加歌曲

为了方便用户对网站进行管理,还需要为在线音乐网站加入添加歌曲的功能。在甜橙音乐网中,管理员登录网站后台后,单击“添加歌曲”超链接,即可打开添加歌曲页面。默认情况下,在该页面中的两个“上传文件”按钮都是不可用的,当选择歌曲类别、添加歌曲名、演唱者后,单击“检测该歌曲是否上传”按钮,如果该歌曲没有上传,则歌曲文件后面的“文件上传”按钮可用,否则将给出提示,当上传歌曲文件成功后,歌词文件后面的“文件上传”按钮也将可用,这时就可以上传歌词文件了。歌曲信息添加完成后,如图所示,单击“保存”按钮即可将该歌曲信息添加到服务器中。

添加歌曲页面运行结果

7.1 设计添加歌曲页面

添加歌曲页面主要由获取歌曲信息及上传文件的表单及表单元素组成。

(2)编写上传文件的代码,将选择的歌曲文件上传到服务器中该程序所在文件夹下的music 文件夹中,并将该文件重命名。说明:上传歌词文件的方法同上传歌曲文件类似,这里不作介绍。

7.2 保存歌曲信息

添加歌曲信息完成后,还需要将该歌曲信息保存到数据库中。在表单提交后,将访问URL地址song.do?action=add,通过该URL地址可以知道在在歌曲信息相关的Action实现类中,添加歌曲信息所涉及的方法为adm_add(),在该方法中,首先获取歌曲的基本信息,

并进行转码,防止SQL注入,然后调用SongDAO类中的insert()方法将歌曲信息保存到数据库,再根据返回结果设置相应的提示信息,最后将页面跳转到添加歌曲完成页面显示相应的提示信息。

在代码中,调用了SongDAO类中的insert()方法将歌曲信息保存到数据库。insert()方法比较简单,只需要执行将歌曲信息添加到数据库中的SQL语句即可,所以此处只给出向歌曲信息表中添加歌曲信息的SQL语句。

8删除歌曲信息

在音乐网的后台中,还需要提供删除歌曲信息的功能,并且在删除歌曲信息时,还需要将该歌曲对应的歌曲文件及歌词文件删除,这样可以保证服务器中数据的有效性。删除歌曲信息的具体实现步骤如下:

(1)在后台歌曲列表的每首歌曲信息的后面添加“删除”超链接,并且在该超链接的onClick 事件中调用自定义的JavaScript函数del()。

(2)编写自定义的JavaScript函数del(),用于弹出询问是否删除的对话框,当用户确认后,执行删除操作。

(3)在歌曲信息相关的Action实现类中,编写实现删除歌曲信息的方法del()。在该方法中,首先获取要删除歌曲的ID,并根据该值获取要删除歌曲的文件名,然后根据该文件名组成歌词文件的名称,再从数据库中删除歌曲信息,最后将对应的歌曲文件和歌词文件从服务器中删除,并重定向页面到删除成功页面。

9 课程设计总结

在这近一周时间的课程设计中,我们学到了很多的东西,刚开始用JDBC连接数据库时久遇到了很大的问题,总是连接不上去,后来通过改sql的连接端口才弄好,并怎样写数据库驱动类和连接查询类等都不是很懂,怎样实现分页显示和同步显示,怎样跟跟新数据库,登陆注册找回密码模块怎么设计,后台管理功能怎样加强,都遇到了不小的问题,经过网上百度搜索和同学一起讨论最终一些问题慢慢都迎刃而解了,虽然或许对有人觉得我们做的比较容易,但是我们真的通过我们认真的实践操作,每天都做在电脑前,设计怎样做,一个小小的问题都要花费我们很多的时间,很多时候都是做到深夜两三点,特别是刚开始的时候很多功能加不进去,加进去显示不出来,后面三天熟练了之后,就慢慢知道应该怎样去增强一些缺少的功能。宗旨课程设计让我真正学到了很多,要大胆尝试,勇于实践,定会有收获,即使你最终没有做出来,也会有一定的收获。

Jsp课程设计实验报告

《jsp程序设计》 Jsp课程设计实验报告 题目学生成绩管理系统 专业 班级 姓名 指导教师 2011年6月28日

目录 一、绪论----------------------------------------------------------------------------------------------------------------- 3 1、系统开发背景 ----------------------------------------------------------------------------------------------- 3 2、项目开发的目标-------------------------------------------------------------------------------------------- 3 3、系统开发所用的技术设备------------------------------------------------------------------------------- 3 二、需求分析 ---------------------------------------------------------------------------------------------------------- 3 1、系统需求分析 ----------------------------------------------------------------------------------------------- 3 2、用户需求 ----------------------------------------------------------------------------------------------------- 4 3、系统框架图如下: ---------------------------------------------------------------------------------------- 5 4、系统设计思想 ----------------------------------------------------------------------------------------------- 5 5、系统设计分析 ----------------------------------------------------------------------------------------------- 5 三、数据库的设计---------------------------------------------------------------------------------------------------- 6 1、本系统将数据存储在七个表中,这七个表分别是 ---------------------------------------------- 6 2、建立数据库的命令如下:------------------------------------------------------------------------------- 8 3、建立数据表的命令如下:------------------------------------------------------------------------------- 8 四、关键技术及代码------------------------------------------------------------------------------------------------- 9 1、管理员登录代码-------------------------------------------------------------------------------------------- 9 2、从数据库中获取用户名和密码的代码。 --------------------------------------------------------- 10 3、留言板的相关代码。 ----------------------------------------------------------------------------------- 12 五、测试--------------------------------------------------------------------------------------------------------------- 16 1、登录界面的测试: -------------------------------------------------------------------------------------- 16 2、查询页面: ------------------------------------------------------------------------------------------------ 18 3、添加页面: ------------------------------------------------------------------------------------------------ 18 4、删除页面: ------------------------------------------------------------------------------------------------ 19 5、修改页面 --------------------------------------------------------------------------------------------------- 20 六、总结--------------------------------------------------------------------------------------------------------------- 20 七、参考文献 -------------------------------------------------------------------------------------------------------- 20

web WEB JSP实验报告书

实验1 网页程序设计-JavaScript 一、实验目的 1. 掌握JavaScript技术,基本掌握JavaScript的开发技巧; 2. 利用文本编辑器建立JavaScript脚本语言进行简单编程。 二、实验要求: 1. 根据以下实验内容书写实验准备报告。 2. 独立完成实验。 三、实验内容 1.显示一个动态的时钟 在文本编辑器“记事本”中输入如下代码程序,请仔细阅读下列程序语句,理解每条语句的作用。源程序清单如下:

现在是北京时间:
运行结果:

jsp实验报告49775

Jsp实验报告 课程设计名称:兼职网站 系:交通运输管理学院学生姓名: 班级: 学号: 成绩: 指导教师: 开课时间:2013学年第2 学期

一.设计题目 兼职网站 二.主要内容 本网站涉及兼职信息、用户信息的数据管理。从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。 (1)用户的登录判定 (2)录入兼职的信息,并保存到数据库中 (3)根据用户的需求选择查询方式,查询相关兼职信息 (4)将信息从数据库中删除 三.具体要求 (1)建立数据库表格存储用户数据(用户名及密码)。 (2)建立数据库表格存储兼职信息,主要包括ID、兼职名称、地点、工资和联系方式。 (3)编写jsp 语句连接数据库 (4)利用request函数提交表单,获取输入信息 (5)以SQL语句对数据库进行操作,完成信息的添加,查询及删除等功能。四.进度安排 五.成绩评定 正文 1、系统的需求分析和功能设计 随着电子信息在人们生活中的的使用比重不断增加,人们越来越习惯在网站上查找自己所需

要的信息不仅仅只是因其快捷,更因其接触的面更加广泛,信息的基础量足够大,足以满足人们更加细化的需求。在寻找兼职体验工作生活或赚取生活费用时,可以减少时间的浪费及其他不必要的消耗。 本网站涉及兼职信息、用户信息的数据管理。从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。用户登录后可以根据自己的需要对信息进行添加、查询和删除的操作 2、源程序及注释 主页:<%@page language="java"contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> xxx兼职网站 登录:login.jsp主要内容:

JSP程序设计与项目实训教程_第2版_课后习题和参考答案

第1章Web技术简介 1.7 习题 1.7.1 选择题 1. Web技术的设想于哪一年提出()。 A.1954年 B.1969年 C.1989年 D.1990年 2. JSP页面在第一次运行时被JSP引擎转化为()。 A.HTML文件 B.CGI文件 C.CSS文件 D.Servlet文件 3. JavaEE体系中Web层技术是()。 A.HTML B.JavaBean C.EJB D.JSP 参考答案:1.C 2.D 3.D 1.7.2 填空题 1.当前主流的三大动态Web开发技术是:PHP、ASP/https://www.doczj.com/doc/6f7608114.html,和______________。 2. JSP的两种体系结构是:______________和______________。 3. JSP开发Web站点的主要方式有:直接JSP、JSP+JavaBean、______________、______________和SSH。 参考答案: 1.JSP 2.JSP Model1和JSP Model2 3.JSP+JavaBean+Servlet、J2EE/JavaEE 1.7.3 简答题 1. 简述JSP的工作原理。 答:所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。当第一次运行一个JSP页面时,JSP引擎要完成以下操作: ●将JSP文件翻译成Servlet文件,Servlet文件是Java应用程序。 ●JSP引擎调用Java编译器,编译Servlet文件得到可执行的代码文件(.class文件)。 ●JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器。 ●服务器将运行结果以HTML形式作为响应返回给客户端的浏览器。 由于一个JSP页面在第一次被访问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。 2. 简述JSP两种体系结构。

jsp实验报告

中南民族大学管理学院学生实验报告 课程名称: JSP程序设计 年级: 2010级 专业:信息管理与信息系统 姓名: 学号: 指导教师: 实验地点:管理学院综合实验室 20 学年至 20 学年度第 2 学期

第一章 JSP简介 实验 Tomcat服务器的安装与配置 一、实验目的 本实验的目的是让学生掌握怎样设置Web服务目录、怎样访问Web服务目录下的JSP 页面、怎样修改Tomcat服务器的端口号。 二、实验要求 1、将下载的6.0.13解压到D盘中,并进行调试。 2、用文本编辑器编写一个简单的JSP页面,并保存到Web服务目录中。 三、实验结果 所运行的代码如下; <%@ page contentType="text/html;charset=GB2312"%>

乘法表

<% for(int j=1;j<=9;j++) { for(int i=1;i<=j;i++) { int n=i*j; (i+"×"+j+"="+n+" "); } ("
"); } %>
页面 四、实验结果分析

1、默认的端口号为8080,若修改,在conf目录下的文件中修改端口号。 2、设置虚拟目录。在conf目录下的中前加入: 3、Tomcat服务器必须保持启动。

第二章 JSP页面与JSP标记 实验1 JSP页面的基本结构 一、实验目的 本实验的目的是让学生掌握怎样在JSP页面中使用成员变量,怎样使用Java程序片、Java表达式。 二、实验要求 本实验将用户输入的单词按字典顺序排序。需要编写两个JSP页面,名字分别为和。 三、实验内容 1)页面有一个表单,用户通过该表单输入若干个单词,并提交给页面。 2)负责排序单词,并将排序的全部单词显示给用户。 四、实验结果 实验所用代码如下: <%@ page contentType="text/html;charset=GB2312"%> 请输入单词(用空格分隔):
<%@ page contentType="text/html;charset=GB2312"%> <%@ page import=".*"%> <%! TreeSetdictionary=new TreeSet(); public void addWord(String s) { String word[] = (" "); for(int i=0;i<;i++) { (word[i]); } } %> <%

JSP技术的运用实验报告

南昌大学实验报告 学生姓名:XXX 学号:xxxxxxxxxx 专业班级:xxxxxxx 实验类型:■验证□综合□设计□创新实验日期:xxxx.xx.xx 实验成绩: 一、实验项目名称: JSP技术的运用 二、实验目的 掌握JSP的基本语法、JSP指令和JSP动作以及JSP的内置对象,每种对象的使用方法与使用技巧,会简单的web应用程序的开发设计。 三、主要仪器设备及耗材 1.Myeclipse开发环境 2.Tomcat服务器 3.联想电脑一台 四、实验内容 1、运用Date函数读取系统当前时间,根据不同的时间段,在浏览器输出不同的问 候语 2、加载文件,制作一个jsp文件,计算一个数的平方,然后再制作一个jsp文件。 在客户端显示出来 3、设计表单。制作读者选购图书的界面,当读者选中一本图书后,单击“确定” 按钮,用”jsp:forward page=”语句将页面跳转到介绍该图书信息页面 4、设计求任意两个整数和的web程序,要求用户通过提交页面输入两整书,并提 交给一个jsp程序,再改程序中计算两个整数和。如果结果为正,跳出“结果为正” 页面,如果结果为负,跳出“结果为负”界面 5、设计一个用户注册表单,提交页面信息后,会输出用户填写的信息 五、实验步骤 1.应用Date函数读取系统当前时间,根据不同的时间段输出不同的问候,主要代码 如下: <%@page language="java"import="java.util.*"pageEncoding="UTF-8"%> 读取系统当前时间 <% Date date=new Date();%>

当前时间是:<%= date.toLocaleString()%>

实验记录及实验报告的书写

个人收集整理-ZQ 生化实验是在生化理论及有关理论指导下地实践.实验目地在于经过实践掌握科学观察地基本方法和技能,培养科学思维、分析判断及解决实际问题地能力,培养尊重科学事实和真理地学风和科学态度.当然,通过实验还可以加深和扩大对生化理论地认识. 为了达到实验地目地,要求学生在实验前进行预习,通过预习对实验地内容、目地要求、基本原理、基本操作及注意事项有初步地了解;要求学生在实验中合理组织安排时间,严肃认真地进行操作,细致观察各种变化并如实做好实验结果地记录;还要求学生在操作结束后认真进行计算或分析,写好实验报告.个人收集整理勿做商业用途 一、实验记录 实验记录应及时、准确、如实、详尽、清楚. “及时”是指在实验中将观察到地现象、结果、数据及时记录在记录本(或《实验指导》合适位置)上.回顾性地记录容易造成无意或有意地失真.个人收集整理勿做商业用途 实验结果地记录不可参杂任何主观因素,不能受现成资料及他人实验结果地影响.若出现“不正常”地现象,更应如实详尽记录.个人收集整理勿做商业用途 表格式地记录方式简练而清楚,值得提倡使用.如无专用地记录本,可分项记录于《实验指导》中相应地操作项目之下.记录时字迹必须清楚,不提倡使用易于涂改及消退地笔、墨作原始记录.个人收集整理勿做商业用途 完整地实验记录应包括日期、题目(内容)、目地、操作,现象及结果(包括计算结果及各种图表).使用精密仪器进行实验时还应记录仪器地型号及编号.个人收集整理勿做商业用途二、实验报告 实验结束后,应及时整理和总结实验结果,写出实验报告. 完整地实验报告应包括实验名称、实验日期、目地要求、实验原理、试剂、仪器设备、操作方法、实验结果、讨论等项内容.个人收集整理勿做商业用途 其中,目地要求、原理、设备、试剂及操作方法等项只要求作简明扼要地叙述,不必也不应将《实验指导》原版抄录一遍.但对实验地条件,操作要点等实验成败地关键环节应作清楚描述.个人收集整理勿做商业用途 实验结果首先是如实记录实验中观察到地现象及各种原始数据,还应包括根据实验要求整理、归纳数据后进行计算地过程及计算结果,包括根据实验数据及计算作出地各种图表(如曲线图,对照表等).个人收集整理勿做商业用途 讨论部分不是对结果地重述,而是对实验结果、实验方法和异常现象进行探讨和评论,以及对实验设计地认识、体会及建议.个人收集整理勿做商业用途 一般要有实验结论.结论要简单扼要,以说明本次实验所获得地结果.如在临床生化检验项目中,可评价样本检出值与相应正常值之间地异同及其临床意义.个人收集整理勿做商业用途 1 / 1

WEB开发技术实验报告

实验一JSP开发环境构建 实验目的:了解动态页面技术及B/S系统 掌握开发环境的构建 理解Eclipse开发WEB应用 实验内容: 实训项目一:安装JDK并配置环境变量 请阐述配置环境变量的方法: 实训项目二:安装TOMCAT并配置Server.xml修改端口号为8090 问题一:如何测试TOMCAT是否已经成功启动? 问题二:在浏览器地址栏输入什么地址可以访问到TOMCA T的测试页? 请阐述配置Server.xml修改端口号为8090基本实验步骤: 实训项目三:应用Eclipse建立项目并浏览一个JSP页面 请阐述应用Eclipse建立项目并浏览一个JSP页面基本实验步骤: 实验心得:(遇到了哪些问题,如何解决的,有那些体会) 实验二JSP语法 实验目的:了解JSP程序的组成元素 掌握JSP中使用JA V A程序片段的方法 实验内容: 实训项目一:编写一个JSP页面输出26个小写英文字母表 实训项目二:编写页面实现九九乘法表 实训项目三:利用成员变量被所有客户共享这一性质,实现一个简单的计数器 实训项目四:使用JA V A表达式输出系统当前时间 实训项目五:编写程序shijian2_9.jsp和computer.jsp两个页面,在第一个页面中使用include动作标记动态包含文件computer.jsp,并向它传递一个矩形的长和宽,computer.jsp 收到参数后,计算矩形的面积,并显示结果。 实训项目六:编写3个JSP页面:main.jsp,first.jsp和second.jsp,将3个JSP文件保存在同一个WEB工程中,main.jsp使用include动作标记加载first.jsp和second.jsp页面。First.jsp 页面可以画一张表格,second.jsp页面可以计算两个正整数的最大公约数。当first.jsp被加载时,获取main.jsp页面include动作标记的param子标记提供的表格行数和列数,当second.jsp 被加载时,获取main.jsp页面include动作标记的param子标记提供的两个正整数的值。 要求:上机编程完成上述实训项目,上机演示给教师检查,从中挑选三个程序的核心代码写在实训报告上 实验核心代码:

2015春季学期中法班JSP程序设计实验报告-陈亭宇

JSP程序设计实验报告 国际教育学院 中法计122班 陈亭宇122918 2015秋季学期

实验说明 《JSP编程技术》JSP(Java Server Pages)是基于Java 语言的一种Web应用开发技术,利用这一技术可以建立安全、跨平台的先进动态网站。该课程作为电子商务专业的一门专业课,主要介绍JSP程序设计的基本知识,为日后学生进行编程设计打下牢固的程序设计语言基础。 实验课是《网络编程技术--JSP》的重要实践环节。通过实验,使学生加深理解、验证、巩固课堂教学内容,加深对JSP编程设计的过程、方法的理解,充分发挥学生的想象力和创新能力。本实验课程共开设5个实验项目。 实验方式与基本要求:学生须在实验前预习相应实验内容,熟悉实验的基本原理、方法及要求、制定好上机步骤,弄清实验目的;实验每次均为4学时,学生须按时到场;要求学生掌握程序设计的各种基本方法与步骤,并在实验中得到提高。 考核及报告:实验时立将各种问题与结果记录下来,实验内容可以通过截图等方式存入U盘,并在课后完成实验报告内容;课程总成绩应为理论考核、实验成绩、平时成绩的综合;其中实验课程成绩在平时成绩中,平时成绩共占30%,理论课成绩占70%。

实验一JSP基本操作 1.实验目的 (1)掌握怎样设置Web服务目录、怎样访问Web服务目录下的JSP页面。 (2)掌握怎样在JSP页面中使用成员变量、怎样使用Java程序片、Java表达式。2.实验内容 第一部分:在JSP页面中实现面向过程编程 1.输出所有1到1000内的完数。(perfect.jsp) 一个数如果恰好等于除它本身外的因子之和,这个数就称为"完数",也叫“完美数”。 例如6=1+2+3.(6的因子是1,2,3),因此,6 就是一个完数。 代码:

Java Web实验报告一

实验一开发环境配置及Servlet程序设计 一、实验目的 1、了解并熟悉编程环境、编程工具,包括Tomcat、MyEclipse和JDK; 2、学会配置环境变量; 3、掌握在MyEclipse中编辑简单源程序的方法、创建包和servlet类的方法; 4、掌握在Tomcat中手工创建可执行程序的方法; 5、加强对servlet的生命周期的理解;掌握servlet程序的实现方法。 二、实验内容及要求 本次实验内容分为两部分: 1、验证部分 1)通过手动的方式在Tomcat中建立工程my,在该工程中建立所需的文件夹以及文件web.xml。 2)在MyEclipse中建立一个名为TestLifeCycleServlet.java的servlet。 3)运行该servlet。 2、编程实现部分 编写一个页面程序(JSP程序)和一个后台程序(servlet程序),用户从页面中输入姓名、性别、年龄等信息,并提供一个查询按钮。当用户提交查询按钮时,执行servlet程序,该程序将用户输入的信息显示出来。用户界面的显示效果参见图1所示: 图1 表单显示效果示例 三、实现 1、验证部分 实现过程、必要的配置文件说明、实验结果等。 第一个实验 实验过程 第一步: 打开tomcat文件夹,在webapps中新建一个my的文件夹

第二步 在my文件夹中新建一个WEB-INF文件夹,并把web.xml放入 第三步 把TestLifeCycleServlet.java和index.jsp放入my文件夹中 第四步

让tomcat运行起来 第五步 输入http://localhost:8080/my/servlet/TestLifeCycleServlet web.xml代码 TestLifeCycleServlet TestLifeCycleServlet TestLifeCycleServlet /servlet/TestLifeCycleServlet index.jsp 运行结果 实验二 第一步 先建一个web project命名为wy,在src目录下新建一个Servlet命名为ThreeParams import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class ThreeParams extends HttpServlet{

实验记录及实验报告撰写要求1

环境工程实验报告撰写要求 环境工程实验报告应包括实验预习报告、实验原始记录和实验报告三部分,其中实验预习报告和实验原始记录需指导老师签字。实验报告采用河北科技大学实验报告标准纸手写。 实验预习报告、实验原始记录和实验报告要求如下。 一、实验预习报告要求 实验预习报告包括实验目的、实验原理、实验材料及装置、实验内容及实验步骤等,具体内容如下。 1、实验目的 实验目的要明确,在理论上验证定理、公式、算法,并使实验者获得深刻和系统的理解,在实践上,掌握使用实验设备的技能技巧和程序的调试方法。 2、实验原理 实验原理是指自然科学中具有普遍意义的基本规律,实验原理的表述的内容是实验设计的整体思路,即通过何种手段达到何种实验目的,还包括实验现象与结果出现的原因以及重要实验步骤设计的根据等。 3、实验材料与装置 实验所用的设备和材料。 4、实验步骤 从理论和实验两个方面考虑,要写明依据何种原理、定律算法、或操作方法进行实验,并详细写出理论计算过程。 其他内容参见实验报告专用纸。 二、实验原始记录 将实验现象和数据仔细地记录在实验原始记录中,做到原始记录准确、简练、详尽、清楚。如称量试材样品的重量、滴定管的读数、分光光度计的读数等,都应设计一定的表格准确记下正确的读数,并根据仪器的精确度准确记录有效数字。每一个结果至少要重复观测两次以上,符合实验要求并确知仪器工作正常后再写在实验报告上。 实验中使用仪器的类型、编号以及试剂的规格、化学式、分子量、准确的浓度等,都应记录清楚,以便总结实验完成报告时进行核对和作为查找成败原因的

参考依据。如果发现记录的结果有怀疑、遗漏、丢失等,都必须重做实验。三、实验报告要求 实验结束后,应及时整理和总结实验结果,在预习报告的基础上完成实验报告中的结果与讨论部分,包括: 1、数据处理和结果 实验数据处理和结果包括实验现象的描述,实验数据的处理等。对于实验结果的表述,一般有三种方法: (1)文字叙述 根据实验目的将原始资料系统化、条理化,用准确的专业术语客观地描述实验现象和结果,要有时间顺序以及各项指标在时间上的关系。 (2)图表和计算公式 用表格或坐标图或计算公式的方式使实验结果突出、清晰,便于相互比较,尤其适合于分组较多,且各组观察指标一致的实验,使组间异同一目了然。每一图表应有表头和计量单位,能说明一定的中心问题。 (3)曲线图 绘制曲线图,使变化趋势形象生动、直观明了。 在实验报告中,可任选其中一种或几种方法并用,以获得最佳效果。 2、问题和讨论 根据相关的实验结果及理论知识对所得到的实验结果进行解释和分析。如果所得到的实验结果和预期的结果一致,那么它可以验证什么理论?实验结果有什么意义?说明了什么问题?另外,也可以写一些本次实验的心得以及提出一些问题或建议等。 3、结论 针对这一实验所能验证的概念、原则或理论的简明总结,是从实验结果中归纳出的一般性、概括性的判断,要简练、准确、严谨、客观。 4、参考文献 本实验开展所需的文献。 注:经实验指导老师签字的实验原始记录表放在实验报告最后一起上交,同组人不能多于3人。

JSP程序设计实训总结

实训名称:JSP程序设计 实训人: 指导老师: 实训地点: 实训时间: 实训目的:1、掌握jsp在具体项目中的应用 2、熟练掌握MyEclipse开发环境的使用 3、掌握SQL SERVER/ACCESS数据库的操作方法 4、掌握jsp操作后台数据库的各种方法 5、初步认识三层模式程序的开发 实训内容:设计一简单的博客系统,系统包括前台和后台页面 感想:这次实训的主要内容是设计一个简单的博客系统,是一个前台与后台相结合的链接网页界面平台。在开发过程中,我认识到:要制作一个独具一格的网站一定方法与技巧是必要的;以前老是觉得自己什么东西都会,什么东西都懂,一到实践应用中,什么技巧也没用上,常因为一点小错误而前功尽弃,这才发现,原来是自己眼高手低了。难得学校安排了实训,我利用机会给自己巩固知识、加深开发经验,使理论与实践达到最完美的相结合。另外,这次实训也让我明白了学习是一个长时间慢慢积累的过程,我想在以后的工作、生活中都应该不断的学习,努力提高自己的知识与综合素质。 此外,还要感谢指导老师对我们的细心教化,感谢老师给我们的帮助。在设计过程中,我懂得了如何查阅资料,如何与同学交流和自学,使我充分体会到了在创造过程中探索的艰难和成功时的兴奋。 人非生而知之,要学得知识,一靠学习,二靠实践。没有实践,学习就是无源之水,无本之木。以上就是我这次实训的心得和感受。不到一年的时间就将步入社会的我们,面临是继续深造,还是就业的压力,我想我们更应该把握住最后的一段时间,充实、完善自我,争取做一名出色的设计工程师!

最后,通过本次实训使我学到很多东西,便于今后让我提早进入工作状态。因为我知道无论是今后的学习还是日后的工作生活中,我会清楚的知道自己想要做什么、如何做和怎样才能把它做到最好

JSP实验报告

一、实验目的 1.掌握HTML语言书写表单页面 2.编写JSP网页获取用户通过表单提交数据 3.编写JSP网页获取超链传递的数据 二、实验环境 eclipse+jdk+tomcat+数据库 三、实验内容 四、实验步骤 4.1业务流程分析 4.1.1用户登录页面(index.asp)

选课系统首页-登录页面

欢迎登录xxx兼职网站
用户名:
密码:
  校园网选课系统
  用户名: 密  码:       

Web程序设计实验报告

实验报告填写及打印要求: 1、A4纸正反面打印; 2、实验报告封面、封面上填写内容必须打印; 3、实验报告内容,学生可手写也可打印,可根据内容自行加页; 4、指导教师必须手写签名; 5、左侧装订。 实验一报告内容

实验题目:用户注册程序设计 实验目的:熟悉JSP开始环境的搭建、服务目录的设置、网页的编写 实验要求:独立完成JDK、Tomcat的安装并测试通过;实现一个用户注册的页面,要求用户名、密码和邮件地址不能为空,并且两次输入的密码要一致,并检查输入的邮件 地址是否有效。 实验器材:计算机 实验电路图/程序流程图: JSP页面跳转示意图 口令验证程序流程图 实验步骤/程序源代码: 一、实验步骤 STEP1:Set up a table to show the registration information. STEP2:Add element for the table. STEP3:Print registration information and judge these information. STEP4: Action to “receive.jsp”.Post information. 二、程序源代码 【denglu.jsp】 <%@ page contentType="text/html;charset=GB2312" %>


<% String yoursecret=request.getParameter("secret"); String yoursecret2=request.getParameter("secret2"); if(yoursecret!=null) { if(!(yoursecret.equals(yoursecret2))) { %>
您两次输入的密码不一致,请重新输入。
<% } } else { %>
您的密码输入有空,请重新输入。
<% } %>

<% String str=request.getParameter("client"); if(str!=null) { int index=str.indexOf("@"); if(index==-1) { %>
您的E-mail地址中没有@。

JSP程序设计与项目实训教程(张志峰 邓璐娟 张建伟 宋胜利 等)清华大学出版社

1.简述JSP的工作原理。 答:所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。当第一次运行一个JSP页面时,JSP引擎要完成以下操作: ●将JSP文件翻译成Servlet文件,Servlet文件是Java应用程序。 ●JSP引擎调用Java编译器,编译Servlet文件得到可执行的代码文件(.class文件)。 ●JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器。 ●服务器将运行结果以HTML形式作为响应返回给客户端的浏览器。 由于一个JSP页面在第一次被访问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。 2.简述JSP开发Web站点的主要方式。 答:(1)直接使用JSP(2)JSP+JavaBean(3)JSP+JavaBean+Servlet (4)J2EE/JavaEE开发模型(5)SSH开发框架 3.简述JSP两种体系结构。 答:JSP Model1和JSP Model2。Model1,在Model1体系中,JSP页面独自响应请求并将处理结果返回客户。这里仍然存在显示与内容的分离,因为所有的数据存取都是由JavaBean来完成的。Model1体系不能满足复杂的大型Web应用程序需要。随意运用Model 1,会导致JSP页内被嵌入大量的脚本片段或Java代码。根本上讲,将导致角色定义不清和职责分配不明,给项目管理带来不必要的麻烦。Model2体系结构,用JSP生成表示层的内容,让Servlet完成深层次的处理任务。Servlet充当控制者的角色,负责管理对请求的处理,创建JSP页面需要使用的Bean和对象,同时根据用户的动作决定把哪个JSP页面传给请求者。在JSP页面内没有处理逻辑,它仅负责检索原先由Servlet创建的对象或JavaBean,从Servlet中提取动态内容插入静态模板。分离了显示和内容,明确了角色的定义以及实现了开发者与网页设计者的分开。项目越复杂,使用Model2体系结构的优势就越突出。 4.简述什么是HTML?有什么基本标签。 答:HTML(Hypertext Markup Language)即超文本标记语言或超文本链接语言,是一种用来制作超文本文档的简单标记语言,它不是一种真正的编程语言,只是一种标记符。通过一些约定的标签符号对文件的内容进行标注,指出内容的输出格式。当用户浏览WWW 信息时,浏览器会自动解释这些标签的含义,并按照一定的格式在屏幕上显示这些被标记的信息。基本标签有、、、<body>等。 5.简述什么是CSS。 答:CSS(级联样式表)是一种设计网页样式的工具。 CSS是W3C为弥补HTML在显示属性设定上的不足而制定的一套扩展样式标准,其重新定义了HTML中文字显示样式,并增加了一些新的概念,可以实现对文字重叠、定位等。CSS还允许将样式定义单独存储在样式文件中,将显示的内容和显示的样式定义分离,使我们在保持HTML简单明了的初衷的同时能够对页面的布局施加更多的控制,避免代码的冗余,使网页体积更小,下载更快。另外,也可以将多个网页链接到同一个样式文件,从而为整个网站提供一个统一、通用的外观,同时也使多个具有相同样式表的网页可以简单快速的同时更新。 6.简述CSS中定义样式表的几种方式。 (1)通过HTML标签定义样式表(2)使用id定义样式表(3)使用class定义样式表7.简述HTML中加入CSS中的几种方式。 答:(1)嵌入式样式表(2)内联式样式表(3)外联式样式表</p> <div> <div>相关主题</div> <div class="relatedtopic"> <div id="tabs-section" class="tabs"> <ul class="tab-head"> <li id="3908795"><a href="/topic/3908795/" target="_blank">jsp实验报告</a></li> <li id="7526024"><a href="/topic/7526024/" target="_blank">实验记录及实验报告</a></li> <li id="15816350"><a href="/topic/15816350/" target="_blank">jsp程序设计实验报告</a></li> </ul> </div> </div> </div> <div class="container"> <div>文本预览</div> <div class="textcontent"> </div> </div> </div> <div class="category"> <span class="navname">相关文档</span> <ul class="lista"> <li><a href="/doc/1513385796.html" target="_blank">jsp实验报告</a></li> <li><a href="/doc/ff11654302.html" target="_blank">JSP实验报告</a></li> <li><a href="/doc/581072603.html" target="_blank">JSP实验报告3</a></li> <li><a href="/doc/885524097.html" target="_blank">jsp程序设计实验报告</a></li> <li><a href="/doc/ac10943174.html" target="_blank">JavaWeb实验报告</a></li> <li><a href="/doc/041577798.html" target="_blank">JSP实验报告</a></li> <li><a href="/doc/ea7571682.html" target="_blank">JSP应用开发基础实验报告</a></li> <li><a href="/doc/4910223830.html" target="_blank">WEB开发技术实验报告</a></li> <li><a href="/doc/67549245.html" target="_blank">jsp实验报告</a></li> <li><a href="/doc/9714473617.html" target="_blank">JSP程序设计实验报告</a></li> <li><a href="/doc/ba6138061.html" target="_blank">jsp技术实验报告_实验6</a></li> <li><a href="/doc/187015728.html" target="_blank">JSP实验报告</a></li> <li><a href="/doc/f710748593.html" target="_blank">jsp实验报告</a></li> <li><a href="/doc/4916513303.html" target="_blank">JSP技术的运用实验报告</a></li> <li><a href="/doc/832245532.html" target="_blank">JSP实验报告</a></li> <li><a href="/doc/a66403535.html" target="_blank">jsp实验报告</a></li> <li><a href="/doc/ea4333183.html" target="_blank">JSP实验报告-使用JDBC实现数据库连接.</a></li> <li><a href="/doc/334259411.html" target="_blank">JSP实验报告</a></li> <li><a href="/doc/5510013588.html" target="_blank">JSP程序设计实验报告</a></li> <li><a href="/doc/926976381.html" target="_blank">JSP开发实验报告</a></li> </ul> <span class="navname">最新文档</span> <ul class="lista"> <li><a href="/doc/0619509601.html" target="_blank">幼儿园小班科学《小动物过冬》PPT课件教案</a></li> <li><a href="/doc/0a19509602.html" target="_blank">2021年春新青岛版(五四制)科学四年级下册 20.《露和霜》教学课件</a></li> <li><a href="/doc/9619184372.html" target="_blank">自然教育课件</a></li> <li><a href="/doc/3319258759.html" target="_blank">小学语文优质课火烧云教材分析及课件</a></li> <li><a href="/doc/d719211938.html" target="_blank">(超详)高中语文知识点归纳汇总</a></li> <li><a href="/doc/a519240639.html" target="_blank">高中语文基础知识点总结(5篇)</a></li> <li><a href="/doc/9019184371.html" target="_blank">高中语文基础知识点总结(最新)</a></li> <li><a href="/doc/8819195909.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/8319195910.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/7b19336998.html" target="_blank">高中语文基础知识点总结大全</a></li> <li><a href="/doc/7019336999.html" target="_blank">超详细的高中语文知识点归纳</a></li> <li><a href="/doc/6819035160.html" target="_blank">高考语文知识点总结高中</a></li> <li><a href="/doc/6819035161.html" target="_blank">高中语文知识点总结归纳</a></li> <li><a href="/doc/4219232289.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/3b19258758.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/2a19396978.html" target="_blank">高中语文知识点归纳(大全)</a></li> <li><a href="/doc/2c19396979.html" target="_blank">高中语文知识点总结归纳(汇总8篇)</a></li> <li><a href="/doc/1619338136.html" target="_blank">高中语文基础知识点整理</a></li> <li><a href="/doc/e619066069.html" target="_blank">化工厂应急预案</a></li> <li><a href="/doc/b019159069.html" target="_blank">化工消防应急预案(精选8篇)</a></li> </ul> </div> </div> <script> var sdocid = "666d3f670b1c59eef8c7b440"; </script> <script type="text/javascript">bdtj();</script> <footer class="footer"> <p><a href="/tousu.html" target="_blank">侵权投诉</a> © 2022 www.doczj.com <a href="/sitemap.html">网站地图</a></p> <p> <a href="https://beian.miit.gov.cn" target="_blank">闽ICP备18022250号-1</a>  本站资源均为网友上传分享,本站仅负责分类整理,如有任何问题可通过上方投诉通道反馈 <script type="text/javascript">foot();</script> </p> </footer> </body> </html>

用户注册界面
登录名
性别
登录密码
确认密码
邮箱