众筹网第二天

没有绑定context,直接报错

将斜体去除
注释功能
方案二:使用base标签

登录功能实现
狗日的,阿里云没有相关依赖,只有这一个,让我好辛苦


后端控制器

在springmvc.xml中配置



必须带有扩展名

记住我功能实现,SpringSecurity可以实现

${requestScope.MESSAGE}
显示消息

建立模型

时序图 Sequence Diagram
15节课直接忽略

密码加密程序代码
使用MD5

package com.pyq.utils;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Md5Util {
//指定加密算法
public static String md5(String source) {
String algorithm = "MD5";
//1.声明一个StringBuilder
StringBuilder builder = new StringBuilder();
//准备字符数组
char[] characters = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
//执行加密操作
try {
MessageDigest digest = MessageDigest.getInstance(algorithm);
//将要加密的明文转换成字节数组形式
byte[] inputBytes = source.getBytes();
//执行加密操作
byte[] outputBytes = digest.digest(inputBytes);
for(int i = 0;i<outputBytes.length;i++) {
//获取当前字节数值
byte b = outputBytes[i];
//获取低四位的值
int lowValue = b&15;
//右移四位和15做运算
int highValue = (b>>4)&15;
//高四位的数值为下标从字符数组中获取对应的字符
char highCharacter = characters[highValue];
char lowCharacter = characters[lowValue];
builder.append(highCharacter).append(lowCharacter);
}
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return builder.toString();
}
}
防止空指针异常

密码加入盐值 进行加密操作
登录功能实现

@RequestParam是获取页面内容

在service方法中实现代码


```java
@Override
public Admin login(String loginAcct, String userPswd) {
// 根据loginAcct查询数据库
AdminExample adminExample = new AdminExample();
adminExample.createCriteria().andLoginAcctEqualTo(loginAcct);
// 执行查询
List<Admin> list = adminMapper.selectByExample(adminExample);
if(!CrowdFundingUtils.collectionEffective(list)) {
// 如果查询结果集合无效,则直接返回null
return null;
}
// 获取唯一集合元素
Admin admin = list.get(0);
// 确认admin不为null
if(admin == null) {
return null;
}
// 比较密码
String userPswdDataBase = admin.getUserPswd();
String userPswdBroswer = CrowdFundingUtils.md5(userPswd);
if(Objects.equals(userPswdBroswer, userPswdDataBase)) {
// 如果两个密码相等那么说明登录能够成功,返回Admin对象
return admin;
}
return null;
}

登录效果总结

登录的辅助功能

后面直接类名.常量名直接可以使用
###配置异常映射机制
将异常和捕获的页面对应,捕获到对应类型异常后,跳转到对应的页面
springmvc.xml配置

异常处理对象

system-error.jsp

退出功能实现


登录检查拦截器实现,临时使用,后面使用安全框架



google_pan@163.com

浙公网安备 33010602011771号