JSP.docx

上传人:b****3 文档编号:3457551 上传时间:2022-11-23 格式:DOCX 页数:15 大小:33.30KB
下载 相关 举报
JSP.docx_第1页
第1页 / 共15页
JSP.docx_第2页
第2页 / 共15页
JSP.docx_第3页
第3页 / 共15页
JSP.docx_第4页
第4页 / 共15页
JSP.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

JSP.docx

《JSP.docx》由会员分享,可在线阅读,更多相关《JSP.docx(15页珍藏版)》请在冰豆网上搜索。

JSP.docx

JSP

第一章

1、怎样修改tomcat的端口?

答:

在Tomcat下打开conf文件夹找到server.xml文件用记事本打开在中把8080更改即可,如果Tomcat服务器所在的计算机没有启动其他的占有80端口号的网络程序,也可以将Toncat服务器的端口号设置为80

第二章

1、编写一个简单的JSP页面,显示英文字母表。

<%@pagecontentType="text/html;charset=GBK"%>

显示字母

<%

charstart='A',end='Z';

for(chari='A';i<=end;i++){

out.print(i+""+(char)(i+32)+"");

}

%>

结果:

2、请简单叙述include指令标记和include动作标记的不同。

答:

include指令标记(<%@includefile=”url”%>)是在JSp页面出现该指令标记的位置处,静态插入一个文件,必须保证新合成的JSP页面符合JSP语法规则,即能够成为一个JSP文件。

include动作标记(

includepage=”url”>)告诉JSP页面动态包含一个文件。

尽管include动作标记和include指令标记的作用都是处理所需要的文件,但是处理方式和处理时间上是不同。

Include指令标记是在编译阶段就处理所需要处理的文件,被处理的文件在逻辑和语法上依赖于当前JSP页面,其优点就是页面的执行速度快;而include动作标记是在JSP页面运行时才处理文件,被处理的文件在逻辑和语法上独立于当前的JSP页面,其优点是可以使用param子标记更灵活地处理所需要的文件(见后面的param子标记),缺点是执行速度要慢一些。

3、forward动作标记的用法。

Forward动作标记的语法格式为:

forwardpage=”要转向的页面”/>

forwardpage=”要转向的页面”>

paramaname=”name”value=”value”/>

forward>

该指令的作用是:

从该指令处停止当前页面的继续执行,而转向执行page属性指定的JSP页面。

需要注意的是,当forward动作标记不需要param子标记时,必须使用上述第一种形式。

Forward标记可以使用param动作标记作为子标记,以便向要转向的页面传送信息。

Forward动作标记指定的要转向的JSP文件可以使用Tomcat服务器提供的request内置对象获取param子标记中name属性所提供的值。

第三章

1、如果表单提交的信息中有汉字,接受该信息的页面应做怎样的处理?

使用request对象的JSP页面可以使用两种方式避免出现汉字乱码问题,一种方式是使用page指定contentType属性的值时,做如下指定:

<%@pagecontentType=”text/html;Charset=GB2312”%>

即将其中出现的Charset中的首字母大写(C为大写字母)。

另一种方式是把

<%@pagecontentType=”text/html;charset=GB2312”%>

出现的charset中的首字母小写(c为小写字母),然后内置对象request将获取的信息重新编码,即用ISO-8859-1进行编码,并将编码存放到一个字节数组中,然后再将这个数组转化为字符串。

如下列所示:

Stringstr=request.getParameter(“message”);

byteb[]=str.getBytes(“ISO-8859-1”);

Str=newString(b);

2、Session与application的异同

答:

application对象是代表应用程序上下文,它允许JSP页面与包括在同一应用程序

的任何Web组件共享信息,而session对象则是每个客户专用的。

每个session对象实例通过sessionid和客户端之间建立起一一对应的关系,即每个客户都对应着一个session对象实例,并且存储在这些session对象实例中的数据信息不能相互访问.而application对象对于所有客户都是同一个,即所有客户可以共享存储在application对象中的数据信息.

