ssh文件上传
来源:互联网 发布:sql删除视图数据 编辑:程序博客网 时间:2024/05/16 14:11
一、准备工作:
先在maven下搭建一个ssh框架:
1、依赖包pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.iflytek</groupId> <artifactId>mavensshmzyw</artifactId> <version>0.0.1-SNAPSHOT</version><packaging>war</packaging><properties><spring.version>4.3.13.RELEASE</spring.version></properties><dependencies><!-- spring begin --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency><!-- spring end --><!-- hibernate begin --><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId><version>4.3.11.Final</version></dependency><!-- hibernate end --><!-- datasource pool begin --><dependency><groupId>com.mchange</groupId><artifactId>c3p0</artifactId><version>0.9.5.2</version></dependency><!-- datasource pool end --><!-- servlet.jar jstl-api.jar --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.0.1</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>javax.servlet.jsp-api</artifactId><version>2.3.1</version><scope>provided</scope></dependency><!-- servlet.jar jstl-api.jar end --><!-- jackson begin --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.9.2</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.2</version></dependency><!-- jackson end --><!-- fileupload begin --><dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.1</version></dependency><!-- fileupload end --><dependency><groupId>org.aspectj</groupId><artifactId>aspectjrt</artifactId><version>1.8.10</version></dependency><dependency><groupId>aopalliance</groupId><artifactId>aopalliance</artifactId><version>1.0</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.8.10</version></dependency></dependencies></project>
2、资源文件夹:
(1、)spring配置文件spring.xml:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd"><context:component-scan base-package="com.iflytek"><context:exclude-filter type="annotation"expression="org.springframework.stereotype.Controller" /></context:component-scan><context:property-placeholder location="classpath:jdbc.properties"/><bean id="dataSource"class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"><property name="driverClass" value="${jdbc.driverClassName}"></property><property name="jdbcUrl" value="${jdbc.url}"></property><property name="user" value="${jdbc.username}"></property><property name="password" value="${jdbc.password}"></property></bean><bean id="sessionFactory"class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"><property name="dataSource" ref="dataSource"></property><property name="packagesToScan" value="com.iflytek.domain"></property><property name="hibernateProperties"><props><prop key="hibernate.dialect">${hibernate.dialect}</prop><!-- <prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop> --><prop key="hibernate.show_sql">${hibernate.show_sql}</prop><prop key="hibernate.format_sql">${hibernate.format_sql}</prop></props></property></bean><!-- 配置声明式事务管理(采用注解的方式) --><bean id="txManager"class="org.springframework.orm.hibernate4.HibernateTransactionManager"><property name="sessionFactory" ref="sessionFactory"></property></bean><tx:annotation-driven transaction-manager="txManager" /></beans>
用到的jdbc配置文件jdbc.properties:
jdbc.driverClassName=oracle.jdbc.driver.OracleDriverjdbc.url=jdbc:oracle:thin:@172.16.130.35:1521:orcljdbc.username=wtyymmywjdbc.password=wtyymmywhibernate.dialect=org.hibernate.dialect.Oracle10gDialecthibernate.hbm2ddl.auto=createhibernate.show_sql=truehibernate.format_sql=true
(2、)springmvc配置文件springmvc.xml:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsdhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd"><mvc:annotation-driven /><!-- 静态资源文件不拦截 --><mvc:resources location="/assets/" mapping="/assets/**"></mvc:resources><context:component-scan base-package="com.iflytek.controller"><context:include-filter type="annotation"expression="org.springframework.stereotype.Controller" /></context:component-scan><beanclass="org.springframework.web.servlet.view.ContentNegotiatingViewResolver"><property name="viewResolvers"><list><bean class="org.springframework.web.servlet.view.BeanNameViewResolver" /><beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/jsp/" /><property name="suffix" value=".jsp" /></bean></list></property><property name="defaultViews"><list><beanclass="org.springframework.web.servlet.view.json.MappingJackson2JsonView" /></list></property></bean><bean id="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver"><property name="defaultEncoding" value="utf-8" /><property name="maxUploadSize" value="10485760000" /><property name="maxInMemorySize" value="40960" /></bean></beans>
3、web.xml:
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring.xml</param-value> </context-param> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>characterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping></web-app>
二、测试:
先在F盘下创建一个zt文件夹。
1、同步上传:
后台:
package com.iflytek.controller;import java.io.File;import java.io.IOException;import java.util.Date;import javax.servlet.http.HttpServletRequest;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.MultipartFile;@Controllerpublic class Text {@GetMapping("/test")public String goTest(){ return "test";}@PostMapping("/test")@ResponseBodypublic void upfile(@RequestParam("file1") MultipartFile[] files,HttpServletRequest req) throws IllegalStateException, IOException{System.out.println(req.getParameter("name"));System.out.println("文件上传");for(int i=0;i<files.length;i++){String path="F:/zt/"+new Date().getTime()+files[i].getOriginalFilename();File newfile=new File(path);files[i].transferTo(newfile);}}}
前台:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><form method="post" action="test" enctype="multipart/form-data"><input type="text" name="name"><input type="file" name="file1"><input type="file" name="file1"><input type="submit" value="提交"></form></body></html>
2、异步上传:
前台改为ajax:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title><script type="text/javascript" src="assets/jquery.min.js"></script><script>$(function(){$("form").submit(function(){ var formData = new FormData(); var dt=$("#name").val(); alert(dt); formData.append("name", dt); formData.append("file1", document.getElementById("file1").files[0]); formData.append("file1", document.getElementById("file2").files[0]); $.ajax({ url: "test", type: "POST", data: formData, /** *必须false才会自动加上正确的Content-Type */ contentType: false, /** * 必须false才会避开jQuery对 formdata 的默认处理 * XMLHttpRequest会对 formdata 进行正确的处理 */ processData: false, success: function (data) { } });return false;}) })</script></head><body><form method="post" ><input type="text" name="name" id="name"><input type="file" name="file1" id="file1"><input type="file" name="file1" id="file2"><input type="submit" value="提交"></form></body></html>
注:以上是上传至自定义的目录,现在如果上传到项目中,如放在assets下的img文件中。只需把后台的path改为:
String path="D:/javaweb"+req.getContextPath()+"/src/main/webapp/assets/img/"+new Date().getTime()+files[i].getOriginalFilename();
阅读全文
0 0
- SSH实现文件上传
- ssh 上传文件命令
- ssh整合文件上传
- ssh批量上传文件
- ssh上传文件错误
- SSH之文件上传
- SSH实现文件上传
- 使用ssh上传文件
- 【SSH】Struts2文件上传
- ssh实现文件上传
- SSH文件上传
- ssh-文件上传
- ssh文件的上传
- SSH--文件上传、删除
- SSH上传文件
- ssh文件上传
- 利用SSH 上传/下载文件
- SSH上传文件时报错
- 缓存之EHCache
- (七)面向对象
- js数组方法总结
- 盒子模型
- 《数学之美》XI笔记——如何确定网页和查询的相关性
- ssh文件上传
- lambda表达式
- 排序算法——选择排序
- 什么时候用created,什么时候用mounted
- layer用法
- 两个关于Windows 简短内核函数的还原
- Java ==和equals的qubie
- 【转】oracle里IW和WW 区别
- 汇编语言代码段和数据段