• Spring MVC技术之【上机】


    1.【上机】配置mvc环境

    2.【上机】使用注解的方式实现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-4.3.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context-4.3.xsd
            http://www.springframework.org/schema/mvc 
            http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd">
    
            <!-- 1.配置注解 -->
            <context:annotation-config></context:annotation-config>
            <context:component-scan base-package="renjiale"></context:component-scan>
            
            <!-- 2.MVC的注解配动 -->
            <mvc:annotation-driven></mvc:annotation-driven>
            <!-- 3.配置viewresovler视图处理器 -->
                <!-- rest风格: http://域名/index.jsp -->
            <bean id="myspringmvc" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
                <property name="prefix" value="/"></property>
                <property name="suffix" value=".jsp" ></property>
                    <!-- 根据前缀和后缀找到对应的页面,OK -->
            </bean>
            <!-- 4. 编写代码-->
            <!-- 5.配置dispatcherServlet(MVC)自动配置;在web.xml配置servlet -->
            <!-- 6.编写servlet -->
            <bean id="dispatcherServlet" class="org.springframework.web.servlet.DispatcherServlet"></bean>
            <!-- 7.编写测试代码-jsp页面 -->
            <!-- 8.MVC处理请求,编写业务类 -->
            <!-- 9. 当在.jsp点击请求,让业务类中的方法来处理请求 -->
            <!-- 10.controller使用注解实现控制器 -->
            <!-- 11.jsp请求找多个业务类 @RequestMapping  找对应的方法@RequestMapping-->
            <!-- 12.请求后.jsp页面跳转到指定地方 -->
    </beans>
    <?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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
      <display-name>web_cookie</display-name>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
    
        <servlet>
            <servlet-name>mvc01</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>mvc01</servlet-name>
            <!-- 注: 所有请求MVC来处理 -->
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    </web-app>
    <%@ 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>Insert title here</title>
    </head>
    <body>
        <h1>这里是index.jsp页面</h1>
        <a href="mav/show">测试</a>
            <!-- MVC处理请求 -->
    </body>
    </html>
    <%@ 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>Insert title here</title>
    </head>
    <body>
        <h1>这里是sucess页面</h1>
    </body>
    </html>
    package renjiale.controller;
    import java.io.UnsupportedEncodingException;
    
    import javax.servlet.http.HttpServletRequest;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.servlet.ModelAndView;
    
    
    @Controller
    @RequestMapping("/mvc")
    public class MyFormMVC {
        @RequestMapping(value="show")
        public ModelAndView show() {
            System.out.println("show方法执行了");
            ModelAndView mav = new ModelAndView();
            mav.setViewName("suc");
            return mav;
        }
        /*@RequestMapping(value="way2")
        public String show2(@RequestParam(value="msg")String myMsg,@RequestParam(value="str")String mystr) {
            System.out.println("show2()方法执行了............");
            System.out.println("从页面上接收到的信息:"+"msg:"+myMsg+",mystr:"+mystr);
            return "suc";
        }*/
        /*@RequestMapping(value="show2")
        public String show2(String msg,String str) {
            System.out.println("从页面上接收到的信息:"+"msg:"+msg+",mystr:"+str);
            return "suc";
        }*/
        
        @RequestMapping(value="show2")
        public String show2(HttpServletRequest request,Model model) {
            String msg = request.getParameter("msg");
            String str = request.getParameter("str");
            System.out.println("从页面上接收到的信息:"+"msg:"+msg+",mystr:"+str);
            //处理完请求, 如何把参数传回到页面
            //数据返回到页面
            
            String reply =str +"myspringmvc"; 
            
             //把数据信息传到 suc.jsp页面上
            request.setAttribute("reply", reply);
            
            
            //MVC更简洁的方式传递参数
            model.addAttribute("str",reply);
            return "suc";
        }
        
    }

    3.【上机】实现Spring MVC注册实现和过程中的一些问题

    <%@ 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>Insert title here</title>
    </head>
    <body>
        <h1>是注册页面</h1>
        <!-- get方式是地址栏信息提交 -->
        <!-- http://localhost:8080/Spirng_mvc_form/mvc/reg?username=renjiale&pwd=123456&confirmpwd=123456&realname=%E4%BB%BB%E5%AE%B6%E4%B9%90 -->
        <form action="mvc/reg" method="get">
            用户名: <input type="text" name="username" value="renjiale"><br/>
            密码:<input type="password" name="pwd" value="123456"><br/>
            确认密码:<input type="text" name="confirmpwd" value="123456"><br/>
            真实姓名:<input type="text" name="realname" value="任家乐"><br/>
            <input type="submit" value="注 册">
        </form>
    </body>
    </html>
    package renjiale.controller;
    import java.io.UnsupportedEncodingException;
    
    /** 
     *    1. 页面上 post请求-get (HTTP Status 405 – Method Not Allowed)
     *     2. post - method=RequestMethod.POST 可以
     *     3. get - method=RequestMethod.GET 可以
        
            乱码:
                  1.filter过滤器
                  2.get方式
                      a.new String
                      b.connector-port
     * 
     */
    import javax.servlet.http.HttpServletRequest;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.servlet.ModelAndView;
    
    import renjiale.pojo.Users;
    
    @Controller
    @RequestMapping("/mvc")
    public class MyFormMVC {
        
        @RequestMapping(value="reg", method=RequestMethod.GET)
        public String registerMethod(Users users,HttpServletRequest request) {
            System.out.println("注册方法执行了");
            String realname = users.getRealname();
            try {
                realname = new String(realname.getBytes("IOS-8859-1"),"utf-8");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
            System.out.println(users.getUsername()+users.getPwd()+users.getConfirmpwd()+users.getRealname());
            
            return "suc";
        }
    }
                              
    package renjiale.pojo;
    /*
    *通过实体类, 封装数据
    */
    import java.io.Serializable; public class Users implements Serializable { private String username; private Integer pwd; private Integer confirmpwd; private String realname; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Integer getPwd() { return pwd; } public void setPwd(Integer pwd) { this.pwd = pwd; } public Integer getConfirmpwd() { return confirmpwd; } public void setConfirmpwd(Integer confirmpwd) { this.confirmpwd = confirmpwd; } public String getRealname() { return realname; } public void setRealname(String realname) { this.realname = realname; } @Override public String toString() { return "Users [username=" + username + ", pwd=" + pwd + ", confirmpwd=" + confirmpwd + ", realname=" + realname + "]"; } }

    4.【上机】实现Spring MVC和AJAX的交互,包括接收json请求参数

    5.【上机】使用Spring MVC实现文件上传

    6.【上机】Spring MVC使用二种方式实现自定义拦截器

    7.【上机】使用自定义拦截器实现用户登录验证

    8.【上机】集成Spring与Spring MVC

    9.【上机】集成Spring与Spring MVC加JDBC,实现对用户的CRUD操作

  • 相关阅读:
    用jquery判断当前显示器的分辨率,加载不同CSS
    [置顶] Android SDK下载和更新失败的解决方法!!!
    [置顶] 最全的Android开发开发资料
    [置顶] Android入门教程导入现有Android工程
    [置顶] 用Android访问本地站点(localhost,10.0.2.2)
    [置顶] Android入门教程Android工程目录结构介绍
    [置顶] 解决Android解析图片的OOM问题
    [置顶] Android入门教程环境搭建
    [置顶] Android 中的拿来主义(编译,反编译,AXMLPrinter2,smali,baksmali)
    Windows 8 平板电脑体验及思考
  • 原文地址:https://www.cnblogs.com/ren549047861/p/11310491.html
Copyright © 2020-2023  润新知