springmvc 之 helloworld
构建SPRINGMVC主要分为几个部分(大体方式为创建并配置2个XML文件、一个JAVA文件及一个JSP文件)。
一、创建动态JAVA WEB项目 //创建项目并导入JAR包。
二、创建并配置servlet文件 //创建并配置一个XML文件。
三、配置WEB.XML文件 //配置一个XML文件。
四、编写JAVA JAVA文件代码 //创建并配置一个JAVA文件。
五、创建JSP页面,访问 //创建一个JSP文件。
一、创建动态JAVA WEB项目。
1、创建项目 file-new-dynamic web project
2、下载spring相关jar包及commons-logging jar包。
3、创建完项目之后,将如上JAR包拷贝到webcontent文件夹(根目录)下的WEB-INF下的lib文件夹。系统将会自动载入JAR包。
二、创建并配置servlet文件。
1、在webcontent文件夹(根目录)下的WEB-INF下创建spring文件夹,并创建XML文件,文件名为“mvc-config.xml”文件,并导入如下代码。
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- prefix和suffix:查找视图页面的前缀和后缀(前缀[逻辑视图名]后缀) 比如传进来的逻辑视图名为hello,则该该jsp视图页面应该存放在“WEB-INF/jsp/hello.jsp” --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp" /> </bean> <!-- <bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> <property name="prefix" value="/jsp/" /> <property name="suffix" value=".jsp" /> </bean> --> <bean name="/hello.do" class="test.HelloWorldController" /> <context:component-scan base-package="test" /> </beans>
三、配置WEB.XML文件。
1、在配置完servlet(如上文件名为“mvc-config”的文件)的XML文件后,打开存放在webcontent文件夹(根目录)下的WEB-INF下的web.xml并导入如下代码。
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <session-config> <session-timeout>30</session-timeout> </session-config> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class> org.springframework.web.filter.CharacterEncodingFilter </filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring/*.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
四、编写JAVA JAVA文件代码 //创建并配置一个JAVA文件。
1、src目录下,创建一个test包,并创建一个JAVA文件,文件名为“HelloWorldController”,并导入如下代码。
package test; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller; // http://localhost:8080/spring/hello.do?user=java //@org.springframework.stereotype.Controller public class HelloWorldController implements Controller{ // @RequestMapping("/hello") public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) { ModelAndView mv = new ModelAndView(); // 添加模型数据 可以是任意的POJO对象 mv.addObject("user", request.getParameter("user")); // 设置逻辑视图名,视图解析器会根据该名字解析到具体的视图页面 mv.setViewName("hello"); return mv; } }
五、创建JSP页面,访问 //创建一个JSP文件。
1、在webcontent文件夹(根目录)下的WEB-INF下创建一个名为“JSP”文件夹,并在文件夹内创建JSP文件名为“hello.jsp”的文件并导入如下代码。
<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
<title>SpringMVC</title>
</head>
<body>
您好,${user }!
</body>
</html>
2、在ECLIPSE软件内配置好TOMCAT服务器,并START即可。
3、浏览器访问“http://localhost:8080/hi/hello.do?user=java”。
(hi 为项目名称,可根据自己的项目名称自行修改)
------------------------------------------------------------------------------
备注:以上已经完成了SPRINGMVC的基本运行示意,其中原始代码是来自网上并且我自行整理了一下,达到可以运行的目的,细化了部分细节。另外在运行如上代码时候可能遇到如下问题,我做了一下汇总,仅供参考。
1、TOMCAT无法启动,或者启动过程中发生404的问题,这个问题首先检查一下ECLIPSE内的console的输出日志查一下看是什么问题,我遇到一个问题是java类文件的JAR包并为生成到相关目录下,导致程序在编译的时候提示无法找到相关类文件。正确的做法为配置一下TOMCAT(双击 修改一下SERVER LOCATION,选择第二项)并重新编译。
2、如果仅引用SPRING JAR包会出现异常,需要同时引用COMMONS-logging 的JAR包。
3、如果是LINUX系统调试过程中出现404错误、配置TOMCAT时不能完成TOMCAT的FINISH(按钮为灰色)、已创建TOMCAT但无法引用、TOMCAT在START时提示错误等 基本为文件夹权限不够,如果软件默认装在OPT下,则配置"APACHE-TOMCAT-*"及“ECLIPSE”文件夹权限为777即可基本解决。
---以上为我在做调试过程中遇到的诸多问题,希望能给看到的人一些帮助。如果以上代码还不够明晰,请评论提出我及时补充。