前言

网上商城中的淘宝图片要显示在页面的前提是图片应该已经在数据库里面,那么怎么实现图片的上传功能呢,这就是今天要说的主题。

内容

需求:

商城后台需要添加图片文件,用来图片显示

解决方式:

Struts2框架中文件上传

*文件的条件

*提交方式为POST(文件大小不用限制),采用GET方式提交的文件大小有限制。

*表单上传项必须有一个name属性

*表单的enctype属性值需要时multipart/form-data

*前台显示:通过提交form表单提交表单数据,给form表单一个action路径

DEMO部分

  • 前台表单部分
<form id="userAction_save_do" name="Form1" action="${pageContext.request.contextPath}/adminProduct_save.action" method="post" enctype="multipart/form-data"><table><tr><td width="18%" align="center" bgColor="#f5fafe" class="ta_01">商品图片:</td><td class="ta_01" bgColor="#ffffff" colspan="3"><input type="file" name="upload"/></td></tr></table>
</form>
  • Action类
/** 说明:后台商品管理的action* 作者:周丽同*/
public class AdminProductAction extends ActionSupport implements ModelDriven<Product>{//模型驱动使用的对象private Product product = new Product();public Product getModel(){return product;}//注入商品的serviceprivate ProductService productService;public void setProductService(ProductService productService) {this.productService = productService;}//文件上传需要的参数:private File upload;//上传的文件private String uploadFileName;//接收文件上传的文件名private String uploadContext;//接收文件上传的文件的MIME的类型public void setUpload(File upload) {this.upload = upload;}public void setUploadFileName(String uploadFileName) {this.uploadFileName = uploadFileName;}public void setUploadContext(String uploadContext) {this.uploadContext = uploadContext;}//保存商品的方法public String save() throws IOException{//调用service完成保存操作product.setPdate(new Date());if(upload != null){//获得文件上传的磁盘绝对路径:String realPath = ServletActionContext.getServletContext().getRealPath("/products");//创建一个文件:File diskFile = new File(realPath+"//"+uploadFileName);//文件上传:FileUtils.copyFile(upload, diskFile);product.setImage("products/"+uploadFileName);}//将数据保存到数据库productService.save(product);//页面跳转return "saveSuccess";}
}
  • Service类
/**说明:商品的业务层代码*作者:周丽同*/
@Transactional
public class ProductService {//业务层保存商品的方法public void save(Product product) {// TODO Auto-generated method stubproductDao.save(product);}
}
  • Dao类
/** 说明:添加商品* 作者:周丽同*/
public class ProductDao extends HibernateDaoSupport {//DAO层保存商品的方法public void save(Product product) {// TODO Auto-generated method stubthis.getHibernateTemplate().save(product);}
}
  • Struts.xml
<!-- 配置添加商品的action -->
<action name="adminProduct_*" class="adminProductAction" method="{1}"><result name="saveSuccess" type="redirectAction">adminProduct_findAll.action?page=1</result>            <interceptor-ref name="PrivilegeInterceptor"></interceptor-ref><interceptor-ref name="defaultStack"></interceptor-ref>
</action>

小结

这些东西自己还得多多总结啊!

感谢您的宝贵时间······

转载于:https://www.cnblogs.com/zhoulitong/p/6412343.html

SSH—网上商城之商品图片文件上传相关推荐

  1. php是视频还是图片格式,php 视频、音频和图片文件上传,该如何解决

    PHP code<?php ob_start(); $uploadDir = dirname(__FILE__).'/upload'; //自动创建目录 if(!file_exists($upl ...

  2. php 上传本地图片到服务器上,PHP如何将图片文件上传到另外一台服务器上

    说,我有一个需求,就是一个临时功能.由于工作开发问题,我们有一个B项目,需要有一个商品添加的功能,涉及到添加商品内容,比如商品名字,商品描述,商品库存,商品图片等.后台商品添加的接口已经写完了,但是问 ...

  3. android webview 多文件上传,Android网页WebView图片文件上传的问题

    Android网页WebView图片文件上传的问题 发布时间:2020-07-13 22:48:15 来源:51CTO 阅读:5922 作者:拾荒者老大 在安卓下,webview上传图片点击是没用的, ...

  4. .Net Core 图片文件上传下载

    当下.Net Core项目可是如雨后春笋一般发展起来,作为.Net大军中的一员,我热忱地拥抱了.Net Core并且积极使用其进行业务的开发,我们先介绍下.Net Core项目下实现文件上传下载接口. ...

  5. Office文档上传后实时转换为PDF格式_图片文件上传后实时裁剪_实现在线预览Office文档

    Office文档上传后实时转换为PDF格式_图片文件上传后实时裁剪 前置条件 安装LibreOffice 安装OpenOffice 安装Unoconv 安装ImageMagick.x86_64 安装G ...

  6. springmvc图片文件上传接口

    springmvc图片文件上传 用MultipartFile文件方式传输 Controller package com.controller;import java.awt.image.Buffere ...

  7. axios文件上传 formdata_基于业务场景下的图片/文件上传方案总结

    图片/文件上传组是企业项目开发中必不可少的环节之一, 但凡涉及到用户模块的都会有图片/文件上传需求, 在很多第三方组件库(ant desigin, element ui)中它也是基础组件之一. 接下来 ...

  8. Java实现图片文件上传

    Java实现图片文件上传 Java实现后台图片上传,将上传图片的接口进行分层,便于维护接口. 接口部分(interface) 将接口分为单图片上传以及多图片上传 public interface Fi ...

  9. php中图片文件上传,显示缩略图

    php中图片文件上传,显示缩略图 htm代码块: <meta charset="utf-8" /> <style>img {max-width: 100px ...

最新文章

  1. VMware 如何通过现有虚拟机克隆新的虚拟机
  2. 全国计算机等级考试 架构师的设计模式
  3. boost::mp11::mp_replace_if_q相关用法的测试程序
  4. [Windows]查看运行进程的参数【wmic】
  5. 工厂方法 coding
  6. C#中控件如何设置透明色
  7. 网络设置巨形帧_网络工程师笔记:VLAN技术
  8. QuickBooks和Sage数据导出器
  9. [渝粤教育] 西南科技大学 经济数学2 在线考试复习资料
  10. totolink服务器未响应,TOTOLINK路由器设置后无法上网问题的解决方法
  11. 通过PCA算法对iris数据集进行降维处理
  12. 博途v14电脑要求_博图TIA V14版本完整体验加测试
  13. 从网站建设看中外差异
  14. android pin码解锁,解锁三星的3种方法:SIM网络解锁PIN码
  15. 神秘海域:顶级工作室“顽皮狗”成长史(上)
  16. tibco常用命令记录
  17. SSIS Execute SQL Task assign output 的两种方法
  18. 自动写稿机器人下载,写稿机器人有哪些,写稿机器人软件下载
  19. hadoop入门6:hadoop查询两两之间有共同好友,及他俩的共同好友都是谁
  20. 郑州、昆明、韶关等多地全面推行商品房买卖合同电子签约

热门文章

  1. 计算机视觉领域的一些牛人博客
  2. Android——Button的颜色
  3. 招商银行fintech 2021年机试
  4. oracle update单引号,Oracle学习笔记:update的字段中包括单引号
  5. Java 天气预报WebService
  6. knife4j文档请求异常(swagger页面无法渲染)
  7. Android开发精典案例60个
  8. html5设计礼品盒效果,HTML5/CSS3圣诞树和礼盒
  9. supervisor 工具的使用
  10. 文档/图片/视屏/音频在线格式转换工具(实用,免费)