java页面登陆密码_java实现页面登陆2 密码加密

java实现页面登陆2 密码加密

userDao中修改的:

public boolean getSelect(String userName, String password) {

boolean flag = false;

//String sql1 = "select * from login where userName='" + userName + "' and password='" + password + "'";

Connection conn = getCon();

//PreparedStatement pst = null;

try {

//pst = (PreparedStatement) conn.prepareStatement(sql1);

//ResultSet rs = pst.executeQuery();

///

PreparedStatement pst2 = null;

String sql2 = "select * from login";

pst2 = (PreparedStatement) conn.prepareStatement(sql2);

ResultSet resultSet = pst2.executeQuery();

while (resultSet.next()) {

String name = resultSet.getString("username");

String pass = MD5Util.getEncryption(resultSet.getString("password"));

if (password.equals(pass) && userName.equals(name)) {

flag = true;

} else {

System.out.println("用户名或密码错误");

flag = false;

}

}

///

/*if (rs.next()) {

if (userName.equals(rs.getObject("username"))) {

flag = true;

} else{

System.out.println("用户名错误,区分大小写");

flag = false;

}

}*/

if (resultSet != null) {

resultSet.close();

}

if (pst2 != null) {

pst2.close();

}

if (conn != null) {

conn.close();

}

} catch (Exception e) {

}

return flag;

}

LoginServlet中添加:

String password = MD5Util.getEncryption(request.getParameter("password"));

MD5Util加密工具类:

public class MD5Util {

private MD5Util() {

}

public static String getEncryption(String originString)

throws UnsupportedEncodingException {

String result = "";

if (originString != null) {

try {

// 指定加密的方式为MD5

MessageDigest md = MessageDigest.getInstance("MD5");

// 进行加密运算

byte bytes[] = md.digest(originString.getBytes("ISO8859-1"));

for (int i = 0; i < bytes.length; i++) {

// 将整数转换成十六进制形式的字符串 这里与0xff进行与运算的原因是保证转换结果为32位

String str = Integer.toHexString(bytes[i] & 0xFF);

if (str.length() == 1) {

str += "F";

}

result += str;

}

} catch (NoSuchAlgorithmException e) {

e.printStackTrace();

}

}

return result;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值