background image

  用户注册的时候,密码将被工具

MD5 加密,然后持久化到数据库;Md5 加密的数据,

原则上是不能够反向还原的,所以在比对数据的时候,只能把要比对的数据重新通过这个
方法加密,然后进行数据的比对。登录的时候需要把输入框中的字符串与数据库中的密码比
对,我们不能直接拿来比,只能把输入框中的数据也通过

md5 加密后,然后比较两者,最

后 得 出 一 个 布 尔 值 , 也 就 是 真 假

[3] 。 如 密 码 123123 经 过 md5 方 法 加 密 得 到 的 是

Qpf0SxOVUjUkWySXOZ16kw==。 
  对用户的密码进行

MD5 加密的代码如下所示。 

   

public  static  String  EncoderByMd5(String  str)  throws  NoSuchAlgorithmException, 

UnsupportedEncodingException{ 
  

//确定计算方法 

  

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

  

BASE64Encoder base64en = new BASE64Encoder(); 

  

//加密后的字符串 

  

String newstr=base64en.encode(md5.digest(str.getBytes("utf-8"))); 

  

return newstr; 

  

  

4、审批业务流程实现 

  审批分级:在素质拓展活动表

activityt 中设置三个表示各级审批状态特征的字段:班

级审批标识字段

(acclass)、系级审批标识字段(acfaculty)、院级审批标识字段(acacademy)。这些

字段的取值及含义分为三种:

2 为审批通过,1 为正在审批,0 为未审批。另外,在素质拓

展活动表

activityt 中还有一个审批锁定管理员字段 alock,字段关联用户的 id。这样我们由班

级审批标识字段

+系级审批标识字段+院级审批标识字段组成的标识各种状态的特征码如下:

 
  

A 待审批特征:000 

  

B 班级待审批=待审批(000)+班待审批(100) 

  

C 班级审批=班审批(200)+系待审批(210)+系审批(220)+院待审批(221)+院审批(222) 

  

D 系级待审批=待审批(000)+班待审批(100)+班审批(200)+系待审批(210) 

  

E 系级审批=系审批(222)+院待审批(221)+院审批(222) 

  

F 院级待审批=待审批(000)+班待审批(100)+班审批(200)+系待审批(210)+系审批(220)+

院待审批

(221) 

  

G 院级审批=院审批(222) 

  新添加一条拓展活动记录数据,审批状态处于未审批状态,也就是

000 特征码,班级

管理员可以进行审批,如果班级管理员点击审批连接后,数据状态改为

100,也就是锁定

这条数据,不能让其他管理员审批,直到释放审批或者审批完成;审批完成状态码显示
200,也就是班级审批完成;接下来将是系级管理人员来审批这条数据,如果系级管理人员
点击审批连接,将把特征码改为

210,同样锁定,直到释放或者审批完成,审批通过特征

码改为

220;最后面数据将呈交给院级管理员审核,点击连接,数据特征码为 221,知道释

放或者完成院级的审批,审批数据最终的特征码改为

222,直到此活动数据审批完成,代

码实现如下面所示。

 

  

#寻找需要审批的数据 

  

public List findUnAct(Integer uid,Integer pid) 

  

if(pid==2){//得到班级管理可以审批的数据 

  

sql.append("select * from activityt where uid in(select uid from users where ctid=(select ctid 

from users where uid=");