如何在后台修改用户信息时能修改用户头像

2025-04-24 02:50:11
推荐回答(2个)
回答1:

 1.添加依赖jar包

commons-codec  1.10


commons-codec
commons-codec
1.10


2.测试类

@Test
public void test() throws Exception{
//MD5加密后的字符串
String str1 =
DigestUtils.md5Hex("123456");
String str2 =
DigestUtils.md5Hex("123456");
//System.out.println(str1);
//System.out.println(str2);
//同过消息摘要判断文件的内容是否相同
String fileStr1 =
DigestUtils.md5Hex(
new FileInputStream("pom.xml"));
String fileStr2 =
DigestUtils.md5Hex(
new FileInputStream("pom2.xml"));
System.out.println(fileStr1);
System.out.println(fileStr2);
}

3.结论:

同样的数据,消息摘要相同
消息摘要相同,来源于相同的数据

## salt 加盐

123456 + “你喜欢编程吗?”

## 把学习商城的密码进行加密处理

注册   登录   修改密码

##文件上传

1.导入jar包  commons-io; commons-fileupload


commons-io
commons-io
1.2



commons-fileupload
commons-fileupload
1.2


2.配置spring-mvc上传的上传组件解析器


class="org.springframework.web.multipart.commons.CommonsMultipartResolver">




3.定义上传功能的表单

enctype="multipart/form-data">






4.定义上传功能的控制器

@RequestMapping("/doUpload.do")
public String doUpload(MultipartFile file) throws IllegalStateException, IOException{

file.transferTo(
new File(
"d:/",file.getOriginalFilename()
));

return "redirect:../main/showIndex.do";
}    

##学子商城-头像上传

上传图片的页面

function getImage(){
//创建表单数据对象
var formData = new FormData();
//获取file节点
var fileNode = document.getElementById("iconPic");
formData.append("file",fileNode.files[0]);
$.ajax({
"url":"${pageContext.request.contextPath}/user/upload.do",
"data":formData,
"type":"POST",
"dataType":"json",
"contentType":false,
"processData":false,
"success":function(obj){
alert(obj.state+","+obj.message);
//实现页面显示图片。
var url =
window.URL.createObjectURL(fileNode.files[0]);
//在img标签中,定义src属性值为,url(通过files得到的第一file)
icon.src=url;
}

});
}


上传图片的控制器方法

在UserController 类定义方法
@
@
public ResponsResult upload(
@RequestParam("file") MultipartFile file){
1.file提供的方法,实现上传的功能
2.返回rr对象 ,1,“上传成功”
}

保存上传头像的数据

1)持久层UserMapper接口中定义方法

void updateImageById(@Param("image") String image,@Param("id") Integer id);

在UserMapper.xml文件中,编写update语句

update t_user
set image = #{image}
where id=#{id}

2)业务层

在IUserService接口中,定义方法,同持久层

在UserService类中,实现该方法,调用持久层方法

回答2:

顶一下,盼版主能现身讲解头像上传的表单道理 查看原帖>>