基于jersey v2.10的webservice核心框架

10 篇文章 0 订阅
3 篇文章 0 订阅

在这个框架中包含base认证,日志,rest,eclipselink jpa等等。但是有个问题就是我在利用@PersistenceUnit注解是总是无法成功,也只能自己亲自完成这块代码。

jersey 官网:https://jersey.java.net/

下载:http://download.csdn.net/detail/philosophyatmath/7672487

web.xml文件配制

<?xml version="1.0" encoding="UTF-8"?>
<!-- This web.xml file is not required when using Servlet 3.0 container, 
	see implementation details http://jersey.java.net/nonav/documentation/latest/jax-rs.html#d4e194 -->
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="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_2_5.xsd"
	version="2.5">
	<servlet>
		<servlet-name>Jersey Web Application</servlet-name>
		<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
		<init-param>
			<param-name>javax.ws.rs.Application</param-name>
			<param-value>boa.framework.config.ApplicationConfig</param-value>
		</init-param>
	<!-- 	<init-param>
			<param-name>unit:test</param-name>
			<param-value>persistence/test</param-value>
		</init-param> -->
		<load-on-startup>2</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>System initialization</servlet-name>
		<servlet-class>boa.framework.system.InitialServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>Jersey Web Application</servlet-name>
		<url-pattern>/rest/*</url-pattern>
	</servlet-mapping>

<!-- 	<persistence-unit-ref>
		<persistence-unit-ref-name>persistence/test</persistence-unit-ref-name>
		<persistence-unit-name>test</persistence-unit-name>
	</persistence-unit-ref> -->

</web-app>

persistence.xml配制

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1"
	xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
 http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">

	<persistence-unit name="persist-unit"
		transaction-type="RESOURCE_LOCAL">
		<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
		<!-- All persistence classes must be listed -->
		<class>boa.framework.entity.CustomerEntity</class>
		<properties>
			<!-- Provider-specific connection properties -->
			<property name="javax.persistence.jdbc.url" value="jdbc:derby:memory:exampleDB;create=true" />
			<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
			<property name="javax.persistence.jdbc.user" value="" />
			<property name="javax.persistence.jdbc.password" value="" />
			<property name="javax.persistence.schema-generation.database.action"
				value="drop-and-create" />
			<property name="javax.persistence.schema-generation.create-source"
				value="script" />
			<property name="javax.persistence.schema-generation.create-script-source"
				value="META-INF/create-script.sql" />
			<property name="eclipseink.logging.level" value="INFO" />
		</properties>
	</persistence-unit>

	<persistence-unit name="test" transaction-type="RESOURCE_LOCAL">
		<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
		<class>boa.framework.entity.CustomerEntity</class>
		<exclude-unlisted-classes>false</exclude-unlisted-classes>
		<shared-cache-mode>ENABLE_SELECTIVE</shared-cache-mode>
		<!--  <validation-mode>CALLBACK</validation-mode>  -->
		<properties>
			<property name="javax.persistence.jdbc.url" value="jdbc:oracle:thin:@127.0.0.1:1521:testsid" />
			<property name="javax.persistence.jdbc.driver" value="oracle.jdbc.driver.OracleDriver" />
			<property name="javax.persistence.jdbc.user" value="scott" />
			<property name="javax.persistence.jdbc.password" value="tigger" />
			<property name="javax.persistence.jdbc.show_sql" value="true" /> 
			<!-- EclipseLink should create the database schema automatically -->

			 <property name="javax.persistence.schema-generation.database.action" 
				value="drop-and-create" />
		</properties>
	</persistence-unit>


</persistence>


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>boa.framework</groupId>
	<artifactId>boa-webservice</artifactId>
	<packaging>war</packaging>
	<version>0.1.2-SNAPSHOT</version>
	<name>jersey_restful_webservice</name>

	<properties>
		<jersey.version>2.10</jersey.version>
		<genson.version>0.98</genson.version>
		<eclipselink.version>2.5.2-M1</eclipselink.version>
		<derby.version>10.10.1.1</derby.version>
		<junit.version>4.8.2</junit.version>
		<mockito.version>1.9.5</mockito.version>
		<oracle.version>11.2.0.3</oracle.version>
		<log4j.version>2.0-rc2</log4j.version>
		<commons-logging.version>1.1.3</commons-logging.version>
		<slf4j-version>1.7.5</slf4j-version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>com.sun.xml.ws</groupId>
			<artifactId>servlet</artifactId>
			<version>2.2.11-b140503.1732</version>
			<scope>provider</scope>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<version>${slf4j-version}</version>
		</dependency>
		<dependency>
			<groupId>commons-logging</groupId>
			<artifactId>commons-logging</artifactId>
			<version>${commons-logging.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-api</artifactId>
			<version>${log4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<version>${log4j.version}</version>
		</dependency>

		<dependency>
			<groupId>com.oracle</groupId>
			<artifactId>ojdbc6</artifactId>
			<version>${oracle.version}</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.core</groupId>
			<artifactId>jersey-server</artifactId>
			<version>${jersey.version}</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.containers</groupId>
			<artifactId>jersey-container-servlet</artifactId>
			<version>${jersey.version}</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.core</groupId>
			<artifactId>jersey-client</artifactId>
			<version>${jersey.version}</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.media</groupId>
			<artifactId>jersey-media-json-jackson</artifactId>
			<version>${jersey.version}</version>
		</dependency>
		<dependency>
			<groupId>com.owlike</groupId>
			<artifactId>genson</artifactId>
			<version>${genson.version}</version>
		</dependency>
		<dependency>
			<groupId>org.eclipse.persistence</groupId>
			<artifactId>eclipselink</artifactId>
			<version>${eclipselink.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.derby</groupId>
			<artifactId>derby</artifactId>
			<version>${derby.version}</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.test-framework</groupId>
			<artifactId>jersey-test-framework-core</artifactId>
			<version>${jersey.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.test-framework.providers</groupId>
			<artifactId>jersey-test-framework-provider-jetty</artifactId>
			<version>${jersey.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<version>${mockito.version}</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<finalName>boa</finalName>
	</build>
	<repositories>
		<repository>
			<id>central</id>
			<url>http://repo1.maven.org/maven2/</url>
		</repository>
		<repository>
			<id>codelds</id>
			<url>https://code.lds.org/nexus/content/groups/main-repo</url>
		</repository>
		<repository>
			<id>java.net-staging</id>
			<url>https://maven.java.net/content/repositories/staging/</url>
		</repository>
	</repositories>
	<developers>
		<developer>
			<name>zhangdapeng</name>
			<roles>
				<role>software Architect</role>
			</roles>
		</developer>
	</developers>
</project>




  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值