第四十四篇(第三方控件)

第三方控件

1. 掌握文件上传

HTTP协议是基于TCP协议的一种超文本传输协议,用于通信。

客户端请求,服务端响应。

rfc 1867里提出了HTTP协议允许进行文件上传。

<input type="file"/>

commons-fileupload它就遵循了rfc 1867规范,进行了一系列文件上传封装。

  • 下载最新版的fileupload和io组件http://commons.apache.org/proper/commons-fileupload/

  • 客户端:rfc1867规范中提到了想要做文件上传 必须保证请求方式为POST,内容类型(Content-Type)必须为multipart/form-data

    • 编写一个表单将其请求方式设置为POST
    • 将表单的属性enctype="multipart/form-data"(设置上它之后,数据的请求信息变化了,变为了文件项形式上传)
    • 设置一个文件域用于选择文件
  • 服务端:

    // 1.工厂
    // 接口:File文件Item项Factory工厂    用来进行文件项内容接收的 
    // 实现类:DiskFileItemFactory 
    // 常用的API:
    DiskFileItemFactory fif = new DiskFileItemFactory();
    // 设置上传过程中的文件缓冲区大小
    // fif.setSizeThreshold(sizeThreshold);
    // 设置上传过程中的临时文件存储位置
    // fif.setRepository(repository)
    
    // 2.产品
    // 接口FileItem  用来存储请求过来的文件项内容  文件项可能为文件表单 也可能为普通表单
    // 判断是否是普通表单
    // isFormFiled()
    // 获取文件名
    // getName()
    // 获取name属性值
    // getFiledName()
    // 获取value属性值
    // getString()   getString(String encoding)
    // 获取文件大小
    // getSize()
    // 文件存储  (上传到服务器的哪个位置)
    // write(File destFile)
    
    // 3.操作工
    // ServletFileUpload
    // 设置上传文件的总大小
    // setSizeMax(long 字节)  如果文件上传超过大小限制 会抛出一个FileUploadBase.SizeLimitExceededException异常
    // 解析请求 将请求内容转换为对应的文件项集合
    // List<FileItem> parseRequest(HttpServletRequest request)  
    // 判断是否是enctype=multipart/form-data格式的上传
    // boolean isMultipartContent(HttpServletRequest request)
    // 设置头编码(如果你的文件名乱码了 可以设置它)  记住这些编码设置应该放在最前面  否则都已经获取完了 设置也就没意义
    // setHeaderEncoding(String encoding)
    

2. 掌握富文本编辑器的使用

第一步我们创建一个web项目,将官网下载的ueditor放在根目录下面,并将自

带的jar包引入,如下图所示:

百度富文本编辑器ueditor怎么使用2
第二步需要先配置ueditor下面的ueditor.config.js文件,找到

window.UEDITOR_HOME_URL = “/项目名称/ueditor/”;进行路径配置,如下图所示:

百度富文本编辑器ueditor怎么使用3
第三步在我们需要用到富文本编辑器的地方引入js文件,需要引入

ueditor.config.js,ueditor.all.js,jquery-2.2.3.min.js三个文件,如

下图所示:

百度富文本编辑器ueditor怎么使用4
第四步需要在页面中用一个文本域来引入,输入如下代码:

百度富文本编辑器ueditor怎么使用5
第五步运行项目,可以看到富文本编辑器ueditor已经显示在浏览器页面上了,

如下图所示:

在这里插入图片描述
第六步如果需要进行上传文件,图片,视频,需要配置“ueditor->jsp->config.json”文件,配置图片,文件,视频的路径访问前缀,相对路径可以

用“…”,如下图所示:

百度富文本编辑器ueditor怎么使用

3. 掌握页面拆分

在我们编写JSP文件时,我们发现在多个JSP文件中可能会出现大量重复的代码。JSP由HTML+Java组成的,所以有可能有大量的重复HTML或者大量的重复Java代码。那么我们就需要对重复性的代码进行复用。

3.1 静态包含

<%@include %> 指令

3.2 动态包含

<jsp:include/>

3.3. jsp静态包含和动态包含的区别

在jsp中有两种包含,静态包含<%@include file="xxx.jsp"%>和动态包含<jsp:include page="xxx.jsp">,下面说一下它们之间的区别

  1. <%@include file="xxx.jsp"%>为jsp中的编译指令,其文件的包含是发生在jsp向servlet转换的时期,而<jsp:include page="xxx.jsp">是jsp中的动作指令,其文件的包含是发生在编译时期,也就是将java文件编译为class文件的时期

  2. 使用静态包含只会产生一个class文件,而使用动态包含会产生多个class文件

  3. 使用静态包含,包含页面和被包含页面的request对象为同一对象,因为静态包含只是将被包含的页面的内容复制到包含的页面中去;而动态包含包含页面和被包含页面不是同一个页面,被包含的页面的request对象可以取到的参数范围要相对大些,不仅可以取到传递到包含页面的参数,同样也能取得在包含页面向下传递的参数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值