html文件在JAVAweb位置,JavaWeb中的关于html、jsp、servlet下的路径问题

#1 前言 本文将对近期项目练习中出现的关于文件路径的问题进行分析和总结,主要涉及html页面中的href及ajax指向路径、jsp页面中href指向路径及servlet转发或重定向路径等内容,本文的分析及总结将尽量做到知其然知其所以然。

注:本文中的项目练习,是通过IDEA的MAVEN插件,部署到TOMCAT完成的。**所有html、jsp页面都在webapp文件夹下,所有src中的java文件会由maven自动编译为class文件,放在WEB-INF文件夹下。**

#2 html页面标签内的路径写法

##2.1 html页面之间直接跳转的路径写法 直接在标签的href中写指向的html页面文件名即可

登录

##2.2 html页面内通过ajax跳转到servlet的路径写法 直接在URL属性处写servlet的value值(但是最前面不要加/)即可

$.post("registerUserServlet", $(this).serialize(), function (data) {});

如果是指向servlet下的方法,写value值(但是最前面不要加/)+"/"+方法名即可

$.post("user/register", $(this).serialize(), function (data) {});

##2.3 servlet内通过java代码书写的html标签的路径写法 直接在标签的href中写指向的html页面文件名即可

登录

#3 jsp页面标签内的路径写法

##3.1 jsp页面之间直接跳转的路径写法 直接在标签的href中写指向的h

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,基于ServletJSP实现文件上传,可以封装以下方法: ```java public class FileUtils { /** * 上传文件 * @param request HttpServletRequest对象 * @param fileInputName 表单文件上传控件的name属性值 * @param destPath 文件上传后保存的路径 * @return 上传成功返回true,否则返回false * @throws IOException */ public static boolean uploadFile(HttpServletRequest request, String fileInputName, String destPath) throws IOException, ServletException { // 获取文件上传控件 Part part = request.getPart(fileInputName); // 获取上传文件名 String fileName = getFileName(part); if (StringUtils.isBlank(fileName)) { return false; } // 获取上传文件的后缀名 String fileSuffix = getFileSuffix(fileName); // 生成保存文件路径 String savePath = destPath + File.separator + UUID.randomUUID().toString() + "." + fileSuffix; // 入上传文件 InputStream input = part.getInputStream(); FileOutputStream output = new FileOutputStream(savePath); int len = 0; byte[] buffer = new byte[1024]; while ((len = input.read(buffer)) != -1) { output.write(buffer, 0, len); } output.flush(); output.close(); input.close(); return true; } /** * 获取上传文件名 * @param part * @return */ private static String getFileName(Part part) { String contentDisposition = part.getHeader("content-disposition"); String[] items = contentDisposition.split(";"); for (String item : items) { if (item.trim().startsWith("filename")) { return item.substring(item.indexOf("=") + 2, item.length() - 1); } } return null; } /** * 获取文件名的后缀 * @param fileName 文件名 * @return 文件后缀 */ public static String getFileSuffix(String fileName) { return fileName.substring(fileName.lastIndexOf(".") + 1); } } ``` 其,`uploadFile`方法用于上传文件,`getFileName`方法用于从上传控件获取上传的文件名,`getFileSuffix`方法用于获取文件名的后缀。需要注意的是,这里使用了`Part`类来处理文件上传,需要在Servlet 3.0及以上版本使用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值