Java编程实现springMVC简单登录实例

时间:2022-11-19 17:13:36

spring mvc属于springframework的后续产品,已经融合在spring web flow里面。spring 框架提供了构建 web 应用程序的全功能 mvc 模块。使用 spring 可插入的 mvc 架构,从而在使用spring进行web开发时,可以选择使用spring的springmvc框架或集成其他mvc开发框架,如struts1,struts2等。

1.新建web项目:springmvc

2.导入springmvc需要的jar包

3.配置web.xml文件(核心代码)

?
1
2
3
4
5
6
7
8
9
<servlet>
   <servlet-name>spmvc</servlet-name>
   <servlet-class>org.springframework.web.servlet.dispatcherservlet</servlet-class>
   <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
   <servlet-name>spmvc</servlet-name>
  <url-pattern>*.do</url-pattern>  
 </servlet-mapping>

4.编写index.jsp页面(核心代码)

?
1
2
3
4
5
<form action="login.do" method="post">
  username:<input type="text" name = "username" ><p>
  password:<input type="password" name = "password" ><p>
  <input type="submit" value="登录">
</form>

5.编写loginsuccess.jsp 和 loginerror.jsp 页面 代码略(随意标记下就是)

6.编写java代码(核心代码)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@controller
public class loginaction {
  
  @requestmapping("login.do")
  public string login(string username,string password){
    if ("admol".equals(username)) {
      system.out.println(username +" 登录成功");
      return "loginsuccess";//逻辑视图名    跳转页面默认为转发
 
        system.out.println(username +" 登录成功");
    }
    return "loginerror";
  
}

注意:在导入modelandview包的时候是 导入servlet下的包。org.springframework.web.servlet.modelandview;
方法中的参数名必须和jsp页面传递过来的name属性名字一样

7.配置spmvc-servlet.xml文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?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:p="http://www.springframework.org/schema/p"
    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-3.0.xsd">
  <!-- 启用spring mvc注解 -->
  <context:annotation-config></context:annotation-config>
  <!-- 扫描包 -->
  <context:component-scan base-package="com.wjl.web"></context:component-scan>
  
  <!-- 对转向页面的路径解析。prefix:前缀, suffix:后缀  如:http://127.0.0.1:8080/springmvc/jsp/****.jsp-->
  <bean class="org.springframework.web.servlet.view.internalresourceviewresolver" p:prefix="/jsp/" p:suffix=".jsp"></bean>
</beans>

8.将项目发布到tomcat服务器并运行。

测试 结果:

Java编程实现springMVC简单登录实例

Java编程实现springMVC简单登录实例

使用其他方式传递:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/**
   * 返回的是一个modelandview
   * @param username 页面传递的用户名
   * @param password 页面传递过来的密码
   * @return
   */
  @requestmapping("login2.do")
  public modelandview login2(string username,string password){
    if ("admol".equals(username)) {
      system.out.println(username +" 登录成功2");
      return new modelandview("loginsuccess");//逻辑视图名    跳转页面默认为转发
    }
    return new modelandview("redirect:/jsp/loginerror");//以重定向的方式
  }
  
  /**
   * 传递一个javabean对象给控制器
   * @param users bean对象
   * @return
   */
  @requestmapping(value="login3.do",method=requestmethod.post)
  public modelandview login3(@modelattribute("users") users users){
    if ("admol".equals(users.getusername()) && "123".equals(users.getpassword())) {
      system.out.println(users.getusername() +"  "+ users.getpassword());
      return new modelandview("loginsuccess");
    }
    return new modelandview("redirect:/jsp/loginerror.jsp");//以重定向的方式
  }

jsp页面只需要改变下form表单的action就行。

users.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package com.wjl.bean;
 
public class users { 
  private string username;
  private string password;
  public string getusername() {
    return username;
  }
  public void setusername(string username) {
    this.username = username;
  }
  public string getpassword() {
    return password;
  }
  public void setpassword(string password) {
    this.password = password;
  }
 
}

测试结果就不写了。

踏实一些,不要着急,你想要的,岁月都会给你

总结

以上就是本文关于java编程实现springmvc简单登录实例的全部内容想,希望对大家有所帮助。如有不足之处,欢迎留言指出。

原文链接:https://www.cnblogs.com/admol/articles/4199546.html