注册用户

This commit is contained in:
2023-12-20 22:06:44 +08:00
parent 09165ec608
commit 745a9cb669
7 changed files with 121 additions and 5 deletions

View File

@@ -1,4 +1,49 @@
package com.lovenav.controller;
import com.lovenav.entity.User;
import com.lovenav.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.web.ServerProperties;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpSession;
import javax.websocket.Session;
@RestController
public class UserController {
@Autowired
UserService userService;
@GetMapping("/sendActiveCode")
public String sendActiveCode(HttpSession session, User user){
String activecode=userService.sendEmailActivecode(user);
session.setAttribute("realactivecode",activecode);
return "发送验证码成功!";
}
@RequestMapping("/register")
public String userRegister(HttpSession session,User user){
// 比较验证码
if (!user.getActiveCode().equalsIgnoreCase((String) session.getAttribute("realactivecode"))) {
return "验证码不正确";
}
System.out.println(user.getUserLogin());
System.out.println(user.getUserEmail());
// 用户注册之前根据用户名称查询该用户是否存在如果不存在的情况下才可以注册 如果存在的话就无法注册
User user1=userService.selectUserAlreadyExist(user);
System.out.println("zhuce");
if (user1 != null) {
return "用户名: " + user1.getUserEmail() + "已被注册!";
}
//用户数据注册
int register = userService.UserRegister(user);
if (register <= 0) {
// 注册失败了 //转发到错误页面
return "注册失败!";
}
return "注册成功!";
}
}

View File

@@ -1,9 +1,12 @@
package com.lovenav.dao;
import com.lovenav.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
@Repository
@Mapper
public interface UserDao {
int deleteByPrimaryKey(Integer id);
@@ -17,6 +20,8 @@ public interface UserDao {
int updateByPrimaryKey(User record);
User selectByEmail(String user_email);
User selectByUserLogin(String user_Login);
}

View File

@@ -3,6 +3,7 @@ package com.lovenav.entity;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
/**
* ln_user
@@ -14,6 +15,14 @@ public class User implements Serializable {
*/
private Integer id;
public String getActiveCode() {
return activeCode;
}
public void setActiveCode(String activeCode) {
this.activeCode = activeCode;
}
/**
* 用户登录名
*/
@@ -137,7 +146,12 @@ public class User implements Serializable {
/**
* 角色组
*/
@Value("1")
private Byte roleId;
private String activeCode;
private static final long serialVersionUID = 1L;
}

View File

@@ -2,8 +2,15 @@ package com.lovenav.service;
import com.lovenav.entity.User;
public interface UserService {
public void sendEmailActivecode(User user,String activecode);
public interface UserService {
public String sendEmailActivecode(User user);
public int UserRegister(User user);
public User selectUserAlreadyExist(User user);
public User userLogin(User user);
}

View File

@@ -1,14 +1,40 @@
package com.lovenav.service.serviceImpl;
import com.lovenav.dao.UserDao;
import com.lovenav.utils.EmailUtils;
import com.lovenav.entity.User;
import com.lovenav.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements UserService {
@Autowired
UserDao userDao;
@Override
public void sendEmailActivecode(User user,String activecode) {
EmailUtils.sendEmail(user,activecode);
public String sendEmailActivecode(User user) {
return EmailUtils.sendEmail(user);
}
@Override
public int UserRegister(User user) {
return userDao.insert(user);
}
@Override
public User selectUserAlreadyExist(User user) {
System.out.println(user.getUserEmail());
User user1=userDao.selectByEmail(user.getUserEmail());
return user1;
}
@Override
public User userLogin(User user) {
return null;
}
}

View File

@@ -22,7 +22,8 @@ import java.util.Properties;
* */
public class EmailUtils {
public static void sendEmail(User user,String activecode) {
public static String sendEmail(User user) {
//邮箱 lx_teach@163.com
String myAccount = "482370576@qq.com";
//授权码 java168
@@ -39,6 +40,7 @@ public class EmailUtils {
prop.setProperty("mail.smtp.auth", "true");
//1、创建会话
Session session = Session.getDefaultInstance(prop);
String activecode=RandomUtils.createActive();
//设置是否需要调试
session.setDebug(false);
//2、创建发送信息
@@ -56,6 +58,7 @@ public class EmailUtils {
// TODO Auto-generated catch block
e.printStackTrace();
}
return activecode;
}
//生成邮件消息