5. SpringMVC注解类实践例子1
2016-03-07 23:12
597 查看
本系列入门学习参考极客学院Spring入门系列视频学习记录总结而来
添加依赖jar:
web.xml
springmvc.xml
index.jsp 登陆引导
login.jsp 登陆
loginsuccess.jsp 登陆成功
bean:
dao:
service:
controller:
添加依赖jar:
<properties> <spring.version>4.0.5.RELEASE</spring.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.7</java.version> <jackson.version>2.3.1</jackson.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-oxm</artifactId> <version>${spring.version}</version> </dependency> <!-- jackson start --> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-core-asl</artifactId> <version>1.9.12</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-lgpl</artifactId> <version>1.9.12</version> </dependency> <!-- jackson end --> </dependencies>
web.xml
<?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> <!-- 使用.html作为请求后缀 --> <url-pattern>*.html</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
springmvc.xml
<?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" xmlns:util="http://www.springframework.org/schema/util" 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 http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"> <!-- 自动扫描 com.dragon 包下面的所有组件(使用了springmvc注解) --> <context:component-scan base-package="com.dragon" /> </beans>
index.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> <div style="margin:0 auto; padding-top: 100px; font-size: 18px;" align="center"> <p><a href="login.html"> 登录系统 </a></p> </div> </body> </html>
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> <div style="margin: 0 auto; padding-top: 100px;" align="center"> <form action="doLogin.html" method="post"> <p> <span>用户名:</span><input type="text" name="username"> </p> <p> <span>密 码:</span><input type="password" name="password"> </p> <p> <input type="submit" value="登录"> </p> <p style="color: red;">${error }</p> </form> </div> </body> </html>
loginsuccess.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> <div style="margin: 0 auto; padding-top: 100px;" align="center"> <h1>${user.username },恭喜您,登录成功!</h1> <a href="doLogout.html">退出登录</a> </div> </body> </html>
bean:
public class User { 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; } }
dao:
import org.springframework.stereotype.Repository; import com.dragon.springmvc.bean.User; @Repository public class UserDao { public User selectByUsername(String username) { // admin if ("admin".equals(username)) { User user = new User(); user.setPassword("123"); user.setUsername("admin"); return user; } return null; } }
service:
import javax.annotation.Resource; import org.springframework.stereotype.Service; import com.dragon.springmvc.bean.User; import com.dragon.springmvc.dao.UserDao; @Service public class UserService { @Resource UserDao dao; public User doLogin(String username, String passwrod) throws Exception { if (username == null || "".equals(username)) { throw new Exception("用户名不能为空"); } if (passwrod == null || "".equals(passwrod)) { throw new Exception("密码不能为空"); } User user = dao.selectByUsername(username); if (user == null) { throw new Exception("用户名不存在"); } if (!user.getPassword().equals(passwrod)) { throw new Exception("密码错误"); } return user; }
controller:
import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.SessionAttributes; import org.springframework.web.bind.support.SessionStatus; import com.dragon.springmvc.bean.User; import com.dragon.springmvc.service.UserService; @Controller @SessionAttributes("user") public class UserController { @Resource UserService service; @RequestMapping("login") public String toLoginPage() { return "/WEB-INF/jsp/login.jsp"; } @RequestMapping(value = "doLogin", method = RequestMethod.POST) public String doLogin(@RequestParam String username, @RequestParam String password, HttpServletRequest request, ModelMap map) { try { User user = service.doLogin(username, password); //将该user放入session中 map.put("user", user); } catch (Exception e) { request.setAttribute("error", e.getMessage()); return "/WEB-INF/jsp/login.jsp"; } return "/WEB-INF/jsp/loginsuccess.jsp"; } @RequestMapping("doLogout") public String doLogout(SessionStatus status) { //清楚session中该对象 status.setComplete(); return "/WEB-INF/jsp/login.jsp"; } }
相关文章推荐
- 分享微信开发Html5轻游戏中的几个坑
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- Spring整合Quartz(JobDetailBean方式)
- Spring整合Quartz(JobDetailBean方式)
- Zend的MVC机制使用分析(二)
- ASP.NET MVC 4 捆绑和缩小实例介绍
- ASP.NET Mvc开发之查询数据
- ASP.NET MVC中将控制器分离到类库的实现
- asp.net实现在非MVC中使用Razor模板引擎的方法
- ASP.NET MVC中的AJAX应用
- 为ASP.NET MVC及WebApi添加路由优先级
- ASP.NET MVC中图表控件的使用方法
- ASP.NET MVC的四种验证编程方式
- 仅30行代码实现Javascript中的MVC
- ASP.NET MVC 3仿Server.Transfer效果的实现方法
- 如何在MVC应用程序中使用Jquery
- ASP.NET MVC小结之基础篇(二)
- ASP.NET小结之MVC, MVP, MVVM比较以及区别(一)