文件上传与下载/Mail

时间:2022-06-02 06:31:11

文件上传与下载

提交方式:post

表单中要有文件上传的表单项 input type=”file”而且必须有name属性

表单类型要加入 encytype=”mulitpart/form-data”

怎么获取file上传的文件呢?

在servlet中使用req.getInputStream获取所有请求体,要经过多次解析才能得到需要的东东。

FileUpLoad

file: 田 场地 领域

DiskFileItemFactory();

ServletFileUpload

setFileSizeMax();设置单个文件大小

setSizeMax()设置总文件大小

setHeaderEncodintg();与req.serCharacterEnconding();一个意思

isMultipartContent(req)//判断是否是文件上传表单

parseRequest(req) 转换为 List<FileItem>进行遍历

FileItem  还得判断一次是否是普通文本数据 isFormField

getFileName() 表单元素名称

getString()      表单元素名称对应的值

getName()   文件名

getContentType() 文件类型

getInputStream() 文件流

write写入文件

delete删除临时文件

邮箱

引入mail.jar包

Session.getDefaultInstance(properties文件)

properties文件 需要进行设置

prop.put("mail.transport.protocol", "smtp"); // 指定协议

prop.put("mail.smtp.host", "localhost");       // 主机   stmp.qq.com

prop.put("mail.smtp.port", 25);                                 // 端口

prop.put("mail.smtp.auth", "true");                     // 用户密码认证

prop.put("mail.debug", "true");                                 // 调试模式

MailMessage(Session)

setSubject()标题

setSentDate()发送时间

setSender()发送地址

setRecipient()接收人

setText()发送内容

setTransport()

connect()发送

sendMessage()

close();

多功能用户邮件

MimeMultipart(“related”)

addBodyPart()

MimeBodyPart();

setDataHandler(new DataHandler(new FileDataSource(new file(path))))

setContentID();设置资源名称

setContent()设置内容文本

Message  SetContent(related);添加到邮件中 最后发送