SpringMVC---简单登录例子
所需jar包aopalliance-1.0.jar、commons-logging-1.2.jar、spring-aop-5.0.0.RELEASE.jar、spring-beans-5.0.0.RELEASE.jar、spring-context-5.0.0.RELEASE.jar、spring-core-5.0.0.RELEASE.jar、spring-expression-5.0.0.RELEASE.jar、spring-tx-5.0.0.RELEASE.jar、spring-web-5.0.0.RELEASE.jar、spring-webmvc-5.0.0.RELEASE.jar下载
aopalliance-1.0.jar这个包是AOP联盟的API包,里面包含了针对面向切面的接口。通常Spring等其它具备动态织入功能的框架依赖此包。aopalliance-1.0.jar下载地址:http://www.findjar.com/index.x,搜索aopalliance,选择aopalliance版本,点击Download后面的地址,选择aopalliance,再选择aopalliance,选择版本,下载jar包
web.xml:WEB-INF文件夹下
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:jsp="http://java.sun.com/xml/ns/javaee/jsp" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name></display-name> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:applicationContext.xml</param-value> </context-param> <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping> </web-app>
spring-mvc.xml:WEB-INF文件夹下
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" 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/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"> <context:component-scan base-package="com.studySpringMVC" /> </beans>
login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>登录</title> </head> <body> <form action="login.html" method="post"> <p> 用户名: <input name="uname" type="text"> </p> <p> 密 码: <input name="upasswd" type="password"> </p> <p> <input type="submit"> </p> </form> <font color="red">${error}</font> </body> </html>
success.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登录成功</title>
</head>
<body>
<h1>登录成功</h1>
</body>
</html>
LoginController.java
package com.studySpringMVC.controller; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import com.studySpringMVC.service.LoginService; @Controller public class LoginController { @Resource LoginService service; @Resource HttpServletRequest request; @RequestMapping("index") public ModelAndView toLoginPage(){ return new ModelAndView("WEB-INF/jsp/login.jsp"); } @RequestMapping("login") public ModelAndView doLogin(){ String loginPageUrl = "WEB-INF/jsp/login.jsp"; String successPageUrl = "WEB-INF/jsp/success.jsp"; String uname = request.getParameter("uname"); String upasswd = request.getParameter("upasswd"); return service.doLogin(loginPageUrl, successPageUrl, uname, upasswd); } }
LoginService.java
package com.studySpringMVC.service; import org.springframework.stereotype.Service; import org.springframework.web.servlet.ModelAndView; @Service public class LoginService { public ModelAndView doLogin(String loginPageUrl, String successPageUrl, String uname, String upasswd) { if (uname == null || "".equals(uname)) { return new ModelAndView(loginPageUrl, "error", "用户名不能为空"); } if (upasswd == null || "".equals(upasswd)) { return new ModelAndView(loginPageUrl, "error", "密码不能为空"); } // uname = admin , passwd = 123 if (uname.equals("admin") && upasswd.equals("123")) { return new ModelAndView(successPageUrl); } return new ModelAndView(loginPageUrl, "error", "用户名或者密码错误"); } }