이 기사에서는 참조를위한 Mall 프로젝트의 사용자 등록 모듈에 대해 설명합니다. 먼저 렌더링을 살펴 보겠습니다.
1. 프론트 데스크 JS 확인 :
이벤트 트리거 : onsubmit = "checkform ()"
2. Ajax를 사용하여 비동기 사용자 이름이 존재하는지 여부를 확인합니다.
① 이벤트 트리거 : onblur = "checkusername ()"
Ajax
함수 checkuserName () {var username = $ ( "#username"). val (); $ ( "#span1"). load ( "$ {pagecontext.request.contextpath} /user_checkusername.action", { 'username': username});}3. 백엔드 스트럿의 데이터 검증 2
①. <form action =”$ {pagecontext.request.contextpath} /user_regist.action”/>을 양식으로 씁니다
②. 작동중인 방법
③. 데이터 검증 완료 :
작업이 위치한 패키지 아래에 클래스 이름을 만듭니다 - 메소드는 액세스 경로 -validation.xml에 해당합니다.
userAction-user_regist-validation.xml
<? xml version = "1.0"encoding = "utf-8"?> <! doctype validators public "-// apache struts // xwork validator 1.0.3 // en" "http://struts.apache.org/dtds/xwork-validator-1.3.3.dtd"> <! <! name="username"> <field-validator type="requiredstring"> <message>Username cannot be empty!</message> </field-validator> </field> <!-- name: The field name to be verified --> <field name="password"> <field-validator type="requiredstring"> <message>Passage cannot be empty!</message> </field-validator> </field> <!-- Verify 사서함-> <필드 이름 = "이메일"> <Field-Validator type = "email"> <message> 사서함 형식이 잘못되었습니다! </message> </field-validator> </field> <!-전화-> <필드 이름 = "폰"> <field-validator type = "regex"> 이름 = "Regex"> <! [cdata [^15/d {9} $]]> </param> <message> 불법 전화 번호 </메시지> </field-validator> </field> </validators>4. 활성화 이메일 보내기
incipation.jarmail.jar의 두 가지 패키지를 소개합니다
②userservice.java
/*** 사용자를 등록하는 메소드* @param user*/public void save (user user) {// 데이터베이스에 저장 : user.setstate (0); // 0 : 활성화되지 않음 1 : 문자열 코드 = uuidutils.getUuid ()+uuid (); user.setCode (코드); userdao.save (사용자); // 활성화 이메일 보내기 : mailutils.sendmail (user.getemail (), code);}mailutils
/** * 이메일 전송 방법 : */public static void sendmail (문자열 to, 문자열 코드) {properties propss = new Properties (); props.setProperty ( "mail.smtp", "localhost"); // 1. 연결을 얻습니다 : 세션 세션 = 세션. getInstance (propss, new Authenticator () {@override Prossected PasswordAuthentication getPasswordAuthentication () {새 PasswordAuthentication ( "[email protected]", "111");}); // 2. 메시지의 객체를 작성 메시지 메시지 = new Mimemessage (세션); // 발신자를 설정하십시오 : try {message.setfrom (new InternetAddress ( "[email protected]")); // 수신자를 설정하십시오 : message.setRecipient (recepientType.to, new InternetAdDress (to)); // 제목을 설정하십시오 : message.setSubject ( "itcastshop mall activation email에서"); // 이메일 바디 설정 : message.setContent ( "<H1> ITCastshop 쇼핑 파라다이스에서 활성화 이메일 </h1> <h3> <a href = 'http : //192.168.30.30.123 : 8080/itcastshop/user_active.action? code = "+code+"' '> http://192.168.30.123:8080/Itcastshop/user_active.action ?code= "</h3>", "텍스트/html; charset = utf-8"); // 전자 메일 보내기 : rangplity.send (메시지); } catch (wassedException e) {e.printstacktrace (); }}5. 사용자 활성화
이메일 주소에서 연결을 클릭하여 조치를 제출하십시오.
작동 중 활성화 코드 수신 :
활성화 코드를 따라이 사용자를 쿼리하십시오.
* 쿼리 인 경우 :
* 사용자 상태 수정
* 사용자가없는 경우 :
* 활성화 실패 :
/** * 사용자 활성화 방법 : */public string active active () {// 모델 드라이버는 활성화 코드를 수신합니다. // 활성화 코드에 따라 사용자를 쿼리합니다. if (befortuser == null) {// 활성화 코드는 this.addactionMessage ( "활성화 실패 : 활성화 코드가 변조되었습니다!"); } else {// 활성화 : 사용자 상태를 수정하십시오. userervice.update (besciper); // 성공적으로 활성화 : this.addactionMessage ( "활성화 성공 : 로그인하십시오!"); } 반환 "msg";}Github 전체 코드 : https://github.com/ganchuanpu/itcastshop
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.