• springMVC


      springMVC

     1 package net.liuzd.web.action;
     2 
     3 import javax.servlet.http.HttpServletRequest;
     4 import javax.servlet.http.HttpServletResponse;
     5 
     6 import net.liuzd.vo.User;
     7 
     8 import org.springframework.stereotype.Controller;
     9 import org.springframework.ui.Model;
    10 import org.springframework.web.bind.annotation.ModelAttribute;
    11 import org.springframework.web.bind.annotation.RequestMapping;
    12 import org.springframework.web.servlet.ModelAndView;
    13 
    14 @Controller
    15 @RequestMapping("/user.do")
    16 public class UserController {
    17 
    18     @SuppressWarnings("unchecked")
    19     @RequestMapping(params = "method=add")
    20     public String login(@ModelAttribute("user")
    21     User user, HttpServletRequest req, HttpServletResponse response) {
    22         // 此处调用服务层进行相应的业务操作
    23         System.out.println("用户信息: " + user);
    24         // 传递对象于下一页面
    25         req.setAttribute("user", user);
    26         // 调用服务层进行验证用户,此处只演示功能
    27         if ("spring".equals(user.getUserId())
    28                 && "spring".equals(user.getUserPassword())) {
    29             return "success";
    30         }
    31         return "error";
    32     }
    33 
    34     @SuppressWarnings("unchecked")
    35     // @RequestMapping(params= "method=add2",method=RequestMethod.POST)
    36     // 定义method方法不是必须的
    37     @RequestMapping(params = "method=add2")
    38     public ModelAndView login2(@ModelAttribute("user")
    39     User user, HttpServletRequest req, HttpServletResponse response) {
    40 
    41         // 此处调用服务层进行相应的业务操作
    42         System.out.println("用户信息2: " + user);
    43         // 使用ModelAndView保存对象于下一页面
    44         ModelAndView model = new ModelAndView();
    45         model.addObject("user", user);
    46         // 调用服务层进行验证用户,此处只演示功能
    47         if ("spring".equals(user.getUserId())
    48                 && "spring".equals(user.getUserPassword())) {
    49             model.setViewName("success");
    50         } else {
    51             model.setViewName("error");
    52         }
    53         return model;
    54     }    
    55     
    56     @RequestMapping(params = "method=add3")
    57     public String login3(@ModelAttribute("user")User user,Model model) {    
    58         
    59         model.addAttribute("user",user);          
    60         System.out.println("用户信息3: "+user);
    61         // 调用服务层进行验证用户,此处只演示功能
    62         if ("spring".equals(user.getUserId())    && "spring".equals(user.getUserPassword())) {
    63             return "success";
    64         }
    65         //放入model默认把参数存于请求
    66         model.addAttribute("msg","用户或者密码错误!");
    67         return  "error";
    68         
    69         /**
    70          * 重定向JSP页面,走出了springmvc配置的view(jsp)
    71          * 因为这样说明:model.addAttribute("msg","用户或者密码错误!"); 
    72          * 获取不到值了
    73          * 不加上.jsp就是这样:http://127.0.0.1:8080/Spring3-Login-Annotaction/index?msg=%E7...        
    74          * */        
    75         //返回到页面是乱码在页面中用${msg}获取不到值,用request.getParams("msg");为乱码
    76         //return "redirect:index.jsp?msg=用户或者密码错误!";        
    77     }    
    78 
    79 
    80 }
    View Code
     1 package net.liuzd.vo;
     2 
     3 public class User {
     4     
     5     private String userId = null;
     6     private String userPassword = null;
     7     
     8     public String getUserId() {
     9         return userId;
    10     }
    11     public void setUserId(String userId) {
    12         this.userId = userId;
    13     }
    14     public String getUserPassword() {
    15         return userPassword;
    16     }
    17     public void setUserPassword(String userPassword) {
    18         this.userPassword = userPassword;
    19     }
    20     
    21     public User() {
    22         
    23     }
    24     
    25     public User(String userId2, String userPassword2) {
    26         this.userId = userId2;
    27         this.userPassword = userPassword2;
    28     }
    29     @Override
    30     public String toString() {        
    31         return "userId: " + userId + ",userPassword: " + userPassword;
    32     }
    33 
    34 }
    View Code

    springmvc.xml

     1 <?xml version="1.0" encoding="UTF-8" ?>
     2 <beans xmlns="http://www.springframework.org/schema/beans" 
     3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4     xmlns:p="http://www.springframework.org/schema/p" 
     5     xmlns:context="http://www.springframework.org/schema/context"
     6     xsi:schemaLocation="
     7         http://www.springframework.org/schema/beans 
     8         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
     9         http://www.springframework.org/schema/context 
    10         http://www.springframework.org/schema/context/spring-context-3.0.xsd">
    11     <!-- 
    12          自动搜索@Controller标注的类
    13          用于指明系统从哪个路径下寻找controller,然后提前初始化这些对象。
    14      -->
    15     <context:component-scan base-package="net.liuzd.web.action" />    
    16     
    17     <!-- Default ViewResolver -->
    18     <bean id="viewResolver"
    19         
    20 
    21 class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    22         <property name="viewClass"
    23             value="org.springframework.web.servlet.view.JstlView" />
    24         <property name="prefix" value="/WEB-INF/jsp/" />
    25         <property name="suffix" value=".jsp"></property>
    26     </bean>   
    27     
    28  </beans>
    View Code

    web.XML

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
     3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
     5     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
     6 
     7     <filter>
     8         <filter-name>encodingFilter</filter-name>
     9         <filter-class>
    10             org.springframework.web.filter.CharacterEncodingFilter
    11         </filter-class>
    12         <init-param>
    13             <param-name>encoding</param-name>
    14             <param-value>UTF-8</param-value>
    15         </init-param>
    16         <init-param>   
    17             <param-name>forceEncoding</param-name>   
    18             <param-value>false</param-value>   
    19         </init-param>  
    20     </filter>
    21 
    22     <filter-mapping>
    23         <filter-name>encodingFilter</filter-name>
    24         <url-pattern>*.do</url-pattern>
    25     </filter-mapping>
    26     
    27     <filter-mapping>
    28         <filter-name>encodingFilter</filter-name>
    29         <url-pattern>*.jsp</url-pattern>
    30     </filter-mapping>
    31 
    32     <servlet>
    33         <servlet-name>springmvc</servlet-name>
    34         <servlet-class>
    35             org.springframework.web.servlet.DispatcherServlet
    36         </servlet-class>
    37         <init-param>
    38             <param-name>contextConfigLocation</param-name>            
    39             <!-- 
    40               指定XML文件位置
    41               <param-value>/WEB-INF/classes/springmvc.xml              
    42               <param-value>classpath*:springmvc.xml
    43              -->
    44              <!-- 在classpath路径下去寻找springmvc.xml文件 -->             
    45              <param-value>classpath:springmvc.xml
    46             </param-value>
    47         </init-param>
    48         <load-on-startup>1</load-on-startup>
    49     </servlet>
    50 
    51     <servlet-mapping>
    52         <servlet-name>springmvc</servlet-name>
    53         <url-pattern>*.do</url-pattern>
    54     </servlet-mapping>
    55     <welcome-file-list>
    56         <welcome-file>index.jsp</welcome-file>
    57     </welcome-file-list>
    58 
    59 </web-app>
    View Code

    index.JSP

     1 <%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
     2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     3 <html>
     4   <head>
     5     <%@ include file="/common/meta.jsp"%>
     6   </head>  
     7   <body>
     8      <form action="${pageContext.request.contextPath}/user.do?method=add" method="post">
     9         ID号: <input type="text" name="userId" id="userId"><br>
    10          密码: <input type="password" name="userPassword" id="userPassword"><br>
    11          <input type="submit" value="Login">
    12      </form>  <br>
    13      <form action="${pageContext.request.contextPath}/user.do?method=add2" 
    14 
    15 method="post">
    16         ID号: <input type="text" name="userId" id="userId"><br>
    17          密码: <input type="password" name="userPassword" id="userPassword"><br>
    18          <input type="submit" value="Login2">
    19      </form>  
    20       <br>
    21      <form action="${pageContext.request.contextPath}/user.do?method=add3" 
    22 
    23 method="post">
    24         ID号: <input type="text" name="userId" id="userId"><br>
    25          密码: <input type="password" name="userPassword" id="userPassword"><br>        
    26          <input type="submit" value="Login3">
    27      </form>       
    28   </body>
    29 </html>
    View Code

    error.jsp

     1 <%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
     2 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
     3 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     4 <html>
     5   <head>
     6      <%@ include file="/common/meta.jsp"%>
     7   </head>  
     8   <body>
     9       登录错误:ID号: ${user.userId},密码: ${user.userPassword},<font color='red'>${msg}</font><br>
    10      <a href="${pageContext.request.contextPath}/index.jsp">返回</a>
    11   </body>
    12 </html>
    View Code

    success.jsp

     1 <%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
     2 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
     3 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     4 <html>
     5   <head>
     6     <%@ include file="/common/meta.jsp"%>
     7   </head>  
     8   <body>
     9       欢迎你: ${user.userId}<br>
    10      <a href="${pageContext.request.contextPath}/index.jsp">返回</a>
    11   </body>
    12 </html>
    View Code
    ---- 动动手指关注我!或许下次你又能在我这里找到你需要的答案!ZZZZW与你一起学习,一起进步!
  • 相关阅读:
    java工程文件路径的问题
    to_char
    tnsname.ora
    Linux(Centos)快速搭建SVN
    /etc/profile不生效问题
    不同servlet版本的web.xml的头部信息
    The serializable class XXX does not declare a static final serialVersionUID field of type long的警告
    面试:第六章:面试题收集
    面试:第一章:java基础各种区别
    面试:第二章:各种框架和中间件以及缓存数据库
  • 原文地址:https://www.cnblogs.com/zzzzw/p/4849728.html
Copyright © 2020-2023  润新知