SSM整合 上传下载之添加商品

上传下载细节:

导入xml配置文件!!

一、建表:

 1 DROP TABLE IF EXISTS `t_house`;
 2 CREATE TABLE `t_house` (
 3   `h_id` int(11) NOT NULL AUTO_INCREMENT,
 4   `h_name` varchar(64) NOT NULL,
 5   `h_rect` double(10,2) NOT NULL,
 6   `h_date` date NOT NULL,
 7   `h_loc1` varchar(255) NOT NULL,
 8   `h_loc2` varchar(255) NOT NULL,
 9   `h_img` varchar(120) NOT NULL,
10   `h_userId` int(11) NOT NULL,
11   PRIMARY KEY (`h_id`)
12 ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

二、首先注入maven依赖:

pom.xml

 1 <dependency>
 2       <groupId>org.projectlombok</groupId>
 3       <artifactId>lombok</artifactId>
 4       <version>1.18.4</version>
 5       <scope>provided</scope>
 6     </dependency>
 7     <!--文件上传下载 -->
 8     <dependency>
 9       <groupId>commons-io</groupId>
10       <artifactId>commons-io</artifactId>
11       <version>2.4</version>
12     </dependency>
13     <!--用来帮助进行IO功能开发 -->
14     <dependency>
15       <groupId>commons-fileupload</groupId>
16       <artifactId>commons-fileupload</artifactId>
17       <version>1.3</version>
18     </dependency>

三、添加配置:

springmvc.xml

1 <!-- 多部分文件上传 M kb byte-->
2     <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
3         <property name="maxUploadSize" value="104857600"/>
4         <property name="defaultEncoding" value="UTF-8"></property>
5     </bean>

四、编辑插入语句:

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 3 <mapper namespace="com.etc.dao.HouseDAO">
 4     <insert id="add">
 5  INSERT INTO `t_house` (
 6     `h_name`,
 7     `h_rect`,
 8     `h_date`,
 9     `h_loc1`,
10     `h_loc2`,
11     `h_img`,
12     `h_userId`
13 )
14 VALUES
15     (
16         #{hName},
17         #{hRect},
18         #{hDate},
19         #{hLoc1},
20         #{hLoc2},
21         #{hImg},
22         #{userId}
23     );
24 </insert>
25
26
27 </mapper>

五、建立实体类:

HouseVO :
 1 package com.etc.Vo;
 2
 3 import lombok.AllArgsConstructor;
 4 import lombok.Data;
 5 import lombok.NoArgsConstructor;
 6 import org.springframework.format.annotation.DateTimeFormat;
 7 import org.springframework.web.multipart.MultipartFile;
 8
 9 import java.util.Date;
10
11 @Data
12 @AllArgsConstructor
13 @NoArgsConstructor
14 public class HouseVO {
15     private String title;
16     private Double floorage;
17     @DateTimeFormat(pattern = "yyyy-MM-dd")
18     private Date houseDate;
19     private String districtId;
20     private String streetId;
21     private MultipartFile hImg;
22 }
House :
 1 package com.etc.entity;
 2
 3 import lombok.AllArgsConstructor;
 4 import lombok.Data;
 5 import lombok.NoArgsConstructor;
 6
 7 import java.util.Date;
 8
 9 @Data
10 @AllArgsConstructor
11 @NoArgsConstructor
12 public class House {
13     private Integer hId;
14     private String hName;
15     private Double hRect;
16     private Date hDate;
17     private String hLoc1;
18     private String hLoc2;
19     private String hImg;
20     private int userId;
21 }
HouseConverter :
 1 package com.etc.converter;
 2
 3 import com.etc.Vo.HouseVO;
 4 import com.etc.entity.House;
 5
 6 public class HouseConverter {
 7     public static House convert(HouseVO houseVO, String img,int id) {
 8         House house = new House();
 9         house.setHName(houseVO.getTitle());
10         house.setHRect(houseVO.getFloorage());
11         house.setHDate(houseVO.getHouseDate());
12         house.setHLoc1(houseVO.getDistrictId());
13         house.setHLoc2(houseVO.getStreetId());
14         house.setHImg(img);
15         house.setUserId(id);
16         return house;
17     }
18 }

六、编写接口:

1 package com.etc.dao;
2
3 import com.etc.entity.House;
4
5 public interface HouseDAO {
6
7     void add(House house);
8
9 }

七、编写service:

 1 package com.etc.servise;
 2
 3 import com.etc.dao.HouseDAO;
 4 import com.etc.entity.House;
 5 import org.springframework.beans.factory.annotation.Autowired;
 6 import org.springframework.stereotype.Service;
 7
 8 @Service
 9 public class HouseService {
10
11     @Autowired
12     private HouseDAO houseDAO;
13
14     public void add(House house){
15         houseDAO.add(house);
16     }
17
18
19 }

八、编写控制层:

 1 package com.etc.controller;
 2
 3 import com.etc.Vo.HouseVO;
 4 import com.etc.converter.HouseConverter;
 5 import com.etc.entity.House;
 6 import com.etc.entity.User;
 7 import com.etc.servise.HouseService;
 8 import org.springframework.beans.factory.annotation.Autowired;
 9 import org.springframework.stereotype.Controller;
10 import org.springframework.ui.Model;
11 import org.springframework.web.bind.annotation.RequestMapping;
12
13 import javax.servlet.http.HttpSession;
14 import java.io.File;
15 import java.io.IOException;
16
17 @Controller
18 @RequestMapping("/house")
19 public class HouseController {
20
21     public static final String UPLOAD_DIR="D:\\images\\";
22
23     @Autowired
24     private HouseService houseService;
25
26     @RequestMapping("/add")
27     public String add(HouseVO houseVO, Model model, HttpSession session) throws IOException {
28         //获取session中的user对象
29         User user=(User) session.getAttribute("user");
30         //拿到user对象的id
31         int userId=user.getUserId();
32         //设置文件上传的路径
33         houseVO.getHImg().transferTo(new File(UPLOAD_DIR+houseVO.getHImg().getOriginalFilename()));
34         //建立house对象
35         House house=HouseConverter.convert(houseVO,houseVO.getHImg().getOriginalFilename(),userId);
36         //调用添加方法
37         houseService.add(house);
38         return "list";
39     }
40 }

九、页面展示:

fabu.jsp

原文地址:https://www.cnblogs.com/LiuOOP/p/11251833.html

时间: 2024-10-25 11:48:38

SSM整合 上传下载之添加商品的相关文章

JAVA HDFS 整合 上传 下载 删除

前三步都可也跳过  直接第四步上代码: 希望对你们有所帮助!

SSM框架-SpringMVC 实例文件上传下载

SSM框架-SpringMVC 实例文件上传下载 2017-04-17 09:38 4497人阅读 评论(6) 收藏 举报  分类: java基础(3)  目录(?)[+] 目录(?)[+] 林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 本文详细讲解了SpringMVC实例单文件上传.多文件上传.文件列表显示.文件下载. 本文工程免费下载 一.新建一个Web工程,导入相关的包 springmvc的包+commons-fileupload

fastDFS与java整合文件上传下载

准备 下载fastdfs-client-java源码 源码地址 密码:s3sw 修改pom.xml 第一个plugins是必需要的,是maven用来编译的插件,第二个是maven打源码包的,可以不要. <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactI

Android开发中使用七牛云存储进行图片上传下载

Android开发中的图片存储本来就是比较耗时耗地的事情,而使用第三方的七牛云,便可以很好的解决这些后顾之忧,最近我也是在学习七牛的SDK,将使用过程在这记录下来,方便以后使用. 先说一下七牛云的存储原理,上面这幅图片是官方给出的原理图,表述当然比较清晰了.可以看出,要进行图片上传的话可以分为五大步: 1. 客户端用户登录到APP的账号系统里面: 2. 客户端上传文件之前,需要向业务服务器申请七牛的上传凭证,这个凭证由业务服务器使用七牛提供的服务端SDK生成: 3. 客户端使用七牛提供的客户端S

Struts2学习之文件上传/下载&amp;ValueStack(三)

简介 今天是学习Struts2第三天,也算struts2准备前奏告一段落,提升部分只能在后期深入了解,多看源码,多参阅资料.今天所学的知识点文件上传.下载/ValueStack&OGNL/Struts2标签 文件上传/下载 文件上传简介 a). 企业常用文件上传技术 : jspSmartUpload(主要应用 JSP model1 时代) . fileupload (Apache commons项目中一个组件). Servlet3.0 集成文件上传 Part类 b). Struts2 对文件上传