区别:

1.应用范围不同。

Session是用于存储特定的用户会话所需的信息,每个用户对应一个session。

而Application是对访问同一服务目录程序的所有用户共享信息。

2.存活时间不同。

Session是在站点的页面从打开到被关闭之前一直生存的,关闭或跳转到其它网站就会使Session死掉。

而Application是从站点发布以来一直存活的,除非重启了站点服务。

3、Response调用sendRedirect(URLurl)方法的作用是什么?

答:

response.sendRedirect(url)是一个url重定向的方法,服务器端的通过该方法,“告诉”客户端的浏览器去访问url所指向的资源

第四章

1、编写一个JSP页面,该页面提供一个表单,用户可以通过表单输入梯形的上底、下底和高的值,并提交给本JSP页面,该JSP页面将计算梯形的面积之任务交给一个bean去完成。

JSP页面使用getProperty动作标记显示梯形的面积。

答:

/WEB-INF/classes/com/liujin/Tixing.java:

packagecom.liujin;

publicclassTixing{

privateDoubleup=0.0;

privateDoubledown=0.0;

privateDoublehight=0.0;

publicDoublegetUp(){

returnup;

}

publicvoidsetUp(Doubleup){

this.up=up;

}

publicDoublegetDown(){

returndown;

}

publicvoidsetDown(Doubledown){

this.down=down;

}

publicDoublegetHight(){

returnhight;

}

publicvoidsetHight(Doublehight){

this.hight=hight;

}

publicDoublegetArea(){

return(up+down)*hight/2;

}

}

Tixing.jsp:

<%@pagecontentType="text/html;charset=GBK"%>

计算梯形面积

上底:

下底:

高:

useBeanid="tra"class="com.liujin.Tixing"scope="page"/>

setPropertyname="tra"property="*"/>

上底:

getPropertyproperty="up"name="tra"/>

下底:

getPropertyproperty="down"name="tra"/>

高:

getPropertyproperty="hight"name="tra"/>

面积:

getPropertyproperty="area"name="tra"/>

结果:

2、浏览图像bean:

packagecom.liujin;

importjava.io.*;

publicclassShowImage

{

intimageNumber=1,max;

StringpictureName[],playImage,filedir="d:

/12/";

publicShowImage()

{

Filedir=newFile(filedir);

pictureName=dir.list(newFileName());

max=pictureName.length;

}

publicvoidsetImageNumber(intn)

{

if(n<0)

n=max-1;

if(n==max)

n=0;

imageNumber=n;

}

publicintgetImageNumber()

{

returnimageNumber;

}

publicStringgetPlayImage()

{

playImage=newString("");

returnplayImage;

}

}

classFileNameimplementsFilenameFilter

{

publicbooleanaccept(Filedir,Stringname)

{

booleanboo=false;

if(name.endsWith(".jpg")||name.endsWith(".JPG")||name.endsWith(".gif"))

boo=true;

returnboo;

}

}

<%@pagecontentType="text/html;charset=GBK"%>

useBeanid="show"class="com.liujin.ShowImage"scope="session"/>

setPropertyname="show"property="imageNumber"param="imageNumber"/>

单击"上一张"或"下一张"按钮浏览图像

imageNumber=<%=show.getImageNumber()-1%>">上一张

imageNumber=<%=show.getImageNumber()+1%>">下一张

getPropertyname="show"property="playImage"/>

3、成绩单bean:

packagecom.liujin;

publicclassScoreList

{

StringstudentName,courseName="",score="";

StringBufferscoreWatch=newStringBuffer();

publicvoidsetScore(Stringn)

{

score=n;

}

publicvoidsetStudentName(Strings)

{

studentName=s;

}

publicvoidsetCourseName(Strings)

{

courseName=s;

}

publicStringgetCourseName()

{

returncourseName;

}

publicStringBuffergetScoreWatch()

{

if(studentName!

=null&&studentName.length()>0&&score.length()>0)

{

scoreWatch.append("");

scoreWatch.append("");

scoreWatch.append(studentName);

scoreWatch.append("");

scoreWatch.append("");

scoreWatch.append(""+score);

scoreWatch.append("");

scoreWatch.append("");

studentName="";

score="";

}

returnscoreWatch;

}

}

