Java之三层开发思维

🍖三层开发思维的模拟实现 day13


🌭提示:这里直接使用java代码进行编码描述实现大致逻辑,思维导图如下:

在这里插入图片描述



🍖一、控制层编写⭐

UserController.java:获取用户账号和密码

public class UserController {
    //假设通过方法Verify获取浏览器上用户输入的账户和密码
    public String Verify(User user){
        //假设用户直接输入如下内容 ,这里要写一个User.java用户类
        user.setUserName("123456");//这里是假设账号
        user.setUserPassword("123456");//这里是假设的用户输入的密码
        
    //获取用户账号密码以及(盐=加密)
        UserService userservice=new UserService();
        //调用业务逻辑层,将获取的账号和密码传给逻辑层
        String result= userservice.Verify(user.getUserName(),user.getUserPassword());
        System.out.println(result);//打印反馈的结果
        return result;//将结果反馈到前端
    }

    public static void main(String[] args) {
        UserController uc=new UserController();
        uc.Verify(new User());//启动程序
    }
}

为了方便我们封装一个用户类:


🍖二、User用户类

里面封装了用的id,userName,userPassword等属性,方便我们的调用

public class User {
    public int id;
    public String userName;//账号
    public String userPassword;//密码
    public String salt;//加密
//以下是生成的getter()和setter()方法
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
   public String getUserPassword() {
        return userPassword;
    }
    public void setUserPassword(String userPassword) {
        this.userPassword = userPassword;
    
    public String getSalt() {
        return salt;
    }
    public void setSalt(String salt) {
        this.salt = salt;
    }
}
🍖三、逻辑层的编写⭐

对得到的账号,密码进行判断处理并对密码加密

public class UserService {
    public String Verify(String name,String password){
        //简单的逻辑判断账号和密码是否为空
        if(name==null ||name.trim().equals("")){
            return "用户名不能为空";//返回提示
        }
        if(password==null ||password.trim().equals("")){
            return "密码不能为空";//返回提示
        }

        //进行加密
        secret sc=new secret();
        //这里需要创建一个产生随机四位验证码的工具类  secret.java
        //这里直接加四位随机数进行加密
        String secret=sc.secret(4);//随机产生4位随机验证码
        password=password+secret;//与密码拼接假设是加密处理

        //插入数据库
        Mapper map=new Mapper();//调用数据层
        int result=map.Verify(name,password,secret);//传入处理过的数据
        //对result数据层返回的结果判断,1是注册成功,0是注册失败
        if(result==1){
            return "注册成功";
        }else{
            return "注册失败";
        }
    }
}
🍖四、工具类secret.java的编写(生成随机验证码)
public class secret {
    public String secret(int length) {//length几位验证码
        String s="";
        Random R = new Random();//随机数对象
        for (int i = 0; i < length; i++) {
            if (i % 2 == 0) {//当为偶数位时产生随机数字0~9
                //随机数字
                int x = R.nextInt(10);
                s=s+x;//验证码的拼接
            } else {//否则随机字母a~z
                //随机小写字母
                char y = (char) (R.nextInt(27) + 97);
                s=s+y;//验证码的拼接
            }
        }
        return s;//返回验证码
    }

在这里插入图片描述

🍖五、数据层编写⭐
public class Mapper {
    public int Verify(String name,String password,String secret){
    //这里打印处理过的数据,假设作为成功插入数据库
        System.out.println("name = " + name);
        System.out.println("password = " + password);
        System.out.println("secret = " + secret);
        return 1;//并返回值1,表示插入成功
    }
}

见证结果:~~~

在这里插入图片描述

假设用户输入空密码
在这里插入图片描述

🍜以上便是三层开发的大体思维路线,🍚控制层的编写(封装用户类)~~~🍚逻辑层的编写(封装工具类)~~~🍚数据层的编写,再由数据层返回最终结果,这里只是使用Java代码实现了三层开发逻辑,将大概的逻辑用代码实现出来,完结撒花!

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

每日小新

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值