昨天晚上帮一个妹子,应该是大二或者大三的。解决了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用户表增删改查相关推荐

  1. Servlet 3.0之Part对象(文件上传)

    之前使用Java处理文件上传需要引用各种库,但在servlet3.0之后java提供了文件上传对象,使用更加简单. 这里提供一个Servlet版本对照: 文件上传API HttpServletRequ ...

  2. 如何使用Servlet,JSP和MySQL将文件上传到数据库

    本教程显示了如何实现Java Web应用程序(使用Servlet和JSP),该Java Web应用程序将文件上传到服务器并将文件保存到数据库. 该应用程序采用以下技术: Servlet 3.0+:从S ...

  3. 上传文件转换html异常,JS 文件互转、10 个 HTML 文件上传技巧、Web 用户体验设计提升指南、奇怪的知识——位掩码 | 思否技术周刊...

    上传文件功能可以说是项目经常出现的需求.从在社交媒体上上传照片到在求职网站上发布简历,文件上传无处不在.在本文中,我们将讨论 HTML文件上传支持的10种用法,希望对你有用. 1. 单文件上传 我们可 ...

  4. ajax利用FormData、FileReader实现多文件上传php获取

    一.FormData方式 前台代码(注意,不需要用到form标签): a. html部分: b. js部分: c. 完整代码: <!DOCTYPE html> <html lang= ...

  5. PHP_APC+Ajax实现的监视进度条的文件上传

    //load.js: ADS.addEvent(window, 'load', function(event) {var fileList = ADS.$('fileList');//按照需要修改uo ...

  6. jquert ajax文件 mvc,jquery ajax file upload NET MVC 无刷新文件上传

    //MVC实现 public classFileController : Controller { [HttpPost]publicActionResult Setting() {string use ...

  7. php处理form多文件上传,ajax利用FormData、FileReader实现多文件上传php获取

    前台代码(注意,不需要用到form标签): a. html部分: b. js部分: c. 完整代码: function loadDoc(file,data,async=true){ if(window ...

  8. Ajax、JSON数据和文件上传与下载

    JavaWeb 一.Ajax 1.1 概念 1.2 异步与同步 1.3 传统请求与Ajax 1.4 异步的使用场景 1.4 传输数据类型 1.5 Ajax的实现方式 1.5.1 原生的JS实现Ajax ...

  9. 通过ajaxFileUpload异步请求上传文件(ajaxFileUpload+servlet实现文件上传下载)

    1.最终效果 实现选择图片(此处以图片为例,支持所有类型文件的上传),选择之后将选择的图片在页面中显示出来,点击上传,可以将文件上传到指定的地址中,上传成功后在当前页面自动显示下载标签. 源码下载地址 ...

最新文章

  1. linux用不用装固态硬盘驱动,固态硬盘要不要安装驱动?总算弄明白了
  2. JavaScript入门(part9)--函数
  3. ufei pe安装linux,制作UEFI(64位)下的WinPE + Ubuntu + Acronis多启动U盘
  4. 一加7 Pro在京东开启预约:人数超34万
  5. Linux系统磁盘管理基本知识
  6. sql server使用的注意点及优化点 自备
  7. Jqweui框架写的CRM配套app
  8. 美团前端面试题(附答案)
  9. mysql配置secure_file_priv
  10. 怎样一键比较2个CAD图纸文件的不同呢?
  11. PPT打不开提示访问出错怎么办
  12. Android studio设计app登录界面
  13. 深入了解PHP8 JIT(即时编译)功能
  14. 基于主从博弈的社区综合能源系统分布式协同优化运行策略(Matlab代码实现)
  15. svn propset svn:ignore
  16. 【Java】 # java实现坐标转换工具类
  17. Web UI自动化测试之Selenium工具篇
  18. 谷歌眼镜开发Mirror API之Glassware启动清单
  19. 神经网络 mse一直不变_利用神经网络寻找超新星
  20. 华为主题开发分享-在windows 11操作系统上识别不到P50等华为手机的解决方案

热门文章

  1. 获取linux详细信息,Linux 获取网口详细信息
  2. android viewgroup点击变色,Android ViewGroup事件分发
  3. java中date加1s_是否有一个java库将描述时间度量(例如“1d 1m 1s”)的字符串转换为毫秒?...
  4. java springmvc权限校验_详解Spring MVC使用Filter实现登录及权限验证判断
  5. Sublime介绍安装和使用(转载)
  6. 什么是路由器交换机?路由器交换机介绍!
  7. [渝粤教育] 广东-国家-开放大学 21秋期末考试马克思主义基本原理概论(A)10882k1 (5)
  8. 【渝粤教育】广东开放大学 网页设计与制作 形成性考核 (25)
  9. 【指南】远程抄表系统(AMR/AMI)中无线模块选型
  10. java按键发出声音代码_怎么在java中给按钮添加声音?