<%@pagecontentType="text/html;charset=GBK"%>

<%@pageimport="com.liujin.*"%>

useBeanid="list"class="com.liujin.ScoreList"scope="session"/>

setPropertyname="list"property="courseName"param="courseName"/>

setPropertyname="list"property="studentName"param="studentName"/>

setPropertyname="list"property="score"param="score"/>

课程名称:

value=

getPropertyname="list"property="courseName"/>>


学生姓名:


学生成绩:

getPropertyname="list"property="courseName"/>

getPropertyname="list"property="scoreWatch"/>

第五章

1、实现文件上传下载:

1文件上传:

使用apache的FileUpload组件实现。

flieupload.html:

文件上传

请选择文件:


效果:

doupload.jsp:

<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%>

<%@pageimport="mons.fileupload.servlet.*"%>

<%@pageimport="mons.fileupload.disk.*"%>

<%@pageimport="mons.fileupload.*"%>

<%@pageimport="java.io.*"%>

上传文件

<%

DiskFileItemFactoryfactory=newDiskFileItemFactory();

Stringpath=request.getRealPath("");

factory.setRepository(newFile(path));

ServletFileUploadupload=newServletFileUpload(factory);

try{

Listlist=upload.parseRequest(request);//解析request

//循环遍历request中的字段

for(FileItemitem:

list){

if(!

item.isFormField()){

//文件类型

Stringname=item.getFieldName();

Stringvalue=item.getName();

intstart=value.lastIndexOf("\\");//得到文件名中最后一个"\"的位置

StringfileName=value.substring(start+1);//得到文件名

request.setAttribute(name,fileName);

try{

item.write(newFile(path,fileName));

out.println("上传成功!

");

}catch(Exceptione){

out.println("上传失败");

e.printStackTrace();

}

}

}

}catch(FileUploadExceptione){

e.printStackTrace();

}

%>

2文件下载:

download.jsp:

<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%>

<%@pageimport="java.io.*"%>

download

文件下载:


<%

Filef=newFile("D:

/");

FilefileList[]=f.listFiles();

for(inti=0;i

if(fileList[i].isFile()){

out.println("

filename="+fileList[i].getName()+">"+fileList[i].getName()+"
");

}

}

%>

结果:

getflie.jsp:

<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%>

<%@pageimport="java.io.*"%>

下载

<%

try{

Stringfilename=request.getParameter("filename");

Filef=newFile("D:

/",filename);

response.setHeader("Content-disposition","attachment;filename="+filename);

FileInputStreamfi=newFileInputStream(f);

OutputStreamos=response.getOutputStream();

byte[]b=newbyte[1024];

intn=0;

while((n=fi.read(b))!

=-1){

os.write(b,0,n);

}

os.close();

fi.close();

}catch(Exceptione){

out.println("downloaderror");

e.printStackTrace();

}

%>

第六章

1、连接MySQL与MSSQLServer的完整代码:

1连接到Mysql的代码

应用程序加载MySql驱动程序的代码

Try{Class.forName(“com.mysql.jdbc.Driver”);

}Catch(Exceptione){}

连接数据库

Try{Stringuri=”jdbc:

mysql:

//localhost/数据库名”;

Stringuser=用户名;

Stringpassword=密码;

Con=DriverManager.getConnection(uri,user,password);

}Catch(SQLExceptione){}

2连接到SQLServer2000的代码

应用程序加载SQLServer驱动程序代码

Try{Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”);

}Catch(Exceptione){}

连接数据库

Try{Stringuri=”jdbc:

sqlserver:

//192.168.100.1:

1433;DatabaseName=数据库名”;

Stringuser=用户名;

Stringpassword=密码;

Con=DriverManager.getConnection(uri,user,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1