美文网首页
SpringMVC项目搭建

SpringMVC项目搭建

作者: aix91 | 来源:发表于2019-03-13 21:23 被阅读0次

1. 建立项目

  • 建立java项目
  • 在项目根目录下新建webapp文件夹;在webapp下新建一个WEB-INF文件夹(浏览器不会访问到该目录下的资源。tomcat在启动时,会在此目录下读取配置文件)
  • 在WEB-INF下建立一个web.xml 文件。tomcat启动后本身会加载安装路径下的大配置文件web.xml, 当发现项目的WEB-INF下也存在web.xml时,会作为分配置文件一并加载。
  • WEB-INF建立lib文件,用来存放相关jar包

2. web.xml 配置

  • Load-on-startup: 在web应用启动时,指定servlet被加载的顺序;如果值是负整数,或者没有指定,那么容器会在该servlet被调用的时候,加载这个servlet。如果是正整数或0,容器在配置的时候就加载并初始化这个servlet。值越小就越先被加载。
  • 加载顺序
    ServletContext -> context-param -> listener -> filter -> servlet
    <context-param>用于向ServletContext提供键值对,这些参数,在listener,filter初始化的时候会用到。
  • 基本元素介绍
属性 功能 备注
discription 描述
display-name 定义名称
context-param 环境参数 它包含两个子元素param-name,param-value;参数的值,可以使用getServletContext().getInitParameter("para_name")获取到
filter 声明filter 它包含三个子元素:filter-name,filter-class,init-param
filter-mapping 定义filter所对应的URL 包含:filter-name,url-pattern子元素
listener 设定listener接口 包含listener-class子元素
servlet 声明一个servlet 子元素:servlet-name,servlet-class, jsp-file, init-param
servlet-mapping 定义servlet对应的URL servlet-name,url-pattern
  • 指定spring配置文件的位置
 <context-param>    
       <param-name>contextConfigLocation</param-name>    
       <param-value>    
         /WEB-INF/applicationContext.xml, /WEB-INF/action-servlet.xml    
       </param-value>    
</context-param>  
  • 指定listener
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

ContextLoaderListener 可以指定在web程序启动时载入IOC容器。请参考ContextLoaderListener的作用

  <servlet>
    <servlet-name>SpringDispatchedServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>SpringDispatchedServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

3. SpringDispatchedServlet-servlet.xml文件指定Servlet context

在这个文件里,可以指定HandlerMapping,HandlerAdapter, ViewResolver... servlet相关组件。

    <context:component-scan base-package="com.test.controller"/>

由于SpringMVC提供了默认的servlet组件,为了方便就不自定义相关组件。

4. 测试controller

@Controller
public class TestController {

    @Autowired
    private Demo demo;

    @RequestMapping(value = "/test", method = RequestMethod.GET)
    @ResponseBody
    public String test() {
        TDKRequestParam param = new TDKRequestParam();
        param.setDomain("domain");
        param.setPage("test");
        param.setUrl("/243433/854003/");
        SResult<Meta> s = demo.getResult(param);
        return s.getData().getDescription();
    }
}

相关文章

网友评论

      本文标题:SpringMVC项目搭建

      本文链接:https://www.haomeiwen.com/subject/vqreuqtx.html