maven整合ssm实现用户退出登录,显示个人信息,修改密码,登录密码加密


1、退出登录

1、发送退出登录请求
<a href="logout.do">退出</a>
2、在controller类中处理退出登录请求

判断用户是否登录,用户是否登录是根据session中是否有用户的登录信息。

@RequestMapping("/logout.do")
public String logout(HttpSession session) {
	//清空session中保存的用户信息
	session.removeAttribute("emp");
	//跳转到登录页面
	return "login.html";
}

2、显示个人信息

<h5 class="media-heading mt5 mbn fw700 cursor">
	<a target="right" href="myinfo.jsp">${emp.ename}</a>
<span class="caret ml5"></span></h5>

3、修改密码

​ 1、在index.jsp发送跳转到修改密码界面
<script type="text/javascript">
	//添加编辑弹出层
	function updatePwd(title, id) {
		$.jq_Panel({
			title: title,
			iframeWidth: 500,
			iframeHeight: 300,
			url: "updatePwd.html"
		});
	}
</script>
2、在updatePwd.html页面发送修改密码请求,form表单中响应的target为index.jsp
<form action="updatePwd.do" target="index.jsp" class="am-form am-form-horizontal" method="post" style="padding-top:30px;" data-am-validator>
	<div class="am-form-group">
		<label for="user-name" class="am-u-sm-3 am-form-label">
			新密码 </label>
		<div class="am-u-sm-9">
			<input type="password" id="doc-vld-pwd-1" required placeholder="请输入新密码" name="epass"> <small>输入新密码。</small>
		</div>
	</div>
	<div class="am-form-group">
		<label for="user-name" class="am-u-sm-3 am-form-label">重复密码</label>
		<div class="am-u-sm-9">
			<input type="password" id="doc-vld-pwd-2" required placeholder="请输入重复密码" name="repass" data-equal-to="#doc-vld-pwd-1" required> <small>输入重复密码。</small>
		</div>
	</div>
	<div class="am-form-group">
		<div class="am-u-sm-9 am-u-sm-push-3">
			<input type="submit" id="btns" onclick="btnclose()" class="am-btn am-btn-success" value="修改密码" />
		</div>
	</div>
</form>
3、在dao接口写修改方法
@Update("update employee set epass = #{epass} where eid = #{eid}")
void updatePwd(Employee emp);
​ 4、在service方法中调用到方法
public void updatePwd(Employee emp) {
	dao.updatePwd(emp);
}
​ 5、在controller中处理数据
@RequestMapping("/updatePwd.do")
public String updatePwd(HttpSession session, String epass, String repass) {
	if(epass!=null && repass != null && epass.equals(repass)) {
		//修改密码
		Employee emp = (Employee)session.getAttribute("emp");//获取登录用户的信息
		emp.setEpass(epass);//修改密码
		employeeService.updatePwd(emp);//把修改的密码保存到数据库
		//更新session中用户的密码
		session.setAttribute("emp", emp);
	}
	return "index.jsp";
}

4、登录密码加密

​ 1、js中给密码加密
<!-- 导入md5加密要用到的js文件 -->
<script type="text/javascript" src="js/md5.js"></script>
<script type="text/javascript">
	md5("123456");
</script>
2、在java中进行加密
package com.hnjd.util;

import org.springframework.util.DigestUtils;

public class MD5Util {
	public static void main(String[] args) {
		String md5 = DigestUtils.md5DigestAsHex("123456".getBytes());
		System.out.println(md5);
	}
}

​ 3、在mysql中石油md5加密
update employee set epass = md5(epass) where eid = 1;
​ 4、对登录功能进行加密处理
@RequestMapping("/login.do")
public String login(String ename, String epass, HttpSession session) {
	Employee emp = employeeService.login(ename, DigestUtils.md5DigestAsHex(epass.getBytes()));
	if(emp!=null) {//登录成功
		//1、共享登录用户的信息(request、session、application) 
		session.setAttribute("emp", emp);
		//2、跳转到首页
		return "index.jsp";
	}
	//登录失败,重新登录
		
	return "login.html";
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM