300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > eclipse maven 构建简单springmvc项目

eclipse maven 构建简单springmvc项目

时间:2020-02-01 02:32:05

相关推荐

eclipse maven 构建简单springmvc项目

环境:eclipse Version: Oxygen.3a Release (4.7.3a)

创建maven Project项目,目录结构

修改工程的相关编译属性

修改pop.xml,引入springmvc相关包

<project xmlns="/POM/4.0.0"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/POM/4.0.0 /maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>xuan</groupId><artifactId>springmvc</artifactId><packaging>war</packaging><version>0.0.1-SNAPSHOT</version><name>springmvc Maven Webapp</name><url></url><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>3.0.5.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>3.0.5.RELEASE</version></dependency><dependency><groupId>org.apache.geronimo.specs</groupId><artifactId>geronimo-servlet_2.5_spec</artifactId><version>1.2</version></dependency></dependencies><build><finalName>springmvc</finalName></build></project>

配置web.xml,使其具有springmvc特性,主要配置两处,一个是ContextLoaderListener,一个是DispatcherServlet。代码如下:

<?xml version="1.0" encoding="UTF-8"?><web-app version="2.4" xmlns="/xml/ns/j2ee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/j2ee /xml/ns/j2ee/web-app_2_4.xsd"><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><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><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list></web-app>

配置ContextLoaderListener表示,该工程要以spring的方式启动。启动时会默认在/WEB-INF目录下查找applicationContext.xml作为spring容器的配置文件,这里可以初始化一些bean,如DataSource。我们这里什么也不做。

applicationContext.xml代码如下:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "/dtd/spring-beans.dtd"><beans></beans>

配置DispatcherServlet表示,该工程将采用springmvc的方式。启动时也会默认在/WEB-INF目录下查找XXX-servlet.xml作为配置文件,XXX就是DispatcherServlet的名字,该文件中将配置两项重要的mvc特性:

HandlerMapping,负责为DispatcherServlet这个前端控制器的请求查找Controller;

ViewResolver,负责为DispatcherServlet查找ModelAndView的视图解析器。

springmvc-servlet.xml代码如下:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xmlns:p="/schema/p"xmlns:mvc="/schema/mvc"xmlns:context="/schema/context"xmlns:util="/schema/util"xsi:schemaLocation="/schema/beans /schema/beans/spring-beans-3.0.xsd /schema/context /schema/context/spring-context-3.0.xsd /schema/mvc /schema/mvc/spring-mvc-3.0.xsd /schema/util /schema/util/spring-util-3.0.xsd"><!-- 激活@Controller模式 --><mvc:annotation-driven /><!-- 对包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能 需要更改 --><context:component-scan base-package="org.xuan.springmvc.controller" /><bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /><bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/jsp/" /><property name="suffix" value=".jsp" /></bean></beans>

编写Controller类,MainController.java

package org.xuan.springmvc.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.ModelMap;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.servlet.ModelAndView;@Controllerpublic class MainController {@RequestMapping(value = { "/", "/index" })public ModelAndView index(ModelMap model) {ModelAndView mav = new ModelAndView("index");mav.addObject("command", "Hello World!");return mav;}}

在WEB-INF下面新建jsp目录,把index.jsp移动到jsp目录下面,修改index.jsp文件:

<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Insert title here</title></head><body>${command}</body></html>

整个项目的目录结构如下:

运行效果如下图:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。