




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于S2SH架构的课程设计实训教学示例项目客户关系管理CRM系统实现项目中的工作人员系统登录功能111实现项目中的工作人员系统登录功能1、在项目中新增一个目录STAFFINFOMANAGE在该目录STAFFINFOMANAGE中主要包括项目中的工作人员系统登录、注册、修改密码和修改注册信息等功能页面。2、将DREAMWEAVER与MYECLIPSE相互整合(1)在DREAMWEAVER中新建一个WEB项目站点,名称为BLUEDREAMCRM并将该站点所对应的项目目录指向在MYECLIPSE中所创建的项目的WEBROOT目录。(2)BLUEDREAMCRM站点的最终创建结果如下3、在该目录STAFFINFOMANAGE中添加一个登录页面STAFFINFOLOGINJSP(1)在目录STAFFINFOMANAGE中添加一个登录页面STAFFINFOLOGINJSP(2)STAFFINFOLOGINJSP登录页面的内容如下工作人员登录页面您的帐号您的密码STAFFINFOLOGINJSP页面中的登录表单在项目的后期需要进行扩展,目前主要是实现项目的前、后的环境整合和连接。(3)STAFFINFOLOGINJSP页面静态预览的结果4、为登录表单提供一个ACTIONFORM(表单对象)STAFFINFOACTIONFORM(1)类名称为STAFFINFOACTIONFORM,包名称为COMPX1987BLUEDREAMCRMACTIONFORM(2)在该类中添加如下的成员属性,并提供GET/SET方法PRIVATESTRINGLOGINNAMENULLPRIVATESTRINGLOGINPASSWORDNULL(3)STAFFINFOACTIONFORM的程序代码PACKAGECOMPX1987BLUEDREAMCRMACTIONFORMPUBLICCLASSSTAFFINFOACTIONFORMPUBLICSTRINGGETLOGINNAMERETURNLOGINNAMEPUBLICVOIDSETLOGINNAMESTRINGLOGINNAMETHISLOGINNAMELOGINNAMEPUBLICSTRINGGETLOGINPASSWORDRETURNLOGINPASSWORDPUBLICVOIDSETLOGINPASSWORDSTRINGLOGINPASSWORDTHISLOGINPASSWORDLOGINPASSWORDPUBLICSTRINGGETCONFIRMPASSWORDRETURNCONFIRMPASSWORDPUBLICVOIDSETCONFIRMPASSWORDSTRINGCONFIRMPASSWORDTHISCONFIRMPASSWORDCONFIRMPASSWORDPUBLICSTRINGGETNEWLOGINPASSWORDRETURNNEWLOGINPASSWORDPUBLICVOIDSETNEWLOGINPASSWORDSTRINGNEWLOGINPASSWORDTHISNEWLOGINPASSWORDNEWLOGINPASSWORDPUBLICSTRINGGETVERIFYCODERETURNVERIFYCODEPUBLICVOIDSETVERIFYCODESTRINGVERIFYCODETHISVERIFYCODEVERIFYCODEPUBLICSTRINGGETSTAFFREALNAMERETURNSTAFFREALNAMEPUBLICVOIDSETSTAFFREALNAMESTRINGSTAFFREALNAMETHISSTAFFREALNAMESTAFFREALNAMEPUBLICSTRINGGETSTAFFWORKNORETURNSTAFFWORKNOPUBLICVOIDSETSTAFFWORKNOSTRINGSTAFFWORKNOTHISSTAFFWORKNOSTAFFWORKNOPUBLICSTRINGGETSTAFFUNITNAMERETURNSTAFFUNITNAMEPUBLICVOIDSETSTAFFUNITNAMESTRINGSTAFFUNITNAMETHISSTAFFUNITNAMESTAFFUNITNAMEPUBLICSTRINGGETSTAFFPHOTOIMAGEFILERETURNSTAFFPHOTOIMAGEFILEPUBLICVOIDSETSTAFFPHOTOIMAGEFILESTRINGSTAFFPHOTOIMAGEFILETHISSTAFFPHOTOIMAGEFILESTAFFPHOTOIMAGEFILEPUBLICSTRINGGETYEARSELECTRETURNYEARSELECTPUBLICVOIDSETYEARSELECTSTRINGYEARSELECTTHISYEARSELECTYEARSELECTPUBLICSTRINGGETMONTHSELECTRETURNMONTHSELECTPUBLICVOIDSETMONTHSELECTSTRINGMONTHSELECTTHISMONTHSELECTMONTHSELECTPUBLICSTRINGGETDAYSELECTRETURNDAYSELECTPUBLICVOIDSETDAYSELECTSTRINGDAYSELECTTHISDAYSELECTDAYSELECTPUBLICSTRINGGETPROVINCENAMESELECTTAGIDRETURNPROVINCENAMESELECTTAGIDPUBLICVOIDSETPROVINCENAMESELECTTAGIDSTRINGPROVINCENAMESELECTTAGIDTHISPROVINCENAMESELECTTAGIDPROVINCENAMESELECTTAGIDPUBLICSTRINGGETCITYNAMESELECTTAGIDRETURNCITYNAMESELECTTAGIDPUBLICVOIDSETCITYNAMESELECTTAGIDSTRINGCITYNAMESELECTTAGIDTHISCITYNAMESELECTTAGIDCITYNAMESELECTTAGIDPUBLICSTRINGGETCOUNTRYNAMESELECTTAGIDRETURNCOUNTRYNAMESELECTTAGIDPUBLICVOIDSETCOUNTRYNAMESELECTTAGIDSTRINGCOUNTRYNAMESELECTTAGIDTHISCOUNTRYNAMESELECTTAGIDCOUNTRYNAMESELECTTAGIDPUBLICINTGETISAUTOLOGINFLAGRETURNISAUTOLOGINFLAGPUBLICVOIDSETISAUTOLOGINFLAGINTISAUTOLOGINFLAGTHISISAUTOLOGINFLAGISAUTOLOGINFLAGPUBLICINTGETISMEMORYUSERNAMEFLAGRETURNISMEMORYUSERNAMEFLAGPUBLICVOIDSETISMEMORYUSERNAMEFLAGINTISMEMORYUSERNAMEFLAGTHISISMEMORYUSERNAMEFLAGISMEMORYUSERNAMEFLAGPUBLICINTGETDEPARTMENTTYPETAGIDRETURNDEPARTMENTTYPETAGIDPUBLICVOIDSETDEPARTMENTTYPETAGIDINTDEPARTMENTTYPETAGIDTHISDEPARTMENTTYPETAGIDDEPARTMENTTYPETAGIDPRIVATESTRINGNEWLOGINPASSWORDNULLPRIVATESTRINGVERIFYCODENULLPRIVATESTRINGLOGINPASSWORDNULLPRIVATESTRINGCONFIRMPASSWORDNULLPRIVATESTRINGLOGINNAMENULLPRIVATESTRINGSTAFFREALNAMENULLPRIVATESTRINGSTAFFWORKNONULLPRIVATESTRINGSTAFFUNITNAMENULLPRIVATESTRINGSTAFFPHOTOIMAGEFILENULLPRIVATESTRINGYEARSELECTNULLPRIVATESTRINGMONTHSELECTNULLPRIVATESTRINGDAYSELECTNULLPRIVATESTRINGPROVINCENAMESELECTTAGIDNULLPRIVATESTRINGCITYNAMESELECTTAGIDNULLPRIVATESTRINGCOUNTRYNAMESELECTTAGIDNULLPRIVATEINTISAUTOLOGINFLAGPRIVATEINTISMEMORYUSERNAMEFLAGPRIVATEINTDEPARTMENTTYPETAGIDPRIVATEINTLOGINUSER_IDPUBLICINTGETLOGINUSER_IDRETURNLOGINUSER_IDPUBLICVOIDSETLOGINUSER_IDINTLOGINUSERIDLOGINUSER_IDLOGINUSERIDPUBLICSTAFFINFOACTIONFORM5、添加一个对工作人员信息进行管理的ACTION(1)类名称为STAFFINFOACTION,包名称为COMPX1987BLUEDREAMCRMACTION,并且继承COMOPENSYMPHONYXWORK2ACTIONSUPPORT类(2)编程该ACTION类PACKAGECOMPX1987BLUEDREAMCRMACTIONIMPORTJAVAXSERVLETHTTPHTTPSERVLETREQUESTIMPORTJAVAXSERVLETHTTPHTTPSERVLETRESPONSEIMPORTJAVAXSERVLETHTTPHTTPSESSIONIMPORTORGAPACHESTRUTS2SERVLETACTIONCONTEXTIMPORTCOMOPENSYMPHONYXWORK2ACTIONSUPPORTIMPORTCOMPX1987BLUEDREAMCRMACTIONFORMSTAFFINFOACTIONFORMIMPORTCOMPX1987BLUEDREAMCRMDAOINTERSTAFFINFODAOINTERFACEIMPORTCOMPX1987BLUEDREAMCRMDAOPOSTAFFINFOPOIMPORTCOMPX1987BLUEDREAMCRMUTILMD5JAVABEANIMPORTCOMPX1987BLUEDREAMCRMUTILREADWRITECOOKIEUTILPUBLICCLASSSTAFFINFOACTIONEXTENDSACTIONSUPPORTPRIVATESTAFFINFOACTIONFORMONESTAFFINFOACTIONFORMNULLPUBLICSTAFFINFOACTIONFORMGETONESTAFFINFOACTIONFORMRETURNONESTAFFINFOACTIONFORMPUBLICVOIDSETONESTAFFINFOACTIONFORMSTAFFINFOACTIONFORMONESTAFFINFOACTIONFORMTHISONESTAFFINFOACTIONFORMONESTAFFINFOACTIONFORMPUBLICSTAFFINFOACTIONPUBLICSTRINGDOUPDATESTAFFREGISTER_SAVERESULT/将表单对象中的相关的成员属性转存到PO对象/STAFFINFOPOONESTAFFINFOPONEWSTAFFINFOPOSTRINGSTAFFCOMEFROMONESTAFFINFOACTIONFORMGETPROVINCENAMESELECTTAGID“省“ONESTAFFINFOACTIONFORMGETCITYNAMESELECTTAGIDONESTAFFINFOACTIONFORMGETCOUNTRYNAMESELECTTAGIDONESTAFFINFOPOSETSTAFFCOMEFROMSTAFFCOMEFROMSTRINGSTAFFBIRTHDATEONESTAFFINFOACTIONFORMGETYEARSELECT“年“ONESTAFFINFOACTIONFORMGETMONTHSELECT“月“ONESTAFFINFOACTIONFORMGETDAYSELECT“日“ONESTAFFINFOPOSETSTAFFBIRTHDATESTAFFBIRTHDATEONESTAFFINFOPOSETSTAFFPHOTOIMAGEFILEONESTAFFINFOACTIONFORMGETSTAFFPHOTOIMAGEFILEONESTAFFINFOPOSETSTAFFUNITNAMEONESTAFFINFOACTIONFORMGETSTAFFUNITNAMEONESTAFFINFOPOSETLOGINUSER_USERNAMEONESTAFFINFOACTIONFORMGETLOGINNAME/下面的代码是获得没有加密之前的密码(也就是明文的密码)/STRINGORIGNALPASSWORDONESTAFFINFOACTIONFORMGETLOGINPASSWORD/下面对明文的密码进行加密转换,最终在数据库表中存储的密码为密文/ONESTAFFINFOPOSETLOGINUSER_USERPASSWORDNEWMD5JAVABEANGETKEYBEANOFSTRORIGNALPASSWORDSTRINGDEPARTMENTNAMENULLSWITCHONESTAFFINFOACTIONFORMGETDEPARTMENTTYPETAGIDCASE0DEPARTMENTNAME“市场部“BREAKCASE1DEPARTMENTNAME“开发部“BREAKCASE2DEPARTMENTNAME“技术支持部“BREAKCASE3DEPARTMENTNAME“产品部“BREAKCASE4DEPARTMENTNAME“系统维护部“BREAKONESTAFFINFOPOSETLOGINUSER_DEPARTMENTNAMEDEPARTMENTNAMEONESTAFFINFOPOSETSTAFFREALNAMEONESTAFFINFOACTIONFORMGETSTAFFREALNAMEONESTAFFINFOPOSETSTAFFWORKNOONESTAFFINFOACTIONFORMGETSTAFFWORKNO/注意一定要将通过隐藏表单字段所传递的主键ID缓存到PO对象中/ONESTAFFINFOPOSETLOGINUSER_IDONESTAFFINFOACTIONFORMGETLOGINUSER_IDBOOLEANUPDATERESULTSTAFFINFODAOIMPLEUPDATESTAFFREGISTERONESTAFFINFOPORETURN“UPDATESTAFFREGISTERSUCCESS“PUBLICSTRINGDOUPDATESTAFFREGISTER_SYSTEMLOGIN/下面的代码是获得没有加密之前的密码(也就是明文的密码)/STRINGORIGNALPASSWORDONESTAFFINFOACTIONFORMGETLOGINPASSWORD/下面对明文的密码进行加密转换,最终在数据库表中存储的密码为密文/STRINGFINALPASSWORDNEWMD5JAVABEANGETKEYBEANOFSTRORIGNALPASSWORDSTRINGDEPARTMENTNAMENULLSWITCHONESTAFFINFOACTIONFORMGETDEPARTMENTTYPETAGIDCASE0DEPARTMENTNAME“市场部“BREAKCASE1DEPARTMENTNAME“开发部“BREAKCASE2DEPARTMENTNAME“技术支持部“BREAKCASE3DEPARTMENTNAME“产品部“BREAKCASE4DEPARTMENTNAME“系统维护部“BREAKSTAFFINFOPORETURNSTAFFINFOPOSTAFFINFODAOIMPLEQUERYONESTAFFINFOONESTAFFINFOACTIONFORMGETLOGINNAME,FINALPASSWORD,DEPARTMENTNAME/识别身份验证是否正确,如果身份验证不正确,则再次返回到身份验证的页面,进行二次验证/IFRETURNSTAFFINFOPONULLRETURN“LOGINFAILURE“/将所获得的身份信息缓存到REQUEST请求对象中/HTTPSERVLETREQUESTREQUESTSERVLETACTIONCONTEXTGETREQUESTREQUESTSETATTRIBUTE“RETURNSTAFFINFOPOKEY“,RETURNSTAFFINFOPO/然后再跳转到修改注册信息的页面/RETURN“UPDATESTAFFREGISTER“/下面的方法是响应工作人员登录页面/PUBLICSTRINGDOSTAFFLOGINSTRINGDEPARTMENTNAMENULLSWITCHONESTAFFINFOACTIONFORMGETDEPARTMENTTYPETAGIDCASE0DEPARTMENTNAME“市场部“BREAKCASE1DEPARTMENTNAME“开发部“BREAKCASE2DEPARTMENTNAME“技术支持部“BREAKCASE3DEPARTMENTNAME“产品部“BREAKCASE4DEPARTMENTNAME“系统维护部“BREAK/下面的代码是识别目前的请求方式,如果为POST请求,则表示是通过表单方式的登录提交,需要对提交的明文密码进行MD5加密转换;而如果是GET请求(自动登录),则表示是从COOKIE中获得的上次的登录连接信息而进行的自动登录提交,则不需要对密码进行MD5的加密转换。因为在COOKIE中存储的密码是加密后的密码/HTTPSERVLETREQUESTREQUESTSERVLETACTIONCONTEXTGETREQUESTSTRINGFINALPASSWORDNULL/识别当前的请求方式是否为POST请求/IF“POST“EQUALSIGNORECASEREQUESTGETMETHOD/下面的代码是获得没有加密之前的密码(也就是明文的密码)/STRINGORIGNALPASSWORDONESTAFFINFOACTIONFORMGETLOGINPASSWORD/下面对明文的密码进行加密转换,最终在数据库表中存储的密码为密文/FINALPASSWORDNEWMD5JAVABEANGETKEYBEANOFSTRORIGNALPASSWORDELSE/因为在COOKIE中存储的密码是加密后的密码,异常不再需要进行加密转换/FINALPASSWORDONESTAFFINFOACTIONFORMGETLOGINPASSWORDSTAFFINFOPORETURNSTAFFINFOPOSTAFFINFODAOIMPLEQUERYONESTAFFINFOONESTAFFINFOACTIONFORMGETLOGINNAME,FINALPASSWORD,DEPARTMENTNAME/识别是否登录成功,如果不成功,则返回LOGINFAILURE结果名;否则返回LOGINSUCCESS结果名/IFRETURNSTAFFINFOPONULLRETURN“LOGINFAILURE“ELSE/还需要进行会话跟踪、识别是否保存帐号和是否需要自动登录等要求/SESSIONTRACEANDREADWRITECOOKIERETURNSTAFFINFOPORETURN“LOGINSUCCESS“PRIVATEVOIDSESSIONTRACEANDREADWRITECOOKIESTAFFINFOPORETURNSTAFFINFOPO/下面的代码是实现会话跟踪/HTTPSERVLETREQUESTREQUESTSERVLETACTIONCONTEXTGETREQUESTHTTPSERVLETRESPONSERESPONSESERVLETACTIONCONTEXTGETRESPONSEHTTPSESSIONSESSIONREQUESTGETSESSIONSESSIONSETATTRIBUTE“ONESTAFFINFOPO“,RETURNSTAFFINFOPO/识别是否保存帐号/INTISMEMORYUSERNAMEFLAGONESTAFFINFOACTIONFORMGETISMEMORYUSERNAMEFLAGIFISMEMORYUSERNAMEFLAG1/将登录的帐号保存到COOKIE中/READWRITECOOKIEUTILSAVELOGINNAMETOCOOKIEONESTAFFINFOACTIONFORMGETLOGINNAME,RESPONSE,REQUEST/识别是否需要自动登录/INTISAUTOLOGINFLAGONESTAFFINFOACTIONFORMGETISAUTOLOGINFLAGIFISAUTOLOGINFLAG1/将登录的帐号、登录密码、所在部门登信息都保存到COOKIE中/READWRITECOOKIEUTILSAVELOGINNAMEPASSWORDTOCOOKIEONESTAFFINFOACTIONFORM,RESPONSE,REQUEST/下面的方法是响应作人员注册页面/PUBLICSTRINGDOSTAFFREGISTER/将表单对象中的相关的成员属性转存到PO对象/STAFFINFOPOONESTAFFINFOPONEWSTAFFINFOPOSTRINGSTAFFCOMEFROMONESTAFFINFOACTIONFORMGETPROVINCENAMESELECTTAGID“省“ONESTAFFINFOACTIONFORMGETCITYNAMESELECTTAGIDONESTAFFINFOACTIONFORMGETCOUNTRYNAMESELECTTAGIDONESTAFFINFOPOSETSTAFFCOMEFROMSTAFFCOMEFROMSTRINGSTAFFBIRTHDATEONESTAFFINFOACTIONFORMGETYEARSELECT“年“ONESTAFFINFOACTIONFORMGETMONTHSELECT“月“ONESTAFFINFOACTIONFORMGETDAYSELECT“日“ONESTAFFINFOPOSETSTAFFBIRTHDATESTAFFBIRTHDATEONESTAFFINFOPOSETSTAFFPHOTOIMAGEFILEONESTAFFINFOACTIONFORMGETSTAFFPHOTOIMAGEFILEONESTAFFINFOPOSETSTAFFUNITNAMEONESTAFFINFOACTIONFORMGETSTAFFUNITNAMEONESTAFFINFOPOSETLOGINUSER_USERNAMEONESTAFFINFOACTIONFORMGETLOGINNAME/下面的代码是获得满意加密之前的密码(也就是明文的密码)/STRINGORIGNALPASSWORDONESTAFFINFOACTIONFORMGETLOGINPASSWORD/下面对明文的密码进行加密转换,最终在数据库表中存储的密码为密文/ONESTAFFINFOPOSETLOGINUSER_USERPASSWORDNEWMD5JAVABEANGETKEYBEANOFSTRORIGNALPASSWORD/设置默认的情况下帐号是开放的/ONESTAFFINFOPOSETLOGINUSER_LOCKSTATUS1STRINGDEPARTMENTNAMENULLSWITCHONESTAFFINFOACTIONFORMGETDEPARTMENTTYPETAGIDCASE0DEPARTMENTNAME“市场部“BREAKCASE1DEPARTMENTNAME“开发部“BREAKCASE2DEPARTMENTNAME“技术支持部“BREAKCASE3DEPARTMENTNAME“产品部“BREAKCASE4DEPARTMENTNAME“系统维护部“BREAKONESTAFFINFOPOSETLOGINUSER_DEPARTMENTNAMEDEPARTMENTNAMEONESTAFFINFOPOSETSTAFFREALNAMEONESTAFFINFOACTIONFORMGETSTAFFREALNAMEONESTAFFINFOPOSETSTAFFWORKNOONESTAFFINFOACTIONFORMGETSTAFFWORKNO/调用数据访问对象STAFFINFODAOIMPLE中的相关方法实现数据保存/BOOLEANRETURNSAVERESULTSTAFFINFODAOIMPLESAVEONESTAFFINFOONESTAFFINFOPORETURN“REGISTERSUCCESS“/下面的方法是响应作人员修改注册密码的页面/PUBLICSTRINGDOUPDATESTAFFPASSWORDSTAFFINFOPOONESTAFFINFOPONEWSTAFFINFOPO/从表单对象中获得提交的登录帐号/ONESTAFFINFOPOSETLOGINUSER_USERNAMEONESTAFFINFOACTIONFORMGETLOGINNAME/下面的代码是获得满意加密之前的密码(也就是明文的密码)/STRINGORIGNALPASSWORDONESTAFFINFOACTIONFORMGETLOGINPASSWORD/下面对明文的密码进行加密转换,最终在数据库表中存储的密码为密文/MD5JAVABEANONEMD5JAVABEANNEWMD5JAVABEANONESTAFFINFOPOSETLOGINUSER_USERPASSWORDONEMD5JAVABEANGETKEYBEANOFSTRORIGNALP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年火电电力职业鉴定试题预测试卷及参考答案详解(综合题)
- 重难点自考专业(行政管理)试题附完整答案【全优】
- 静脉采血知识培训
- 2026届浙江省湖州市南浔区实验学校九上化学期中检测模拟试题含解析
- 库卡机器人进阶培训
- 福建省泉州市第八中学2026届英语九上期末学业水平测试试题含解析
- 2026届江苏省常州市金坛区水北中学英语九上期末教学质量检测试题含解析
- 企业培训师上课
- 2026届山东省滨州市滨城区东城中学化学九年级第一学期期中统考试题含解析
- 2026届四川省成都市石室天府中学九年级化学第一学期期末复习检测试题含解析
- YY/T 1269-2015血液透析和相关治疗用水处理设备常规控制要求
- GB/T 3047.2-1992高度进制为44.45mm的面板、机架和机柜的基本尺寸系列
- GB/T 19466.3-2004塑料差示扫描量热法(DSC)第3部分:熔融和结晶温度及热焓的测定
- 启航新课堂七数北上-第二章2.5有理数减法
- 老年康复理论知识考核试题及答案
- GA/T 1607-2019法庭科学生物检材中海洛因代谢物检验液相色谱-质谱法
- FZ/T 52025-2012再生有色涤纶短纤维
- 价值的创造与价值实现课件
- 大学物理实验:光电效应课件
- 【课件】物流系统规划与设计
- 创伤急救技术课件
评论
0/150
提交评论