Java-pom.xml及WebServlet設定
開發Java專案提供Servlet給外部廠商呼叫Api時,
通常有兩個地方需要設定。
pom.xml
1.pom.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> //編碼要記得設定UTF-8,IDE的預設編碼會造成亂碼 <finalName>ROOT</finalName> //finalName設定ROOT的話,Api的url是http://127.0.0.1/{WebServlet}/{method} <finalName>Server</finalName> //finalName設定Server的話,Api的url是http://127.0.0.1/DealerIntegationTestingServer/{WebServlet}/{method} ------------------------------------------------分隔線--------------------------------------------------------- <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</groupId> <artifactId>Server</artifactId> <packaging>war</packaging> <version>1.0</version> <name>Server</name>
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <jdk.version>1.8</jdk.version> <log4j2.version>2.8.2</log4j2.version> <tomcat.version>8.5.42</tomcat.version> </properties>
<build> <finalName>ROOT</finalName> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.2</version> <configuration> <encoding>utf-8</encoding> <source>${jdk.version}</source> <target>${jdk.version}</target> </configuration> </plugin> </plugins> </build> <dependencies> <!-- log4j --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j2.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j2.version}</version> </dependency>
<!-- apache commons --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.9.3</version> </dependency> <!-- test --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency>
<!-- json --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.7.9.1</version> </dependency> <!-- tomcat --> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-catalina</artifactId> <version>${tomcat.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jasper</artifactId> <version>${tomcat.version}</version> <scope>provided</scope> </dependency> </dependencies>
<repositories> <repository> <id>in-project</id> <name>In Project Repo</name> <url>file://${project.basedir}/lib</url> </repository> <repository> <id>apache-snapshot</id> <name>Apache Snapshot Repository</name> <url>https://repository.apache.org/content/groups/snapshots/</url> </repository> </repositories> </project>
|
WebServlet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| 設定@WebServlet(urlPatterns = { "/api/*" }) Api Url是http://127.0.0.1/api/{method} ------------------------------------------------分隔線--------------------------------------------------------- package com.nv.commons.servlet;
import java.io.IOException; import java.io.StringWriter;
import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
import com.fasterxml.jackson.core.JsonGenerator;;
@WebServlet(urlPatterns = { "/api/*" }) public class Servlet extends HttpServlet {
}
|