当前位置:首页 > Java技术 > 为什么注册页面刷新一次,数据库就多了一条数据?????

为什么注册页面刷新一次,数据库就多了一条数据?????

2022年09月16日 09:39:14Java技术4

  

        web项目为什么点击注册按钮跳转不到注册页面?(上一篇博客)

  从上次注册页面能成功访问之后(上一篇博客),我就开始编写注册页面。最终成功的将用户名和密码插入到数据库中!

但是问题百出!我登录刚刚注册的页面,系统就开始报错了!!

nested exception is org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2
	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:75)
	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:371)
	at com.sun.proxy.$Proxy6.selectOne(Unknown Source)

  看到红色的字体我就猜到是登陆的时候从数据库查到了两个用户名!

为什么会有两个用户名呢???去查了一下数据库,发现我刚才注册的用户名真的重复了!(用户名并不是主键,所以可以唯一)

很怀疑为什么为是两个,于是我又注册了一个用户名,发现数据库里面也是两个。。。。

 

很想不通,我注册的时候应该只会有一个用户名呀,无意中发现,每当我刷新一次页面,数据库就会多一条重复的记录。

 很费解为什么会这样!

 


 

后来我发现了问题,就是当我完成注册,跳转到登录页面之后,URL是没有改变的!!!因为我用的是转发!     重定向和转发的区别这里就不细讲了。

这里我只说明一下转发地址栏中的URL不会改变!!!

所以,当我完成注册跳转到登录页面的时候,我的URL并没有改变,仍然是注册页面的URL。再加上我的请求时get请求,参数都在URL上。

http://localhost:8080/springmvc_mybatis1110/login.action?usercode=123&password=123

所以,每当我刷新一次页面,就会调用一次注册功能的接口,数据库就会多一条数据!

 

那么问题找到了;

下面来解决问题

 

问题很简单,将转发改成重定向到登录页面,URL也会改成登录页面的URL,这样数据库里就不会莫名的增加数据了!

 

 

 

转载于:https://www.cnblogs.com/ilovessf/p/7527054.html

作者:weixin_30655569
来源链接:https://blog.csdn.net/weixin_30655569/article/details/98325911

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/41705.html

标签: Exception
分享给朋友:

“为什么注册页面刷新一次,数据库就多了一条数据?????” 的相关文章

2.Java中Exception和Error的区别

2.Java中Exception和Error的区别

Exception和Error都是继承了Throwable类,在Java中只有Throwable类型的实例才可以被抛出(throw)或者捕获(catch),它是异常处理机制的基本组成类型 Error是指在正常情况下,不大可能出现的情况,绝大部分的Error都会导致程序(比...

如何显示Magento 错误信息!Magento install error – Exception printing

编辑器加载中... 如何显示Magento 错误信息!Magento install error – Exception printing is disabled Here is a known error which can occur when installing Magento...

after : """>【异常】Maxwell异常 Exception in thread "main" net.sf.jsqlparser.parser.TokenMgrError: Lexical error at line 1, column 596. Encountered: after : ""

1 详细异常 Exception in thread "main" net.sf.jsqlparser.parser.TokenMgrError: Lexical error at line 1, column 596. Encountered: <EOF>...

浅谈 Android  Exception & Throwable 类

浅谈 Android Exception & Throwable 类

一、Throwable 类 概述:java将所有的错误封装为一个对象,其根本父类为Throwable, Throwable有两个子类:Error和Exception。 Error: 这种异常被设计成不被捕获,因为这种异常产生于JVM自身。 Runti...

clickhouse 安装启动报<Error> Application: DB::Exception: There is no profile 'default' in configuration file. 以及常见的错误的总结

clickhouse 安装启动报 Application: DB::Exception: There is no profile 'default' in configuration file. 以及常见的错误的总结

1、启动时报错<Error> Application: DB::Exception: There is no profile 'default' in configuration file. 2021.08.07 15:05:30.719723 [ 1 ]...

Uncaught Error: SECURITY_ERR: DOM Exception 18

Question: I get the following error in Ch...

Error和Exception有什么区别?

Error表示系统级的错误和程序不必处理的异常,是恢复不是不可能但很困难的情况下的一种严重问题;比如内存溢出,不可能指望程序能处理这样的情况;Exception表示需要捕捉或者需要程序进行处理的异常,是一种设计或实现问题;也就是说,它表示如果程序运行正常,从不会发生的情况。...

Android之NetworkOnMainThreadException异常

转载自:https://blog.csdn.net/mad1989/article/details/25964495 看名字就应该知道,是网络请求在MainThread中产生的异常 先来看一下官网的解释: Class Overview The excepti...

JNI DETECTED ERROR IN APPLICATION: JNI NewGlobalRef called with pending exception java.lang.UnsatisfiedLinkError: method:makesureAuthed, sig:(Ljava/lang/String;)Z

JNI DETECTED ERROR IN APPLICATION: JNI NewGlobalRef called with pending exception java.lang.UnsatisfiedLinkError: method:makesureAuthed, s...

Caused by: java.lang.IllegalStateException: RedisConnectionFactory is required

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redisTemplate' defined in class path resource [com/zhan...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。