ajax servlet增删改查,Servlet ajax 文件上传和JDBC+Servler用户表增删改查
昨天晚上帮一个妹子,应该是大二或者大三的。解决了Servlet+JDBC实现用户表的增删改查功能,当时妹子遇到的问题是文件上传和日期格式处理不太会。
我让她把代码发我,我本地调试,结果发现坑很多,就是很多细节问题。不过对于初学者而言,能把项目搭建起来,做一个大概就不错了。
项目代码和表都是妹子创建的,不太规范,请见谅,仅供初学者使用。
用户表的增删改查请查看github的代码,本文介绍一下文件上传功能吧
1.依赖准备
如果使用 jar 包方式的,引入以下2个jar
commons-fileupload-1.2.1.jar
commons-lang-2.4.jar
如果使用 maven,需要在 pom.xml 里添加
commons-fileupload
commons-fileupload
1.2.1
commons-lang
commons-lang
2.4
2. 后台代码
UploadServlet
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
/**
* 文件上传
*/
@WebServlet("/UploadServlet")
public class UploadServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private static final String UPLOAD_PATH = "/Users/liuyanzhao/Desktop/ArcSofthotel-prj1/WebContent/uploads";
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8"); // 设置编码
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=UTF-8");
// 获得磁盘文件条目工厂
DiskFileItemFactory factory = new DiskFileItemFactory();
// 设置 缓存的大小,当上传文件的容量超过该缓存时,直接放到 暂时存储室
factory.setSizeThreshold(1024 * 1024);
// 高水平的API文件上传处理
ServletFileUpload upload = new ServletFileUpload(factory);
try {
String filename = "";
List list = upload.parseRequest(request);
// 获取上传的文件
for (FileItem item : list) {
// 获取文件名
filename = System.currentTimeMillis() + ".png";
File file = new File(UPLOAD_PATH, filename);
file.createNewFile();
// 真正写到磁盘上
item.write(file);
}
PrintWriter writer = response.getWriter();
writer.print(filename);
writer.close();
} catch (FileUploadException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
注意修改 UPLOAD_PATH 为你的文件上传目录,可以选择 WebContent目录下新建uploads文件夹,然后复制路径
Windows 的如 D:\\xxx\\uploads
3. 前端代码
html代码
人脸照片
style="border-radius: 0; border-left: 0;"
οnclick="$('#file').click();">
js 代码
// 添加图片上传
$('body').on('change', '#file', function () {
var formData = new FormData();
var files = $($(this))[0].files[0];
formData.append("file", files);
$.ajax({
url: 'UploadServlet',
type: 'POST',
data: formData,
processData: false,
contentType: false,
dataType: 'text',
success: function (res) {
console.log(res);
if (res != "") {
alert('上传成功');
}
$('#face').val(res);
}
, error: function (res) {
// alert('错误');
}
});
})
注意需要引入 jquery
效果图如下
完整代码:https://github.com/saysky/Servlet_JDBC_20201230/
ajax servlet增删改查,Servlet ajax 文件上传和JDBC+Servler用户表增删改查相关推荐
- Servlet 3.0之Part对象(文件上传)
之前使用Java处理文件上传需要引用各种库,但在servlet3.0之后java提供了文件上传对象,使用更加简单. 这里提供一个Servlet版本对照: 文件上传API HttpServletRequ ...
- 如何使用Servlet,JSP和MySQL将文件上传到数据库
本教程显示了如何实现Java Web应用程序(使用Servlet和JSP),该Java Web应用程序将文件上传到服务器并将文件保存到数据库. 该应用程序采用以下技术: Servlet 3.0+:从S ...
- 上传文件转换html异常,JS 文件互转、10 个 HTML 文件上传技巧、Web 用户体验设计提升指南、奇怪的知识——位掩码 | 思否技术周刊...
上传文件功能可以说是项目经常出现的需求.从在社交媒体上上传照片到在求职网站上发布简历,文件上传无处不在.在本文中,我们将讨论 HTML文件上传支持的10种用法,希望对你有用. 1. 单文件上传 我们可 ...
- ajax利用FormData、FileReader实现多文件上传php获取
一.FormData方式 前台代码(注意,不需要用到form标签): a. html部分: b. js部分: c. 完整代码: <!DOCTYPE html> <html lang= ...
- PHP_APC+Ajax实现的监视进度条的文件上传
//load.js: ADS.addEvent(window, 'load', function(event) {var fileList = ADS.$('fileList');//按照需要修改uo ...
- jquert ajax文件 mvc,jquery ajax file upload NET MVC 无刷新文件上传
//MVC实现 public classFileController : Controller { [HttpPost]publicActionResult Setting() {string use ...
- php处理form多文件上传,ajax利用FormData、FileReader实现多文件上传php获取
前台代码(注意,不需要用到form标签): a. html部分: b. js部分: c. 完整代码: function loadDoc(file,data,async=true){ if(window ...
- Ajax、JSON数据和文件上传与下载
JavaWeb 一.Ajax 1.1 概念 1.2 异步与同步 1.3 传统请求与Ajax 1.4 异步的使用场景 1.4 传输数据类型 1.5 Ajax的实现方式 1.5.1 原生的JS实现Ajax ...
- 通过ajaxFileUpload异步请求上传文件(ajaxFileUpload+servlet实现文件上传下载)
1.最终效果 实现选择图片(此处以图片为例,支持所有类型文件的上传),选择之后将选择的图片在页面中显示出来,点击上传,可以将文件上传到指定的地址中,上传成功后在当前页面自动显示下载标签. 源码下载地址 ...
最新文章
- linux用不用装固态硬盘驱动,固态硬盘要不要安装驱动?总算弄明白了
- JavaScript入门(part9)--函数
- ufei pe安装linux,制作UEFI(64位)下的WinPE + Ubuntu + Acronis多启动U盘
- 一加7 Pro在京东开启预约:人数超34万
- Linux系统磁盘管理基本知识
- sql server使用的注意点及优化点 自备
- Jqweui框架写的CRM配套app
- 美团前端面试题(附答案)
- mysql配置secure_file_priv
- 怎样一键比较2个CAD图纸文件的不同呢?
- PPT打不开提示访问出错怎么办
- Android studio设计app登录界面
- 深入了解PHP8 JIT(即时编译)功能
- 基于主从博弈的社区综合能源系统分布式协同优化运行策略(Matlab代码实现)
- svn propset svn:ignore
- 【Java】 # java实现坐标转换工具类
- Web UI自动化测试之Selenium工具篇
- 谷歌眼镜开发Mirror API之Glassware启动清单
- 神经网络 mse一直不变_利用神经网络寻找超新星
- 华为主题开发分享-在windows 11操作系统上识别不到P50等华为手机的解决方案
热门文章
- 获取linux详细信息,Linux 获取网口详细信息
- android viewgroup点击变色,Android ViewGroup事件分发
- java中date加1s_是否有一个java库将描述时间度量(例如“1d 1m 1s”)的字符串转换为毫秒?...
- java springmvc权限校验_详解Spring MVC使用Filter实现登录及权限验证判断
- Sublime介绍安装和使用(转载)
- 什么是路由器交换机?路由器交换机介绍!
- [渝粤教育] 广东-国家-开放大学 21秋期末考试马克思主义基本原理概论(A)10882k1 (5)
- 【渝粤教育】广东开放大学 网页设计与制作 形成性考核 (25)
- 【指南】远程抄表系统(AMR/AMI)中无线模块选型
- java按键发出声音代码_怎么在java中给按钮添加声音?