Spring MVC annotation

 

1. web.xml

    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

/表示任意的请求都通过springmvc来处理

2. springmvc-servlet.xml

    <!-- 这两行比较重要,使用默认的注解映射-->
    <context:component-scan base-package="com.controller" />
    <mvc:annotation-driven />

    <!-- 配置视图解析器 -->
    <bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!-- 前缀 -->
        <property name="prefix" value="view/"></property>
        <!-- 后缀 -->
        <property name="suffix" value=".jsp"></property>
    </bean>

3. 修改控制器

package com.controller;

import java.util.Map;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class TestController {    
    // 400 请求出错
    
    @RequestMapping("sb")
    public String hello() {
        System.out.println("----------------");
        return "st";        
    }
    
    @RequestMapping("welcome")
    //public String welcome_s(@RequestParam("username") String username) {
    public String welcome_s(String username, Map<String, Object> context) {
        System.out.println("username:" + username);
        //传值给下文
        context.put("name", username);
        return "st";        
    } 
    
    @RequestMapping("xt")
    public String welcome_t(String username, Model model) {
        System.out.println("username:" + username);
        //传值给下文
        model.addAttribute("name", username);
        return "st";        
    }
}

往下文传值有多重方式,使用Map,或者Model

view/st.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<p>--------------${name}------</p>
</body>
</html>

 

访问:

http://127.0.0.1:8080/springwebtest/sb

http://127.0.0.1:8080/springwebtest/welcome?username=cm

 

posted @ 2017-01-14 16:23  牧 天  阅读(182)  评论(0)    收藏  举报