今天開始在maven項目下加入spring。
邊學習邊截圖。
在這個過程中我新建了一個hellospring的項目。於是乎從這個項目出發開始研究如何在maven項目中使用spring。鑒於網上的學習資料都是spring與jsp的整合。所以在這里我也使用spring+jsp。
從一個新建的maven項目hellospring出發開始研究。
以此篇文章作為參考搭建我的第一個spring程序,雖然可能會有很多的不成熟的地方。
選擇pom文件,並打開,如下所示
增加Properties:展開Properties選項,然后點擊Create…按鈕,如下所示:然后Name字段填入 springVersion,Value字段填入3.2.5.RELEASE。即在pom.xml中增加了一個屬性springVersion,屬性值為 3.2.5.RELEASE。
選擇Dependencies標簽,打開Dependencies選項卡,並增加一個新的Dependency。
Group Id:org.springframework
Artifact Id:spring-web
Version:${springVersion}
點擊ok按鈕。
說明:該過程是加入springframe的spring-web依賴庫,${springVersion}是之前設置的屬性。
新建Dependency:
Group Id:org.springframework
Artifact Id:spring-webmvc
Version:${springVersion}
點擊ok按鈕。
說明:該過程是加入springframe的spring-webmvc依賴庫,${springVersion}是之前設置的屬性。
CTRL+S鍵保存
依賴庫設定完之后,如果本地不存在還需要從網絡上下載相應的依賴庫,選中pom.xml文件,右擊鼠標選中Run AS – maven install,然后系統自動從網絡上下載相應的依賴庫。
然后進入了較長的下載時間
依賴庫下載完之后,可以在目錄JavaResources – Liraries – Maven Dependencies中看到相應的庫文件,如下圖所示:
在這個過程結束后pom.xml文件變成了
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.swb</groupId> <artifactId>helloSpring</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>helloSpring Maven Webapp</name> <url>http://maven.apache.org</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>${springVersion}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${springVersion}</version> </dependency> </dependencies> <build> <finalName>helloSpring</finalName> </build> <properties> <springVersion>3.2.5.RELEASE</springVersion> </properties> </project>
在上面是maven要引入最簡單的spring的一個必要經歷的步驟,下面就建一個例子,來演示helloworld。
在src/main/java中新建類Hello.java。包名為com.springmvc.controller。
內容如下
package com.springmvc.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class Hello { @RequestMapping(value="/Hello") public String HelloWorld(Model model){ model.addAttribute("message","Hello World!!!"); return "HelloWorld"; } }
在src – main –webapp – WEB-INF目錄下新建文件夾view,並新建文件HelloWorld.jsp。
HelloWorld.jsp內容如下
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <h1>message:${message}</h1> </body> </html>
選中web.xml文件,雙擊打開該文件,修改該文件使其如下所示:
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>spring-mvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>spring-mvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
在src – main –webapp – WEB-INF目錄下新建文件spring-mvc-servlet.xml,文件內容如下所示:
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> <context:component-scan base-package="com.springmvc.controller" /> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/view/" /> <property name="suffix" value=".jsp" /> </bean> </beans>
Ok,所有文件已經建立完畢,現在可以運行該項目,看一下效果如何了,選中該項目(點擊com.liuht.springmvc,即該項目的最頂層),點擊Run As – Run on Server。
雖然我的jsp頁面報錯,但是還是可以運行的,運行結果為
接下來解決jsp頁面報錯的問題
JavaWeb: 報錯信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
好久不寫Jsp,今天建立了一個Javaweb工程,並在eclipse中配置了Web容器Tomcat。原本開心的新建jsp頁面,添加一個簡單的Java類。可是,JSP頁面頂端出現“紅色”的報錯信息:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path。原來Javaweb工程類中沒有添加Tomcat運行時相關類導致。
下面是具體的解決方法:
1、右擊web工程-》屬性或Build Path-》Java Build Path->Libraries-> Add Libray...->Server Runtime -》Tomcat Server

