SpringMVC如何往前台传递参数

2025-11-05 03:32:19

1、下载这些jar包,或者使用maven配置这些依赖。

SpringMVC如何往前台传递参数

2、项目文件夹结构如下

SpringMVC如何往前台传递参数

SpringMVC如何往前台传递参数

3、RootConfig类

package web.config;

import org.springframework.context.annotation.ComponentScan;

import org.springframework.context.annotation.Configuration;

import org.springframework.web.servlet.config.annotation.EnableWebMvc;

import org.springframework.context.annotation.FilterType;

@Configuration

@ComponentScan(basePackages = { "web" }, excludeFilters = {

@ComponentScan.Filter(type = FilterType.ANNOTATION, value = EnableWebMvc.class) })

public class RootConfig {

}

SpringMVC如何往前台传递参数

4、SpringWebAppInitializer类

package web.config;

import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

public class SpringWebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {

    protected Class<?>[] getRootConfigClasses() {

        return new Class<?>[] { RootConfig.class };

    }

    // 指定配置类,即javaConfig

    protected Class<?>[] getServletConfigClasses() {

        return new Class<?>[] { WebConfig.class };

    }

    protected String[] getServletMappings() {

        return new String[] { "/" };

    }

}

SpringMVC如何往前台传递参数

5、WebConfig类

package web.config;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.ComponentScan;

import org.springframework.context.annotation.Configuration;

import org.springframework.web.servlet.ViewResolver;

import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;

import org.springframework.web.servlet.config.annotation.EnableWebMvc;

import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

import org.springframework.web.servlet.view.InternalResourceViewResolver;

@Configuration

// 启用注解驱动的spring mvc

@EnableWebMvc

@ComponentScan(basePackages = { "web.controller" })

public class WebConfig extends WebMvcConfigurerAdapter {

@Bean

public ViewResolver viewResolver() {

InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();

internalResourceViewResolver.setViewClass(org.springframework.web.servlet.view.JstlView.class);

internalResourceViewResolver.setPrefix("/WEB-INF/views/");

internalResourceViewResolver.setSuffix(".jsp");

internalResourceViewResolver.setExposeContextBeansAsAttributes(true);

return internalResourceViewResolver;

}

// 处理静态资源的时候,将请求转发到Servlet容器中默认的Servlet上

@Override

public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {

configurer.enable();

super.configureDefaultServletHandling(configurer);

}

}

SpringMVC如何往前台传递参数

1、package web.controller;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

@Controller

public class HomeController {

@Autowired  

private HttpSession session;  

 

@Autowired  

private HttpServletRequest request;  

@RequestMapping(value = "home", method = RequestMethod.GET)

public String home() {

session.setAttribute("a", 1);

request.setAttribute("b", 2);

return "home";

}

}

SpringMVC如何往前台传递参数

1、package web.controller;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

@Controller

public class HomeController {

@RequestMapping(value = "home", method = RequestMethod.GET)

public String home(HttpSession session,HttpServletRequest request) {

session.setAttribute("a", 1);

request.setAttribute("b", 2);

return "home";

}

}

SpringMVC如何往前台传递参数

1、home.jsp内容:

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <base href="<%=basePath%>">

    

    <title></title>

    

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">    

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

  </head>

  

  <body>

  <%=session.getAttribute("a") %>

  <%=request.getAttribute("b") %>

  </body>

</html>

SpringMVC如何往前台传递参数

1、可以看到

setAttribute发生了作用。

SpringMVC如何往前台传递参数

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