`

j2ee16:jsp5:文件上传,jsp标准动作

    博客分类:
  • j2ee
 
阅读更多
1.给表在添加一列:alert table student add 列名 属性名
2.上传照片的时候要在jsp的表单上添加一句话:enctype="multipart/form-data":这是文件上传的协议,表示使用二进制的形式上传图片,enctype的作用是封装了表单。
3.文件上传的思想是:把本地(自己电脑中的)文件上传到tomcat等服务器上,然后增删改查都是用的服务器上的文件。不能使用电脑上的,因为电脑上的东西是本地的。
 文件上传就是将文件从本地拷贝到服务器上。记住要加一个jar包。
4.加入jar包的目的是使用jar包里面的公共类,因此下一步要创建这个类的一个对象。在jar包里面可以找到
5.文件上传过程:
  ---1.创建文件上传的对象SmartUoload su=new SmartUoload ();
  ---2.对对象进行初始化:su.initialize(this.getServletConfig,request,response);//三个参数:配置,请求,响应。其中this表示当前类的对象,因为在tomcat的work目录下的jsp是个.java文件
      这个文件里面肯定包含这三个属性,并且this代表当前这个类的对象,三个参数都是属性。init方法对这个类进行了封装,能够获取保存数据
  ---3.su.upload():文件上传,上传到内存
  ---4.su.save():写入,写入到指定目录
  ---5.su.getFiles().getFile(0).getFilename():获得一组上传文件中的第一个文件的名字,把这个当做保存路径
  ---6.我们加了enctype="multipart/form-data"属性之后,在提交表单的时候就出错了,不能提交了,此时引入了jar包中的request对象。即使不能提交但是图片也拷贝到了服务器上了,因为拷贝过程跟保存过程是两码事
      这个对象封装了request对象,由于su封装过request,因此可以用su获取jar包中的request。记住这里用的request是jar包的,不是系统的。但是仍然乱码。
     enctype把表单封装了,因此此时表单的数据不在是文本类型的了而是二进制的比特流,因此不能用request.getAttribute()来接收参数,因此此时使用SmartUoload 对象提供的方法,提供的getrequest方法得到jar包中的request方法。
  ---7.把页面中的request.setEconding设置成GBK,因为jar包中的request对象是使用GBK编码的。
  ------一些其他的方法:su.setMaxFileSize(1024*5);最大允许上传的尺寸,su.AllowedFilesList("jsp,gif,jpeg"):允许上传文件的格式。
  -----8 对上传后的文件进行重命名:(目的是解决图片名字相同的时候后面上传的的图片会覆盖前面的图片)
          ---1第一步:获取系统日期,在comm里面写个公共的方法。这个当成图片名的前半部分
          ---2.第二步:su.getFiles().getFile(0).getFileExt():获得文件的类型(后缀)
          ---3.第三步:对上面的两步进行合并
           --4.file.saceAs():另存为,文件另存为
注意:在这里获取当前时间的方法是通过在comm包中写一个获取时间的方法来实现的。yyyyMMddHHmmssSSS:为什么毫秒要用三个SSS,因为毫秒用S表示,而且毫秒占了三位

  ----面试9.jsp的几个标准动作标签(只要是jsp:的都是标准动作)。至少记住六七个。
        ---<jsp:userBean id="dao" class="com.dao"/>:是根据类创建一个对象 ,这里的bean就是一个类的意思
        ---<jsp:setProperty proprtty="属性名" name="对象名" value="值"/> :给对象的属性设置值
        ---<jsp:getProperty  proprtty="属性名" name="对象名" />
        ---<jsp:forword page="路径">:跳转,就是转发
        ---<jsp:params value="" name=""/>:获取表单元素的值
        ----<jsp:include  page="地址"/>:这是包含,运行时包含,两个页面运行之后再把结果放在一起。
             跟昨天讲的<%@ include file=""%>不一样,<%@ include file=""%>是编译时候包含。
             其中<%@ include file=""%>是静态导入,在编译的时候进行页面的合并
             <jsp:include  page="地址"/>是动态导入,先执行两个jsp,然后将结果进行合并。
  ----10.注意两种注释:jsp注释:<%--%>
                       html注释:<!----->
 
注意:------------------------------------------
<%@include file=%>
他不能像page那样传递参数,那就在地址栏上问号传参
是包含的意思:编译时包含,将两个页面整合。合成一个servlet
在jsp页面上的有效注释方式有两种:
---1.<!-->注释:是html的注释。被注释的部分会被执行,但是不显示
---2.<%-->注释:是jsp的注释,被注释的内容会被执行,然后把执行结果注释掉
 

两个包含:
重点1:
<!--【注意:】include这是指令包含:1.他是编译时包含(两个jsp是两个servlet。是先将两个jsp的代码合并成一个jsp代码,然后去执行这一个jsp代码),2.他是静态包含(里面不能写参数,参数在地址栏上以问号的形式传递)
 -->       <%@include file="MyJsp01-7.jsp" %>
重点2:
<!-- jsp:include这个是标签包含:是  执行时包含(只包含页面的输出结果。是先去执行两个jsp页面,然后把两个jsp页面的执行结果包含在一起),动态包含(因为可以使用参数jsp:param) -->
    <jsp:include page="MyJsp01-7.jsp">
     <jsp:param value="zhangsan" name="zs"/>
     <jsp:param value="1234" name="pw"/>
    </jsp:include>
分享到:
评论

相关推荐

    j2ee12:jsp01:jsp页面嵌套java代码、<%@ %>的使用

    5. **JSP动作标签**:除了`&lt;%@ %&gt;`,还有 `&lt;jsp:include&gt;`, `&lt;jsp:forward&gt;`, `&lt;jsp:params&gt;` 等JSP动作标签,它们用于处理页面间的跳转、包含和参数传递。 6. **EL(Expression Language)**:EL是JSP 2.0引入的一...

    j2ee17:servlet01:jsp结束,servlet的配置和生命周期

    在本文中,我们将深入探讨J2EE 1.7中的Servlet技术,特别是在Servlet与JSP交互方面的知识。Servlet是Java平台上的一个核心组件,用于处理HTTP请求并生成动态响应。在"Servlet01:jsp结束,servlet的配置和生命周期...

    J2EE JAR包(J2EE1.3 J2EE1.4 J2EE5.0 )

    Java 企业版(Java 2 Platform, Enterprise Edition,简称 J2EE)是 Sun Microsystems 推出的用于构建分布式、多层企业级应用的框架。它为开发者提供了多种服务和组件模型,包括Java Servlets、JavaServer Pages ...

    J2EE实例:电子商城系统.rar

    这个实例深入展示了如何运用J2EE的核心组件,如Servlet、JSP、JavaBeans、EJB以及相关的框架(如Spring、Hibernate等),来实现一个功能完善的在线购物系统。以下是对这个实例中的关键知识点的详细解释: 1. **...

    j2ee实验三:学习使用JSP技术

    本实验旨在帮助学生深入理解JSP的运行机制,掌握基本语法,以及如何运用JSP的属性、标准动作和表达式语言(EL)来构建Web应用程序。实验内容包括以下几个部分: 1. **实验目的**: - 理解JSP的运行流程,即JSP是...

    jsp技术与j2ee技术

    3. **JSP动作**:如`&lt;jsp:useBean&gt;`, `&lt;jsp:setProperty&gt;`, `&lt;jsp:getProperty&gt;`等,用于管理JavaBeans组件。 4. **脚本元素**:包括声明、脚本let、表达式,它们分别用于定义变量、编写Java代码块和插入表达式的值...

    FlexModule_j2ee Flex 与JSP 整合用的.jar 文件

    FlexModule_j2ee 是一个专为整合Flex与JSP应用设计的组件库,它提供了一个.jar文件,使得在Java服务器端(JSP)与客户端的Adobe Flex之间建立交互变得更加便捷。Flex是一种强大的富互联网应用程序(RIA)开发技术,...

    j2ee数据库相关资料,jsp数据库连接,已经相关资源

    在IT行业中,J2EE(Java 2 Platform, Enterprise Edition)是一个用于构建企业级应用程序的框架,它包含了一系列的API和服务,其中与数据库交互是核心功能之一。本资料包主要涵盖了J2EE环境下如何进行数据库连接,...

    J2EE jsp 管理系统

    在【压缩包子文件的文件名称列表】中,“catalog”可能是一个目录文件,包含了系统的结构和资源索引,而“J2EE jsp 管理系统”可能是整个项目的源代码或者编译后的WAR(Web Application Archive)文件,包含了所有...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    12.6.16 编写Spring和Hibernate的配置文件spring-config.xml 12.6.17 编写web.xml 12.6.18 验证示例 12.7 小结 第四篇 J2EE项目案例精选 第十三章 网上调查系统 13.1 系统概述 13.2 需求分析 13.2.1 系统用例图 ...

    韩顺平 j2ee视频实战教程》servlet + jsp的视频

    根据提供的标题、描述、标签及部分内容,我们可以提炼出与J2EE、Servlet、JSP相关的知识点。接下来将详细解析这些知识点,并围绕韩顺平老师的J2EE视频实战教程中的核心内容进行阐述。 ### J2EE简介 J2EE(Java 2 ...

    J2EE实现通讯录 jsp 基于MYSQL数据库

    【J2EE实现通讯录 jsp 基于MYSQL数据库】是一个典型的Web应用程序开发实例,主要涉及了Java服务器页面(JSP)、JavaServer Pages(JSP)技术、JavaServlet、以及MySQL数据库的集成使用。这一项目是许多学习者在学期...

    j2ee 1.4所有jar包

    activation.jar javax.servlet.jar javax.servlet.jsp.jar jboss-j2ee.jar jboss-jaxrpc.jar jboss-jsr77.jar jboss-saaj.jar mail.jar namespace.jar xml-apis.jar

    jsp+j2ee

    **第一部分:JSP技术与J2EE技术** 在J2EE(Java 2 Platform, Enterprise Edition)框架中,JSP(JavaServer Pages)技术是用于构建动态网页的关键组件。本部分主要涵盖以下知识点: 1. **JavaBeans组件技术**: -...

    J2EE经典案例设计与实现

    案例5:J2EE访问Tomcat中的数据连接池 案例6:J2EE访问JBoss中数据连接池 案例7:J2EE访问WebLogic中的数据连接池 案例8:简单的登录程序 案例9:数据分页显示 案例10:网上投票系统 案例11:在浏览器内运行SQL命令 ...

    j2ee课程设计(jsp+mysql班级同学录)

    J2EE是Oracle公司提供的一个用于构建企业级分布式应用程序的开放标准框架,它包括一系列的组件和服务,如Servlet、JSP(JavaServer Pages)、EJB(Enterprise JavaBeans)等,这些组件共同协作以处理复杂的业务逻辑...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    12.6.16 编写Spring和Hibernate的配置文件spring-config.xml 12.6.17 编写web.xml 12.6.18 验证示例 12.7 小结 第四篇 J2EE项目案例精选 第十三章 网上调查系统 13.1 系统概述 13.2 需求分析 13.2.1 系统用例图 ...

Global site tag (gtag.js) - Google Analytics