SSM-结合ajax异步请求的-登录注册界面_ajax用ssm怎么写地址-程序员宅基地

技术标签: spring  web.xml  SSM-MVC分层  ssm  ajax  springmvc  

项目目录结构
在这里插入图片描述

引入pom文件

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.example</groupId>
  <artifactId>dly-01</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>

  <name>dly-01 Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-beans</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aop</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-expression</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>4.3.8.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
      <version>1.1.9</version>
    </dependency>
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>1.3.2</version>
    </dependency>
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.4.6</version>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.6</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-core</artifactId>
      <version>2.9.5</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.9.5</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-annotations</artifactId>
      <version>2.9.5</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.json/json -->
    <dependency>
      <groupId>org.json</groupId>
      <artifactId>json</artifactId>
      <version>20180130</version>
    </dependency>
  </dependencies>

  <build>
    <finalName>dly-01</finalName>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
        <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.2.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.5.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.8.2</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

控制层
在这里插入图片描述

package com.wenxin.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.HashMap;
import java.util.Map;
//用户控制类
@Controller
@ResponseBody//返回json格式数据
public class UserController {
//注册
    @RequestMapping(value = "/register1",method= RequestMethod.GET,produces = "application/json;charset=utf-8")
//    @RequestMapping("/register1")
    public Map register(String user_name, String user_pwd){
        Map map =new HashMap();
        int result=1;
        if(result > 0){
            //注册成功,跳转到登录界面
            //重定向和转发
//            return "redirect:/login.html";
            map.put("code",200);
            map.put("message","登录成功");
        }else{
            //注册失败
            map.put("code",500);
            map.put("message","登录失败");
//            return "redirect:/register.html";
        }

        return map;
    }
    //登录
    @RequestMapping("/login")
    public String login(){
        return null;
    }
}

spring_mvc配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <!--1.开启Springioc 自动扫描注解包  只对mvc的包做扫描  -->
    <context:component-scan base-package="com.wenxin.controller"/>

    <!--2. 开启注解,对jackson数据支持 -->
    <mvc:annotation-driven/>

    <!--3. 放行所有的静态资源html+css...-->
    <mvc:default-servlet-handler />

    <!--4.配置视图解析器  -->
    <!-- 配置视图解析器:如何把handle方法返回值解析为实际的物理视图
         name="prefix"代表前面的目录,为空代表根目录  name="suffix"代表返回的地址为后缀为.JSP的文件 -->
    <!--<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">-->
    <!--<property name="prefix" value="/WEB-INF/" />-->
    <!--<property name="suffix" value=".jsp" />-->
    <!--</bean>-->
</beans>

web.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
  <!--Spring核心监听器 -->
  <!--在服务器启动时加载Spring容器,且只会加载一次 -->
<!--  <context-param>-->
<!--    <param-name>contextConfigLocation</param-name>-->
<!--    <param-value>classpath:spring_config.xml</param-value>-->
<!--  </context-param>-->
<!--  <listener>-->
<!--    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>-->
<!--  </listener>-->

  <!--配置springmvc -->
  <servlet>
    <servlet-name>dispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!--配置初始化参数:作用是配置SpringMVC配置文件的位置和名称 -->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:spring_mvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>dispatcherServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.html</url-pattern>
  </servlet-mapping>

  <!--配置由Spring 提供的针对中文乱码的编码过滤器 -->
  <!-- 编码过滤器 -->
  <filter>
    <filter-name>CharacterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>CharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

注册界面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册页面</title>
    <script type="text/javascript" src="js/jquery-2.0.3.min.js"></script>
    <script>
        $(function () {
     
            //注册按钮的点击事件
            $("#btn_submit").click(function(){
     
                var user_name = $("input[name=user_name]").val();
                var user_pwd = $("input[name=user_pwd]").val();
                //通过ajax方式传递后台
                $.ajax({
     
                    url:"/register1",  //提交后台URI地址
                    type:"get", //请求方式:get、post
                    data:{
     user_name:user_name,user_pwd:user_pwd}, //提交参数:js对象,json字符串,序列化
                    dataType:"json", //响应类型
                    success:function(response){
      //成功后回调函数
                        if(response.code == 200){
     
                            window.location.href = "/login.html";
                        }
                        if(response.code == 500){
     
                            alert(response.message);
                        }
                    }
                })
            })
        })
    </script>
