javaweb开发笔记2

MYSQL

rownum自身特性:只能查询<的数据,不能查询>的数据

SQLserver,oracle

row_number()over(字段)

指定字段值预编译,然后将预编译好的字段值

文件上传

a 引入两个jar apache:commons-fileupload.jar组件,且依赖commons-io

b 上传文件 type = “file”,如果有上传组件,必须提交方式为post,method = “post”,在表单中必须增加一个属性 enctype=“multipart/form-data">

代码

if(isMultipart){ //判断前台的form是否有mutipart属性

    FileItemFactory factory = new DiskFileItemFactory();

    ServletFileUpload upload = new ServletFileUpload(factory);

    //通过parseRequest解析form中所有请求字段,并保存到items集合中(即前台传递的数据)

    List<FileItem> items = upload.parseRequest(request)

//遍历items中数据

注意的问题 上传的目录 upload

                    1 如果修改代码,则在tomcat重新启动时会被删除

                        原因:当修改代码时,tomat会重新编译一份class,并重新部署(重新创建各种目录)

                    2 如果不修改代码,则不会删除(class仍然是之前的class)

                     因此,可以将上传目录放在非tomat文件夹里

servlet控制文件上传类型及大小

a 可以通过"."后缀名来判断文件类型

b 可以通过setSizeMax()函数来控制单个文件大小

   upload.setSizeMax();单位:字节B

c 设置上传文件时,用到的临时区的缓冲n'g文件的大小factory

    factory.setRepository();单位为b

    //设置临时文件夹

    setRepository(new File("uploadtemp");

下载 不需要jar包

a 请求(地址a form),请求servlet

b servlet通过文件的地址 将文件转为输入流 servlet中

c 通过输出流 将 刚才已经转化为输出流的文件 输出给客户

注意:下载文件 需要设置两个响应头

response.addHeader(“content-type”,“application/octet-stream”);二进制,任意文件

response.addHeader("content-Disposition","attachement;filename="+fileName);fileName包含了文件的后缀名

下载时乱码,出现中文时

edge:

需要转码URLEncoder.encode(fileName,“UTF-8”)

firefox:给文件名加

前缀:=?UTF-8&#

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值