標籤:asp cte end star jquery 尾碼 drive 高版本 property
在上一章中採用了最簡單的建立service端代碼方式,但在實際開發中一般都會採用比較成熟的架構。以下是完整的maven+spring mvc 建立service的方式
下載安裝Eclipse 和jdk
這裡須要注意一下eclipse jdk選擇版本號碼的位元要一直。不能一個是32位一個是64位,不一致會造成後面使用時有錯誤
完成下載以後須要配置jdk的環境變數 jdk7配置 jdk10配置。
下載安裝Maven並配置環境變數
依照完成以後我們須要配置使用者範圍setting.xml
安裝資料夾/conf/setting.xml是全域的設定,這個電腦上全部的使用者都會受影響,所以將安裝資料夾/conf/setting.xml複製一份,到上面配置倉庫位置中,預設不設定路徑在c:/使用者/使用者名稱/.m2下
高版本號碼的Eclipse預設帶有maven的外掛程式。假設沒有的我們能夠自己下載
http://m2eclipse.sonatype.org/sites/m2e
配置Eclipse
在Window——Preferences——Maven
installations勾掉預設的maven,add安裝的maven檔案夾
user Settings中選擇本地倉庫配置的setting.xml。如我的E:\m2\settings.xml
用Maven來構建工程在Eclipse中選擇建立Maven project。選擇工作環境
1、選擇要建立的filter例如以下:
2、填寫maven項目座標資訊
這裡的Group Id就是大項目的id,Arifact Id就是該項目的Id。就像一個大項目中有很多小項目組成一樣
我們產生的項目結構例如以下
完好項目
首先,完好檔案夾,添加重要的source Folder,這個在以下config build path會用到。須要添加
添加src/main/resources。src/test/resources檔案夾。讓檔案夾變成標準的maven結構。
把項目轉換成web工程
選擇項目屬性。例如以加入Web Module
加入src/main/webapp路徑。把以下選項也選上。完成以後點擊ok
在點擊Apply
然後再右擊項目熟悉
去掉多餘項,把剛才建立的檔案夾加進去
例如以
最後完整的項目工程例如以下
xml設定檔
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>MavenTest</groupId> <artifactId>tan.maven.springmvc</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>tan.maven.springmvc Maven Webapp</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <springversion>3.1.1.RELEASE</springversion> <junitversion>3.8.1</junitversion> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junitversion}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-asm</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jms</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-oxm</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${springversion}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.1</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1</version> </dependency> </dependencies> <build> <finalName>tan-springmvc-book</finalName> </build></project>
web.xml 位於WEB-INF路徑下
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>Archetype Created Web Application</display-name> <servlet> <!-- spring MVC的核心就是DispatcherServlet,使用springMVC的第一步就是將以下的servlet放入web.xml servlet-name屬性非常重要。預設情況下,DispatchServlet會載入這個名字-servlet.xml的檔案,例如以下,就會載入 dispather-servlet.xml,也是在WEN-INF檔案夾下。 也能夠直接指定詳細檔案 <servlet> <servlet-name>book</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> --> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <filter> <filter-name>encodingFilter</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>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <display-name>mvc</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list></web-app>
dispatcher-servlet.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:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd" default-lazy-init="true"> <!-- 通過mvc:resources設定靜態資源,這樣servlet就會處理這些靜態資源。而不通過控制器 --> <!-- 設定只是濾內容,比方:css,jquery,img 等資源檔 --> <mvc:resources location="/*.html" mapping="/**.html" /> <mvc:resources location="/css/*" mapping="/css/**" /> <mvc:resources location="/js/*" mapping="/js/**" /> <mvc:resources location="/images/*" mapping="/images/**" /> <!-- 加入註解驅動 --> <mvc:annotation-driven /> <!-- 預設掃描的包路徑 --> <context:component-scan base-package="exam_1" /> <!-- mvc:view-controller能夠在不須要Controller處理request的情況。轉向到設定的View --> <!-- 像以下這樣設定。假設請求為/。則不通過controller,而直接解析為/index.jsp --> <mvc:view-controller path="/" view-name="index" /> <bean class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property> <!-- 配置jsp路徑首碼 --> <property name="prefix" value="/"></property> <!-- 配置URl尾碼 --> <property name="suffix" value=".jsp"></property> </bean> </beans>
在
建立java類 MyController
package mvc;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;@Controller public class MyController { @RequestMapping("login") //用來處理前台的login請求 private @ResponseBody String hello( @RequestParam(value = "username", required = false)String username, @RequestParam(value = "password", required = false)String password ){ return "Hello "+username+",Your password is: "+password; } }
到此代碼編寫完成
項目執行
非常多bolg文章到這裡就結束了,是由於那些人他們的weorkspace內已經開發過了項目。
假設剛下載的還須要2部
第一步右擊項目Run As- > maven install 裝載須要的類庫
第二部 tomact屬性設定
Run As->Run On Server 選擇你的tomact並把項目加進去。假設執行沒有錯誤會出現404錯誤
解決方案例如以下:
右擊選擇Add and Reomve。然後雙擊彈出以下頁面
又一次配置以下二項
然後再執行項目就OK了
原因這個說的比較明確
項目原始碼地址
Servlet和Android網路互動基礎(3)