SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

首先:创建项目,在使用SpringMVC之前,我们照例需要先导入springframework的jar包:

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

除了上述的二十个jar包之外,我们还需要一个名为一个如下的jar包:

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

如果不添加这个jar包,运行项目则会出现

java.lang.NoClassDefFoundError: Lorg/apache/commons/logging/Log;这个异常。

然后:我们就要配置web.xml文件了。

配置web.xml文件有一个简单的方法,只需要在配置文件中按“ALT”+"/"——提示键就可以得到提示内容,在内容的最下面可以添加具体的配置信息,如图:

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

(不要打上“<”,否则提示不出来)

当我们选择了dispatcherservlet之后就能得到如下的配置信息:

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

第20行的location是你的SpringMVC的配置文件可以写成诸如:classpath:spring-servlet.xml;

而第28的url则换成“/”就可以了,这个是访问的默认路径。

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

接下来:就该写我们的SpringMVC配置文件了。右键点击项目的src目录,“new”一个“other”,输入Spring找到如下这个文件

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

(注:如果输入spring而没有任何提示内容的话,就说明你没有添加上spring的插件。关于这一点可以去网上搜索过程,这里就不再赘述。)

点击next,next进入下面的界面:

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

勾选aop,bean,c,mvc,context,如果没有选中,则在配置文件中使用它们时会报错。

除了上述文件之外,还需要新建一个名为“applicationContext.xml”的配置文件,创建方法同上,但不需要写内容。在src目录下创建好之后就不必再去理会。

建好之后,配置以下内容:


SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

第11行的<context:annotation-config />是为了在处理请求的class中使用注释。

而第12,因为我们在web.xml中配置的路径是“/”,所以需要第12行(<mvc:default-servlet-handler />)截获请求。如果没有这一配置控制台不会报错,但无法跳转并给出如下警告。

警告: No mapping found for HTTP request with URI [/SpringMVC1/] in DispatcherServlet with name 'springDispatcherServlet'。

第13行<mvc:annotation-driven></mvc:annotation-driven>提供数据绑定支持和并解决了@Controller注解使用的前提配置

第14到18行则是跳转路径的配置,14行是处理请求的class路径,15行是控制器。

第18行是你需要跳转的jsp页面的路径和后缀,而中间的值则由处理请求的class提供。(如果你是在“WebContent”下创建的jsp文件夹,则写成“/jsp/”即可

最后:就该创建我们用来处理请求的class文件了。

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

这里的包名与SpringMVC配置文件中的路径必须相同。


类创建完成之后,在类上的上面添加注解——“@Controller”,可以用来处理请求。

在类内部添加@RequestMapping("/test"),括号内的值为需要访问的路径。

创建返回值为String类型的方法,返回值为你的jsp页面的名字。

如图:

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

最最后:在你的jsp文件夹下创建与返回值相同的jsp。(比如我的就是“hello.jsp”)

运行:

SpringMVC之一个简单的helloworld项目(从配置信息到请求处理)

控制台输出内容,页面跳转成功,项目完成。

我个人理解的SpringMVC流程大致如下:从页面发送“test”请求,通过“test”找到hello方法并返回值“hello”,返回值“hello”回传到你的spring-servlet.xml配置文件,由配置文件拼接完整的访问路径,跳转完成。