`
emowuyi
  • 浏览: 1478574 次
文章分类
社区版块
存档分类
最新评论

JAVA WEB_JSP的初步(13)

 
阅读更多

使用Smartupload组件

如果要想上传文件,则必须使用上传文件的控件框,类型为file 1

实例一:对于图片,必须进行多媒体的封装 1

实例二:封装表单的问题 2

实例三:重新命名文件名称 3

实例四:为保证重命名不重复 4

如果要想上传文件,则必须使用上传文件的控件框,类型为file

<formaction="SmartUpload01.jsp"method="post">

上传文件:<inputtype="file"name="pic">

<inputtype="submit"value="上传">

</form>

使用Smartupload上传文件,则须按照以下的步骤操作:

l实例化Smartupload对象SmartUploadsmart=newSmartUpload();

l初始化上传操作publicfinalvoidinitialize(PageContextpageContext)

作用:执行上传下载的初始化工作,其中,pageContextJSP页面内置对象(页面上下文)

l准备上传publicvoidupload()

作用:上传文件数据。对于上传操作,第一步执行initialize方法,第二步就要执行这个方法。

l将上传的文件进行保存publicintsave(StringdestPathName)

作用:将全部上传文件保存到指定目录下,并返回保存的文件个数。其中,destPathName为文件保存目录

实例一:对于图片,必须进行多媒体的封装

<formaction="smartupload02.jsp"method="post"enctype="multipart/form-data">

上传的图片:<inputtype="file"name="pic">

<inputtype="submit"value="上传">

</form>

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

<jsp:useBeanid="smartupload"class="org.lxh.smart.SmartUpload"/>

<html>

<head>

<title>smartupload</title>

</head>

<body>

<%

smartupload.initialize(pageContext); //初始化上传

smartupload.upload(); //准备上传

smartupload.save("upload"); //保存文件

%>

</body>

</html>

实例二:封装表单的问题

<html>

<head>

<title>smartupload</title>

</head>

<body>

<formaction="smartupload03.jsp"method="post"enctype="multipart/form-data">

用户姓名:<inputtype="text"name="uname"><br>

上传的图片:<inputtype="file"name="pic"><br>

<inputtype="submit"value="上传">

</form>

</body>

</html>

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

<jsp:useBeanid="smartupload"class="org.lxh.smart.SmartUpload"/>

<html>

<head>

<title>smartupload</title>

</head>

<body>

运行程序发现,无法直接使用request对象,取得表单中的其他参数

用户名不能取出为null

所以:如果表单被封装之后,要取得封装表单里的内容,则只能使用smartupload中提供的特定方法完成,而且此方法必须在smartupload准备上传的语句之后。

publicRequestgetRequest()

作用:取得request对象,以便由此对象获得上传表单参数的值。

<%

request.setCharacterEncoding("GBK");

//Stringname=request.getParameter("uname");

smartupload.initialize(pageContext); //初始化上传

smartupload.upload(); //准备上传

Stringname=smartupload.getRequest().getParameter("uname");

smartupload.save("upload"); //保存文件

%>

<h1>姓名:<%=name%></h1>

</body>

</html>

实例三:重新命名文件名称

取得文件后缀可使用如下形式:Stringext=smart.getFiles().getFile(0).getFileExt();

1.publicFilesgetFiles()

作用:取全部上传文件,以Files对象形式返回,可以利用Files类的操作方法来获得上传文件的数目等信息。2.Files类中的方法:publicFilegetFile(intindex)

作用:取得指定位移处的文件对象File(这是smartupload中的File,不是java.io.File,注意区分)其中,index为指定位移,其值在0getCount()-1之间。

3.File类中的方法:publicStringgetFileExt()

作用:取文件扩展名(后缀)
4.publicvoidsaveAs(java.lang.StringdestFilePathName)

作用:将文件换名另存,其中,destFilePathName是另存的文件名。

<body>

<formaction="smartupload04.jsp"method="post"enctype="multipart/form-data">

文件名称:<inputtype="text"name="uname"><br>

上传的图片:<inputtype="file"name="pic"><br>

<inputtype="submit"value="上传">

</form>

</body>

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

<jsp:useBeanid="smart"class="org.lxh.smart.SmartUpload"/>

<html>

<head>

<title>smartupload</title>

</head>

<body>

<%

request.setCharacterEncoding("GBK");

smart.initialize(pageContext); //初始化上传

smart.upload(); //准备上传

//取得上传的文件后缀

Stringext=smart.getFiles().getFile(0).getFileExt();

//取得用户自己输入的名称:

Stringname=smart.getRequest().getParameter("uname");

//将用户名与扩展名相连接,形成新的名称

name=name+"."+ext;

//新文件的路径及文件名

StringfileName=this.getServletContext().getRealPath("/")+"upload/"+name;

//保存文件

smart.getFiles().getFile(0).saveAs(fileName);

%>

<imgsrc="<%=fileName%>"width="300"height="200">

</body>

</html>

实例四:为保证重命名不重复

smartupload05.htm/smartupload05.jsp/IPTimeStamp.java

<html>

<head>

<title>smartupload</title>

</head>

<body>

<formaction="smartupload05.jsp"method="post"enctype="multipart/form-data">

上传的图片:<inputtype="file"name="pic"><br>

<inputtype="submit"value="上传">

</form>

</body>

</html>

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

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

<jsp:useBeanid="smartupload"class="org.lxh.smart.SmartUpload"/>

<html>

<head>

<title>smartupload</title>

</head>

<body>

<%

IPTimeStampits=newIPTimeStamp(request.getRemoteAddr());

request.setCharacterEncoding("GBK");

smartupload.initialize(pageContext); //初始化上传

smartupload.upload(); //准备上传

Stringname=its.getIPTimeStampRand()+"."+smartupload.getFiles().getFile(0).getFileExt();

StringfileName=this.getServletContext().getRealPath("/")+"upload/"+name;

smartupload.getFiles().getFile(0).saveAs(fileName);

%>

<imgsrc="<%=fileName%>"width="300"height="200">

</body>

</html>

packagecom.bean;

importjava.text.SimpleDateFormat;

importjava.util.Random;

publicclassIPTimeStamp{

privateStringip;

publicIPTimeStamp(){

}

publicIPTimeStamp(Stringip){

this.ip=ip;//设置ip地址

}

publicStringgetTimeStamp(){

//取得日期和时间

Stringtemp=null;

SimpleDateFormatsdf=newSimpleDateFormat("yyyyMMddHHmmssSSS");

temp=sdf.format(newjava.util.Date());

returntemp;

}

publicStringgetIPTimeStampRand(){

StringBufferbuf=newStringBuffer();

if(ip!=null){

Stringstr[]=this.ip.split("\\.");//以点为他隔符划分ip

for(inti=0;i<str.length;i++){

//将补全3位的IP地址放入buf

buf.append(this.addZero(str[i],3));

}

}

//追加日期及时间

buf.append(this.getTimeStamp());

//追加产生的3位随机数

Randomrand=newRandom();

for(inti=0;i<3;i++){

buf.append(rand.nextInt(10));

}

returnbuf.toString();

}

privateStringaddZero(Stringstr,intlen){

//ip地址没有写全3位时,0补全

StringBuffers=newStringBuffer();

s.append(str);

while(s.length()<len){

s.insert(0,"0");

}

returns.toString();

}

}

运行结果

分享到:
评论

相关推荐

    跟我学Java_Web源代码

    跟我学Java_Web配套源代码,全书全!另外: Java Web开发是目前最...《跟我学Java Web》适合广大Java Web初学者、初步掌握Java技术的读者,想深入学习Struts2、SSH框架的开发者,以及从事Java Web开发工作的技术人员。

    java网络编程原理与jsp web开发核心技术 part2

    本书是目前电子资源中比较基础的一本,适合具备初步计算机网络知识(例如TCP/IP网路五层模型)的读者快速理解网络编程原理和JSP的核心技术,进而快速上手开发。 本书的作者撰写是相当用心和仔细的,各知识点都有比较...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    全书分4篇,共24章,其中,第1篇为技能学习篇,主要包括Java Web开发环境、JSP语法、JSP内置对象、Java Bean技术、Servlet技术、EL与JSTL标签库、数据库应用开发、初识Struts2基础、揭密Struts2高级技术、Hib锄劬e...

    java网络编程原理与jsp web开发核心技术 part1

    本书是目前电子资源中比较基础的一本,适合具备初步计算机网络知识(例如TCP/IP网路五层模型)的读者快速理解网络编程原理和JSP的核心技术,进而快速上手开发。 本书的作者撰写是相当用心和仔细的,各知识点都有比较...

    java_jsp项目源码_+sql毕业生招聘系统毕业设计(系统+论文+英文文献+综合材料).rar

    3. **在线面试**:系统提供在线面试功能,企业和毕业生可以通过视频或语音进行初步沟通,节省时间和成本。 4. **招聘流程管理**:企业可以跟踪求职者的应聘进度,管理招聘流程,提高招聘效率。 5. **数据分析与统计*...

    java +web开发应用详解

    《独门架构:Java Web开发应用详解》主要内容简介:...《独门架构:Java Web开发应用详解》适用于已经初步掌握Java技术,想进一步学习SSH整合开发的读者;对在校大、中专院校的学生和参加Java培训的学生也有很大的帮助。

    零点起飞学Java Web开发

    Java语言作为目前应用最为广泛的面向对象编程语言,受到了越来越多程序开发者的欢迎。而基于Java语言的Web技术...本视频对Java语言的特性 Java Web开发的技术进行概括性地讲解,使读者对Java Web开发有一个初步地了解。

    跟我学javaweb全套ppt

    Java Web开发是目前最流行、使用最广泛的网站开发技术。...《跟我学Java Web》适合广大Java Web初学者、初步掌握Java技术的读者,想深入学习Struts2、SSH框架的开发者,以及从事Java Web开发工作的技术人员。

    java web智能停车场登录界面初步设计

    初步设计了一个智能停车场的登录界面,仅供参考

    基于JSP的在线竞拍系统

    本系统是一个完整的JSP-JAVA应用项目,合适有初步JSP编程经验的朋友们提高和学习之用。 系统含全套源码,合适朋友们在此基础上举一反三结合实际开发出优秀的JSP应用系统。 学生毕业设计好教材! 本系统是WEB模式的...

    尚硅谷Java视频教程_Maven视频

    几个常用Maven命令 · 12.POM · 13.坐标 · 14.仓库 · 15.第二个Maven工程的目录结构和文件内容 · 16.依赖的基本操作 · 17.依赖的范围初步介绍 · 18.生命周期插件和目标 · 19.Maven插件的设置 · 20....

    办公自动化系统OA(jsp java)

    本系统是一个完整的JSP应用项目,合适有初步JSP编程经验的朋友们提高和学习之用。 系统含全套源码,合适朋友们在此基础上举一反三结合实际开发出优秀的JSP应用系统。 本系统是Web模式的办公自动化系统 运行环境:...

    jsp航空订票系统

    航空订票系统管理系统(Web版 全套源码 安装即用) &lt;br&gt;本系统是一个完整的JSP-JAVA应用项目,合适有初步JSP编程经验的朋友们提高和学习之用。 &lt;br&gt;系统含全套源码,合适朋友们在此基础上举一反三结合实际开发出...

    JAVA WEB典型模块与项目实战大全

    1.1 java web应用概述  1.2 配置开发环境  1.3 基础技术简单简介  1.4 核心框架初步认识  1.5 小结  第2章 myedipse开发工具对各种框架的支持  2.1 使用jsp的两种模式  2.2 struts框架的实现  2.3...

    股票信息管理系统jsp版

    本系统是一个完整的JSP-JAVA应用项目,合适有初步JSP编程经验的朋友们提高和学习之用。 系统含全套源码,合适朋友们在此基础上举一反三结合实际开发出优秀的JSP应用系统。 本系统是Web模式的股票信息管理系统 ...

    基于jsp的图书管理系统

    本系统是一个完整的JSP-JAVA应用项目,合适有初步JSP编程经验的朋友们提高和学习之用。 系统含全套源码,合适朋友们在此基础上举一反三结合实际开发出优秀的JSP应用系统。 学生毕业设计好教材! 本系统是WEB模式的...

    基于jsp的股票交易管理系统

    本系统是一个完整的JSP-JAVA应用项目,合适有初步JSP编程经验的朋友们提高和学习之用。 系统含全套源码,合适朋友们在此基础上举一反三结合实际开发出优秀的JSP应用系统。 本系统是Web模式的股票信息管理系统 ...

    商品销售系统-java编程系统

    本系统是一个完整的JAVA-XML应用项目,合适有初步JSP/java编程经验的朋友们。 系统含全套源码,学生毕业设计好教材! 本系统是Web模式的商品销售系统 运行环境:Tomact+JDK 编程模式:JSP+JavaBean+JavaServlet ...

    基于JSP的成绩管理系统

    学生成绩管理系统(Web版 全套源码 安装即用)本系统是一个完整的JSP-JAVA应用项目,合适有初步JSP编程经验的朋友们提高和学习之用。系统含全套源码,合适朋友们在此基础上举一反三结合实际开发出优秀的JSP应用系统。...

Global site tag (gtag.js) - Google Analytics