</head>
<body>
<!--<form action="/register1" method="POST">-->
<!--    <p>-->
<!--        用户名称:<input type="text" name="user_name" />-->
<!--    </p>-->
<!--    <p>-->
<!--        用户密码:<input type="password" name="user_pwd" />-->
<!--    </p>-->
<!--    <p>-->
<!--        <input type="submit" value="注册">-->
<!--    </p>-->
<!--</form>-->
<div>
    <p>
        用户名称:<input type="text" name="user_name" />
    </p>
    <p>
        用户密码:<input type="password" name="user_pwd" />
    </p>
    <p>
        <input id="btn_submit" type="button" value="注册">
    </p>
</div>
</body>
</html>

登录界面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登录页面</title>
</head>
<body>
<form action="login" method="post">
    <p>
        用户名称:<input type="text" name="user_name" />
    </p>
    <p>
        用户密码:<input type="password" name="user_pwd" />
    </p>
    <p>
        <input type="submit" value="登录">
    </p>
</form>
</body>
</html>

在这里插入图片描述
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/dgssd/article/details/112969142

智能推荐

apt-get安装指定php版本,Ubuntu中怎么使用apt-get安装指定php版本号_网站服务器运行维护,Ubuntu...-程序员宅基地

文章浏览阅读128次。linux是什么系统_网站服务器运行维护Linuxjavascript:;,全称GNU/Linux,是一套免费使用和自由传播的类UNIX操作系统,它主要受到Minix和Unix思想的启发,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。Ubuntu中怎么使用apt-get安装指定php版本号命令用法如下:sudo apt-get install package=ve...

VSCODE无法加载源文件-程序员宅基地

文章浏览阅读4.3k次。遇到自己创建的.h头文件被识别出无法添加源文件,找了很多教程看了很多文章,都不管用,最后在includepath中的每一条路径里面最后面加上\**,就成功解决了这个问题

从“站在巨人的肩上”到“跪到侏儒之脚下”——图灵公司副主编自供(一)...-程序员宅基地

