文档章节

ssm框架下上传图片及其他信息

o
 osc_4nmshwhm
发布于 2018/08/06 17:02
字数 616
阅读 0
收藏 0

精选30+云产品,助力企业轻松上云!>>>

先引入这两个包:

<dependency>
	        <groupId>commons-fileupload</groupId>
			<artifactId>commons-fileupload</artifactId>
			<version>1.3.1</version>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>1.3.1</version>
		</dependency>

 

html:

注意:enctype="multipart/form-data"  这个要这样定义

<form id="form-register" action="${pageContext.request.contextPath}/user/upLoadPicture.do" method="post"  enctype="multipart/form-data" onsubmit="return check()" class="form-horizontal m-t">
<div class="form-group">
        <label class="col-sm-5 control-label">上传头像:</label>     
        <input type="file" name="file" id="file" style="height:30px;background-color:#ff9900;outline:none;border:none;width:10%;" onchange="uploadPic()"> 

</div>
<div class="form-group">
  <label class="col-sm-5 control-label">头像显示:</label>
   <div class="col-sm-4" >
      <img border="0" width="40" height="50" src="${user.picture}">
   </div>
</div>
  <input type="hidden" name="id" id="id" readonly="readonly" value="${user.id}" /> 
  <div class="form-group">
        <label class="col-sm-5 control-label"><span style="color: red;">*</span>用户名:</label>
        <div class="col-sm-4" >
            <input type="text" id="name" name="name"  class="form-control" placeholder="请输入用户名" onblur="checkName()"  maxlength="16"  value="${user.name}">
            <div id="user_prompt">用户名由4到16位(字母,数字,下划线,减号)</div>
        </div>
   </div> 
  <div class="form-group">
        <label class="col-sm-5 control-label">真实姓名:</label>
        <div class="col-sm-4">
            <input type="text" id="realName" name="realName" class="form-control" placeholder="请输入真实姓名"  value="${user.realName}">
        </div>
    </div> 
 
        	<div class="form-group">
            	<label class="col-sm-5 control-label">性别</label>
                <div class="col-sm-4">
                <c:if test="${user.gender=='男'}">
                   <div class="radio-box"  style="float:left">
					<input name="gender" type="radio" id="male" value="男" checked>
					<label for="sex-1">男</label>
				</div>
				<div class="radio-box"  style="float:left">
					<input name="gender" type="radio" id="female" value="女">
					<label for="sex-2">女</label>
				</div>
                </c:if>
                <c:if test="${user.gender=='女'}">
                   <div class="radio-box"  style="float:left">
					<input name="gender" type="radio" id="male" value="男">
					<label for="sex-1">男</label>
				</div>
				<div class="radio-box"  style="float:left">
					<input name="gender" type="radio" id="female" value="女" checked>
					<label for="sex-2">女</label>
				</div>
                </c:if>
                </div>
            </div> 
            <div class="form-group">
            	<label class="col-sm-5 control-label">民族</label>
                <div class="col-sm-4">
                  <select name="ethGro" class="form-control input-sm">
                         <option selected="selected" value="${user.ethGro}">${user.ethGro}</option>
                  </select>
                </div>
            </div>
        
<br>

    <div class="form-group" align=center>
      <div class="col-sm-8 col-sm-offset-2">
        <button class="btn btn-primary" type="submit">保存</button>
        </div>
    </div>
</form

 后台:

 

@RequestMapping(value="upLoadPicture.do",method = RequestMethod.POST)  
public String  upload(User user,HttpServletRequest request,ModelMap map) throws Exception{  
	  System.out.println(request.getParameter("name"));  
      //保存数据库的路径  
      String sqlPath = null;   
      //定义文件保存的本地路径  
      String localPath="D:\\File\\";  
      //创建文件 
  	  File dir=new File(localPath);
      if(!dir.exists()){
  		dir.mkdirs();
  	  }
      //定义 文件名  
      String filename=request.getParameter("name").toString();    
      if(!user.getFile().isEmpty()){    
          //生成uuid作为文件名称    
          String uuid = UUID.randomUUID().toString().replaceAll("-","");    
          //获得文件类型(可以判断如果不是图片,禁止上传)    
          String contentType=user.getFile().getContentType();    
          //获得文件后缀名   
          String suffixName=contentType.substring(contentType.indexOf("/")+1);  
          //得到 文件名  
          filename=uuid+"."+suffixName;   
          System.out.println(filename);  
          //文件保存路径  
          user.getFile().transferTo(new File(localPath+filename)); 
          sqlPath = "/images/"+filename;  
          System.out.println(sqlPath);  
          user.setPicture(sqlPath); 
          userService.updateUser(user);
      } 
      //把图片的相对路径保存至数据库  
      userService.updateUserNoPicture(user);  
      Page page=new Page();
      page.setCurrentPage(1);
      List<User> users = userService.getAllUser(page);
      page.setRows( userService.count());
  	  map.addAttribute("page",page);
  	  map.addAttribute("users",users);
  	  return "user_list";
}

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。

暂无文章

事务特性

ACID ACID : 原子性 - 一致性 - 隔离性 - 持久性 四大特性 原子性: 事务将一组逻辑单元看成 一个操作 , 原子是最小单位不可再分割 一致性: 事务的前后 数据的应该保持一致 隔离性(isolation)...

osc_3grma05a
27分钟前
7
0
微信小程序实现分享到朋友圈

2020年7月8日。微信小程序推出分享朋友圈,所以笔者先来试一下,没想到一下搞成了 。。 按照微信官方文档得第一步,我们需要设置允许发给朋友,在小程序得生命周期里面这样写。 首先,把你的...

osc_a8r2ub9u
28分钟前
7
0
小程序分享到朋友圈 H5打开小程序H5打开APP 「wx-open-launch-weapp」 「wx-open-launch-app」

前言 微信更新了两个功能块 简单使用了下 给大家写篇文章说说 避免走弯路 欧力给! 1.小程序分享到朋友圈 //在页面的js里设置下就ok onShareTimeline(){ return { title: "微视宝...

osc_dwuu5jqk
29分钟前
25
0
解决死锁——哲学家就餐

解决方法有: 1、更改为单个锁 2、将锁排序 产生死锁的原因 产生死锁的原因是一个线程在持有一把锁时又去申请另外一把锁,也就是锁嵌套。而另一把锁被另外一个线程持有。 举个广为人知的例子...

osc_2qah5avr
31分钟前
16
0
面试官:软件测试没搞懂这些,哪里来的自信投简历? 刁钻问得高频的面试题(含答案)

问得高频的问题(含答案) 软件的生命周期(prdctrm) 计划阶段(planning)-〉需求分析(requirement)-〉设计阶段(design)-〉编码(coding)->测试(testing)->运行与维护(running maintrnacne) 测试...

测试人追风
31分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部