高可用的Spring FTP上传下载工具类(已解决上传过程常见问题)

前言 最近在项目中需要和ftp服务器进行交互,在网上找了一下关于ftp上传下载的工具类,大致有两种. 第一种是单例模式的类. 第二种是另外定义一个Service,直接通过Service来实现ftp的上传下载. 这两种感觉都有利弊. 第一种实现了代码复用,但是配置信息全需要写在类中,维护比较复杂. 第二种如果是spring框架,可以通过propertis文件,动态的注入配置信息,但是又不能代码复用. 所以我打算自己实现一个工具类,来把上面的两种优点进行整合.顺便把一些上传过程中一些常见的问题也给解

java web 文件上传下载

文件上传下载案例: 首先是此案例工程的目录结构: 处理上传: FileUploadServlet.java 1 package fnz.fileUploadTest; 2 3 import java.io.File; 4 import java.io.IOException; 5 import java.io.InputStream; 6 import java.io.PrintWriter; 7 import java.text.SimpleDateFormat; 8 import java.

向云服务器上传下载文件方法汇总(转)

转载于:https://yq.aliyun.com/articles/64700 摘要: 一.向Windows服务器上传下载文件方式 方法有很多种,此处介绍远程桌面的本地资源共享方法. 1.运行mstsc,连接远程桌面的时候,点"选项>>" 2."本地资源"-->详细信息. 3."磁盘驱动器"前面打钩. 一.向Windows服务器上传下载文件方式 方法有很多种,此处介绍远程桌面的本地资源共享方法. 1.运行mstsc,连接远程桌

艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输)(一)

艺萌TCP文件上传下载及自动更新系统介绍(TCP文件传输) 该系统基于开源的networkComms通讯框架,此通讯框架以前是收费的,目前已经免费并开元,作者是英国的,开发时间5年多,框架很稳定. 项目地址:http://www.51aspx.com/code/MSDCArtMengFileUpload 咨询qq:286275658 演示程序下载地址:http://pan.baidu.com/s/1geVfmcr 服务器端运行效果图: 服务器端配置文件: <?xml version="1.