文章浏览阅读128次。 我是《C程序设计伴侣》的策划编辑,有话在这里说。(一) 作者 人民邮电出版社图灵公司副总编 陈冰 【背景介绍:  2012年7月27日,人民邮电出版社图灵公司对外透露,将在今年8、9月出版所谓的“图灵原创”《C程序设计伴侣》(后面简称《伴侣》)。(http://photo.weibo.com/1847982423/talbum/detail/photo_id/347234610044..._站在巨人的肩膀上跪在巨人脚下

本文详解5G是个什么鬼,程序员都准备好了吗?-程序员宅基地

文章浏览阅读1.5k次。无线移动通讯发展历史最近5G的概念炒的如火如荼,为此,华为和高通还干了一仗。这篇文章从技术层面给大家分析,什么是5G,它和4G比,高级在哪里?我们来看看移动互联网的技术发展:然后我们在来看看他们之间的通讯速率比较:2G:150Kbps,折合下载速度15-20K/s3G:1-6Mbps,折合下载速度120K/s-600K/s4G:10-100Mbps,折合下载速度1.5M..._5g程序员应该学习什么 site:blog.csdn.net

极智经验 | win10 IE浏览器无法打开网页解决方法_w10系统自带ie打开不了网页-程序员宅基地

文章浏览阅读2k次。大家好,我是极智视界,本文介绍一下 win10 IE浏览器无法打开网页的解决方法。_w10系统自带ie打开不了网页

python编写程序、计算1+3+5+......+99的值_python编写1+(1+3)+(1+3+5)+……(1+3+5+……+n)和的程序...-程序员宅基地

文章浏览阅读1.2w次。python编写1+(1+3)+(1+3+5)+……(1+3+5+……+n)和的程序234游戏网友 提出于 2019-09-15 06:02:35请问:python编写1+(1+3)+(1+3+5)+……(1+3+5+……+n)和的程序采纳答案 欢迎参考下方网址,里面有Python习题跟答案,具体的代码截图,代码思路跟你的差不多,把代码考下来把参数修改一下就可以了网页链接#!/usr/b..._python中1+3+5...+999怎么写

随便推点

(一)Spring-Cloud源码分析之核心流程关系及springcloud与springboot包区别(新)_spring cloud 源码-程序员宅基地

文章浏览阅读1k次,点赞3次,收藏4次。很多人搞不懂springboot和spring-cloud的关系到底是什么,也不知道这两者时间有什么区别,今天简单的聊聊。2022年发了一篇Springcloud和Springboot的区别对比,但后面回看总觉得少了点东西,这次重新发个补充一下。_spring cloud 源码

Nuxt中关于window or document is not defined的问题总结-程序员宅基地

文章浏览阅读1.2w次,点赞2次,收藏5次。关于这类问题一般有两种场景引用第三方组价时,比如引用vue-awesome-swiper这种的第三方组件时,因为源组件代码中包含有操作window对象,所以这一类的window is not defined按照官方的使用插件的方法引入就可以解决// 这里就以vue-awesome-swiper这个组件为例import Vue from 'vue'import VueAwesomeSwi...

十.正确理解配置管理_配置项管理和受控状态解释-程序员宅基地

文章浏览阅读1.2k次。如何正确理解配置管理 在实际项目工作中,我们能回答项目组中不同角色人员提出的问题吗?  项目经理:还有没有重要性为1的请求没有解决?  分析设计人员:这次发布版本是否包括了462需求?  开发人员:我记得的确修改了那个文件的,为什么还会出现这个问题?  集成人员:为什么这次build失败了?  测试人员:Bug 873是否在这次build中fix了?  ……  实际情况是,我们很难_配置项管理和受控状态解释

函数的应用,七段电子数码管-程序员宅基地

文章浏览阅读38次。因为"%Y年%m月%d日%H时%M分%S秒" 并不会使文字显现在屏幕上 t.write('年',font=('Arial',25,'normal')等才能write文字。通过代码的编写输出从电脑获取的本地时间包括年月日。设置画布画笔的参数将中文年月日通过。代码运行后可以成功显示数字0-9。根据数码管的明暗条件编写程序。

Pandas初识、Series和DataFrame、日期处理等操作超详细介绍!(附实例)_pandas dataframe 扩充日期-程序员宅基地

文章浏览阅读2.8k次,点赞9次,收藏37次。目录引言关键缩写和包导入导入数据导出数据创建测试对象查看、检查数据数据选取数据清理数据处理:Filter、Sort和GroupBy数据合并数据统计一、Series和DataFrame介绍1、什么是pandas2、Series3、DataFrame二、Series和DataFrame的简单操作1、创建2、reindex()方法:重建索引针对Series针对DataFrame3、drop()方法针对S..._pandas dataframe 扩充日期

QT启动外部程序、运行状态监控、搭建运行环境(学习记录)-程序员宅基地

文章浏览阅读2.4k次,点赞3次,收藏21次。和包含启动m_pProcess->start(AA.exe);,外部独立启动时,QT界面的程序输出栏会输出外部程序的调试内容,包含启动方式不显示。QT程序关闭时,包含启动的程序会自动跟随关闭,独立启动的程序仍然会独立运行,无影响。为保持QT程序良好的移植性,可以在程序启动时自动设置临时环境变量,只在QT程序运行时有效,设置完临时环境变量之后再启动m_pProcess。程序启动内部调用cmd启动,直接运行AA.exe,系统无法找到该程序,需指定路径或者将AA.exe路径添加到系统环境中。

推荐文章

热门文章

相关标签