springmvc防止重复提交_java后端解决重复提交问题

springmvc防止重复提交_java后端解决重复提交问题表单提交时需要校验数据是否已存在,如果已存在需要防止重复提交,做法比较简单,不再赘述。1.Employee类publicclassEmployee{publicintId{set;get;}[StringLength(10,MinimumLength=10)]publicstringName{set;get

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

表单提交时需要校验数据是否已存在,如果已存在需要防止重复提交,做法比较简单,不再赘述。

1.Employee类

public class Employee
{
        public int Id { set; get; }

        [StringLength(10,MinimumLength=10)]
        public string Name { set; get; }

        [RegularExpression("^[1-9][0-9]{0,1}$")]
        public Nullable<int> Age { set; get; }
}

2.View

@model AspNetMvcModelValidate.Models.Employee
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        $("#btn").click(function () {
            var name = $('#name').val();
            $.post('@Url.Action("CheckEmployeeName")', {
                name: name
            },
            function (data) {
                console.log(data);
                if (data) {
                    console.log("yes");
                    $("#myform").submit();
                } else {
                    alert("Employee with name:" + name + "already exist.");//已有相同
                }
            })
        }); 
    });
</script>

<h2>Index2</h2>
@using (@Html.BeginForm("AddEmployee", "Home", FormMethod.Post, new { Id = "myform" }))
{ 
    <table>
        <tr>
            <td>Name</td>
            <td>@Html.TextBoxFor(s => s.Name, new { ID = "name" })</td>
        </tr>
        <tr>
            <td>Age</td>
            <td>@Html.TextBoxFor(s => s.Age)</td>
        </tr>
        <tr>
            <td colspan="2"><input type="button" id="btn" value="submit" style="width:215px" /></td>
        </tr>
    </table>
}

3.控制器

public JsonResult CheckEmployeeName(string name)
{
            var query = ModelsContainer.Employees.Where(x => x.Name == name).Count<Employee>();
            return Json(query < 1, JsonRequestBehavior.AllowGet);
}

public ActionResult AddEmployee(Employee employee)
{
            ModelsContainer.Employees.Add(employee);
            return View(employee);
}

4.数据源

public class ModelsContainer
{
        public static List<Employee> Employees = new List<Employee>
        {
            new Employee{ Id = 1, Name = "Employee01", Age = 25 },
            new Employee{ Id = 2, Name = "Employee02", Age = 25 }
        };
}

5.Result

springmvc防止重复提交_java后端解决重复提交问题

springmvc防止重复提交_java后端解决重复提交问题
springmvc防止重复提交_java后端解决重复提交问题

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/187762.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Eclipse代码自动补全功能

    Eclipse代码自动补全功能相信用过IntelliJIDEA的同学都知道哈,输出语句是可以直接sout回车得到System.out.println();这语句哈,最近呢,想用eclipse写写java,发现打出输出语句不是那么快,于是就上网查询了相关资料,期间发现个很棒的教程。教程如下:1.打开eclipse找到顶部Windows那里(如图)2.点击Windows那里,然后在弹出的框中选择Preference(如图)3.点开后在弹出界面找到java(如图,找到后点击java左边的那个箭头(箭头额)4.第三

    2022年5月31日
    44
  • Python生成可执行文件exe

    Python生成可执行文件exePython生成可执行文件exe一、安装pyinstallerpipinstallpyinstaller二、使用pyinstaller命令使用示例相对路径在程序目录中,运行命令pyinstallermyscript.py则可以在当前目录生成两个文件夹dist和build,exe文件在dist文件夹中。绝对路径在程序目录中,运行命令pyinstallerC:\mys…

    2025年5月26日
    2
  • 【语言-C++】多线程通同步 临界区 CCriticalSection 与 CSingleLock

    【语言-C++】多线程通同步 临界区 CCriticalSection 与 CSingleLock多线程通同步与互斥示例下面示例是一个相机处理和显示分开的两个线程:定义临界区使用单锁#define_CRITICAL_LOCK(critical_lock) CSingleLocklocker(&critical_lock); locker.Lock();CCriticalSection_critical_data2;启动线程,创建四个事件:停止线程事件、处理图

    2022年7月20日
    11
  • 华为AAA认证典型配置举例

    华为AAA认证典型配置举例2.5AAA典型配置举例2.5.1Telnet/SSH用户通过RADIUS服务器认证的应用配置&说明:SSH用户和Telnet用户通过RADIUS服务器进行认证的配置方法类似,下面的描述以Telnet用户的远端认证为例。1.组网需求在图2-1所示的环境中,需要通过配置交换机实现RADIUS服务器对登录交换机的Telne…

    2022年5月18日
    399
  • 350页前端校招面试题直击大厂:前端基础、前端核心、计算机基础、项目、Hr面…「建议收藏」

    350页前端校招面试题直击大厂:前端基础、前端核心、计算机基础、项目、Hr面…「建议收藏」前言考虑到关注的小伙伴们也会有在校生或应届生,要参加校招的同学,一直挺想总结一些关于校招面试题,赶在春招结束前终于写完了,除了写到前端方面的面试题外,项目、职业发展、H面等高频问题也会有,写的很详细,全方面做好准备,为同学们的校招保驾护航!目录1.HTML2.CSS3.前端基础4.前端核心5.前端进阶6.移动端开发7.计算机基础8.算法与数据结构9.设计模式10.项目11.职业发展12.Hr面正文HTML1.浏览器页面有哪三层构成,分别是什么,作用是什么?2.HTML5的

    2022年6月19日
    31
  • createmutex函数参数含义_pthread_create函数

    createmutex函数参数含义_pthread_create函数CreateMutexCreateMutex函数的作用是找出当前系统是否已经存在指定进程的实例,如果没有则创建一个互斥体。//VC声明HANDLECreateMutex(LPSECURITY_ATTRIBUTESlpMutexAttributes,//指向安全属性的指针BOOLbInitialOwner,//初始化互斥对象的所有者LPCTSTRlpName//指向互斥对象名的指针);一个应用:HANDLEhMutex;hMutex=CreateMutex(

    2022年10月5日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号