请教大家,面试时,遇到这样一个题目,怎么回答比较好。

qq_29448025 2017-04-25 11:37:45
...全文
787 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
雪中大磐石 2017-04-27
  • 打赏
  • 举报
回复
回楼上,ajax主要实现是对你库里现在数据的比对,即时两个同时对库进行了比对,当然对两人来说都是可注册的,都有机会,这没问题,至于提交,那就应该再提交里再加验证,加锁,加事务。谁先提交算谁的,即时同时提交,也可以引入消息队列等人为分先后。
自由自在_Yu 2017-04-27
  • 打赏
  • 举报
回复
ajax验证只是减少同名概率而已,两人同时验证,都会验证通过,然后都提交了,还是出错。。。题目是“同时”,验证了也没用啊
elim168 2017-04-27
  • 打赏
  • 举报
回复
引用 1 楼 qq_29448025 的回复:
我自己的回答是,在数据库的用户表中,将姓名列设为唯一性约束,不知道这样对不对?
这是对的,但是为了友好体验,会在提交前加多一次判断。
qq_32421041 2017-04-27
  • 打赏
  • 举报
回复
数据库设置唯一约束,插入数据的时候捕获下异常
一个治疗术 2017-04-26
  • 打赏
  • 举报
回复
题目是在web程序中,首先可以设置主键唯一约束,在逻辑处理上,可以使用事务确保数据的唯一性
我爱娃哈哈 2017-04-26
  • 打赏
  • 举报
回复
注册的时候Ajax去数据库比对,如果已经有了这个用户名就不允许注册
lee_seven123 2017-04-26
  • 打赏
  • 举报
回复
先在前端用ajax请求查找数据库该用户名是否已注册,提交注册的时候再在后台做多一次查询该用户名是否已注册
qq_19695321 2017-04-26
  • 打赏
  • 举报
回复
那就设置数据库唯一约束
qq_29448025 2017-04-26
  • 打赏
  • 举报
回复
引用 5 楼 zzs_teery 的回复:
他 要考你SPRING的事务管理机制
两个人同时用相同用户名注册,同时到数据库中去比对,都发现没有,那怎么破?
qq_29448025 2017-04-26
  • 打赏
  • 举报
回复
引用 4 楼 aschouas 的回复:
可能你没碰到过,‘‘该用户名已注册‘’这种情况吧,
两个人同时用相同用户名注册,同时到数据库中去比对,都发现没有,那怎么破?
qq_29448025 2017-04-26
  • 打赏
  • 举报
回复
引用 3 楼 Scaarf 的回复:
这还不简单,进数据库查一下比对一下呗
两个人同时用相同用户名注册,同时到数据库中去比对,都发现没有,那怎么破?
Show me ur code 2017-04-26
  • 打赏
  • 举报
回复
1.唯一性约束。 2.Ajax验证。
sdghchj 2017-04-26
  • 打赏
  • 举报
回复
发现楼上好多说什么ajax去比对。。。有毛用。。。。 你去比对时没有注册过,点击注册时刚好被另一个刚注册完。 这种事情,只有后端用加锁队列处理或者依赖数据库的约束或事务锁。 前端就一边凉快去吧。
ljheee 2017-04-26
  • 打赏
  • 举报
回复
ajax发送异步请求查找数据库该用户名是否已注册,用户输入完,就做出提示
hfhwfw 2017-04-26
  • 打赏
  • 举报
回复
引用 7 楼 csdnjavastudy 的回复:
1.唯一性约束。 2.Ajax验证。
赞同,先ajax校验或在插入前校验,数据字段加唯一性约束。
110成成 2017-04-26
  • 打赏
  • 举报
回复
首先肯定是保证主键的唯一性,作为主键,这是数据库设计。 前段用异步方式去验证,捕捉鼠标事件,异步去后台验证。 验证感觉还是要的,因为不验证,直接入库,虽然是主键,但是会 报异常。
zzs_teery 2017-04-26
  • 打赏
  • 举报
回复
他 要考你SPRING的事务管理机制
一个治疗术 2017-04-26
  • 打赏
  • 举报
回复
可能你没碰到过,‘‘该用户名已注册‘’这种情况吧,
  • 打赏
  • 举报
回复
引用 17 楼 qq_31292223 的回复:
[quote=引用 2 楼 lee_seven123 的回复:] 先在前端用ajax请求查找数据库该用户名是否已注册,提交注册的时候再在后台做多一次查询该用户名是否已注册
对的,说白了就是注册之前再查一次,看此用户名是否注册[/quote] 应该是这样的
qq_31292223 2017-04-26
  • 打赏
  • 举报
回复
引用 2 楼 lee_seven123 的回复:
先在前端用ajax请求查找数据库该用户名是否已注册,提交注册的时候再在后台做多一次查询该用户名是否已注册
对的,说白了就是注册之前再查一次,看此用户名是否注册
加载更多回复(5)

62,625

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