数据库中可以实现插入的密码字段自动转换为MD5存入数据库的功能吗?

解决方案 »

  1.   

    你可以使用触发器来实现。在INSERT或者UPDATE的时候,把相应字段的NEW值转换为MD5
      

  2.   


    用触发器实现的话,生成MD5的算法在SQL中怎么写?import java.security.MessageDigest;
    import java.security.NoSuchAlgorithmException;public class MD5Digest
    {    private MessageDigest md5 = null;
        private StringBuffer digestBuffer = null;    public MD5Digest()
            throws NoSuchAlgorithmException
        {
            md5 = MessageDigest.getInstance("MD5");
            digestBuffer = new StringBuffer();
        }    public String md5crypt(String s)
        {
            digestBuffer.setLength(0);
            byte abyte0[] = md5.digest(s.getBytes());
            for(int i = 0; i < abyte0.length; i++)
                digestBuffer.append(toHex(abyte0[i]));        return digestBuffer.toString();
        }
        public String toHex(byte one){
       String HEX="0123456789ABCDEF";
       char[] result=new char[2];
       result[0]=HEX.charAt((one & 0xf0) >> 4);
       result[1]=HEX.charAt(one & 0x0f);
       String mm=new String(result);
       return mm;
      }
    }