实现第五天

本文探讨了用户数据访问接口(UserDao)的实现及测试,包括按ID查找用户、登录验证、插入新用户等功能,并深入讨论了如何避免用户名重复的问题。通过添加判断用户名是否存在的方法,确保了用户数据的唯一性。同时,介绍了服务接口的概念及其在控制层中的作用。

用户数据访问接口实现类UserDaoImpl:
在这里插入图片描述
用前面相同的方法导出@Override,有6个@Override
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
新建TestUserDaoImpl:
在这里插入图片描述
编写按ID查找用户的方法testFindById():
在这里插入图片描述
在这里插入图片描述
编写用户登录的方法testLogin():
(Login:登录)
在这里插入图片描述
在这里插入图片描述
如果用户名或密码错误,会失败:
在这里插入图片描述
在这里插入图片描述
编写插入新用户的方法testInsert():
等于注册
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果再次运行用户名相同的代码:
发现还是插入成功了在这里插入图片描述
在mysql数据库中会有两个相同的用户
在这里插入图片描述
用户表是以id为主键,尽管用户名一样,也不会报错,但是实际上登录是以用户名和密码来登录的,用户表里存在两个用户名相同的记录是不合理的,那么应该如何修改代码来消除这个不合理的现象呢?

解决思路:在UserDao添加一个判断用户名是否存在的方法,如果存在,返回真,否则返回假。
修改代码:
在这里插入图片描述
在这里插入图片描述
而且这个抽象方法isUsernameExisted()必须在UserDaoImpl中实现:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后在测试的TestDaoImpl里添加这个方法testIsUsernameExisted():
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

服务接口
服务接口调用数据访问接口,可以添加必要的业务逻辑。服务接口被控制层调用
创建
在创建时选择第二个
在这里插入图片描述
在这里插入图片描述
学校服务接口 CollegeService:
在这里插入图片描述
状态服务接口 StatusService:
在这里插入图片描述
学生服务接口 StudentService:
在这里插入图片描述
用户服务接口 UserService:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值