编辑推荐: |
本文来自于csdn,这篇文章只是简单的介绍一下简单框架的搭建,运用的环境是maven
web项目,这样便于管理。 |
|
由于项目的需要,自己利用闲暇的时间在外部搭建了一个jersey和spring简单集成的环境,后期会随着相关业务的加入会变得更加庞大。
1、环境的搭建(开发工具:eclipse,个人喜好吧,ide现期比较适应eclipse)
对于jersey的安装有两种方式,我们将简单的介绍之。
第一种:就是在maven项目中加上archType有关jersey
web项目骨架,具体的看图
添加对jersey web项目的支持,archetypeArtifactId
= jersey - quickstart- grizzly2 archetypeGroupId =
org . glassfish .jersey .archetypes ? archetypeVersion
= 2.1
其中第四个项目是选填的,我这里就不填!
如果出现下图所示的第一条条目,说明你jersey安装成功啦!
安装成功后,选择这个类型的骨架去创建jersey项目,自然集成了jersey特性。
第二种就是使用pom.xml来自动导入所需要的jar包,前提是你比较熟悉需要使用什么jar,这样才能配置全面,为了减少新手的工作量,我就将需要的包(包括spring)所需要的包一起拿进来。
<span style="font-size:14px;"><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.demo</groupId>
<artifactId>mybook</artifactId>
<packaging>war</packaging> <version>0.0.1-SNAPSHOT</version>
<name>mybook</name> <build>
<finalName>mybook</finalName>
<plugins> <plugin> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version> <inherited>true</inherited>
<configuration> <source>1.8</source>
<target>1.8</target> </configuration>
</plugin> </plugins> </build>
<dependencies> <!-- Jersey -->
<dependency> <groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet-core</artifactId>
<version>${jersey.version}</version>
</dependency> <dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-moxy</artifactId>
<version>${jersey.version}</version>
</dependency> <dependency>
<groupId>org.glassfish.jersey.ext</groupId>
<artifactId>jersey-bean-validation</artifactId>
<version>${jersey.version}</version>
</dependency> <!-- Jersey + Spring
--> <dependency> <groupId>org.glassfish.jersey.ext</groupId>
<artifactId>jersey-spring3</artifactId>
<version>${jersey.version}</version>
<exclusions> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</exclusion> </exclusions>
</dependency> <!-- Spring 3
dependencies --> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.2.1.RELEASE</version>
</dependency> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.1.RELEASE</version>
</dependency> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.2.1.RELEASE</version>
</dependency> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.2.1.RELEASE</version>
</dependency> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.2.1.RELEASE</version>
</dependency> <!-- mybatis -->
<dependency> <groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.3.0</version> </dependency>
<dependency> <groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.3</version> </dependency>
<!-- mysql dirver --> <dependency>
<groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version> </dependency>
<dependency> <groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version> </dependency>
<dependency> <groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.3</version> <classifier>jdk15</classifier>
</dependency> </dependencies>
<properties> <jersey.version>2.21</jersey.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project></span> |
以后需要自此基础上开发,你们根据自己的需求去加包吧!第一种方式建立的maven项目还需要加入spring依赖包,具体的依赖包配置和第二种类似,再次不在陈述。特别要注意的是:不管第一种还是第二种方式,千万不要忘记jsrsey和spring集成的包。
<span style="font-size:14px;"><!--
Jersey + Spring --> <dependency>
<groupId>org.glassfish.jersey.ext</groupId>
<artifactId>jersey-spring3</artifactId>
<version>${jersey.version}</version>
<exclusions> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</exclusion> <exclusion> <groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</exclusion> </exclusions>
</dependency></span> |
如果缺少这几个包的话,会导致项目中的spring和jersey服务无法串联,最典型的异常就是jersey接口访问正常,但是一般要使用service和dao时,均会出现空指针异常,希望大家要注意,免得大家又犯同样的错误,同时jersey和spring集成版本一定要兼容,否则会出现比如,无法找到某一个类,或者这个service无法注入等问题,切记。
2、maven web restful风格项目的部署
maven web风格项目的部署可以参考我以前写的文章,链接已经附在末尾。
3、运行起来以后,可以根据restful风格来访问测试是否成功
|