文档章节

基于Spring4 Hibernate4 jersey实现rest风格系统

liuyuantao
 liuyuantao
发布于 2016/04/09 09:49
字数 558
阅读 35
收藏 0

1.项目介绍:

项目基于Maven搭建,采用Spring4.2.4、Hibernate4.3.11Final并结合 jersey实现rest风格的WebService,代码结构如图1-1:


图1-1 项目结构图

2.项目运行说明:

1.运行

1.1项目导入eclipse运行

由于使用了jetty插件,所以不需要而外的tomcat,所以运行时,使用Run As—>Maven Buld,输入jetty:run即可如图1-2:


1-2jetty运行截图

1.2说明

用jetty运行项目后,在浏览器输入http://localhost:8080/lyt-jersey会自动跳转到http://localhost:8080/lyt-jersey/api-docs/如图1-3:


图1-3 程序运行图

点击相应的标签就可以模拟相应的rest风格的事件请求,如图1-4:


图1-4 rest风格请求效果

1.2在web容器运行

将war包导出至项目中,启动web容器即可。后面的效果和1.2相同。

2.代码说明

代码结构如图1-5:


图1-5 代码结构图

org.anttix.example.shj.spring是一些配置文件的注解描述。由于项目使用servlet3.0,所以并没有使用任何的配置文件,所以得相关配置都是以注解的形式硬编码。

下面以org.anttix.example.shj.spring.HSQLDataSource来说明


图1-6 实例代码说明

@Bean  说明这个是一个归属Spring管理的一个类,在项目启动时有Spring利用java的反射创建。

属性设置是通过setProperty(AvailableSettings.HBM2DDL_AUTO,"create-drop");类似的方法实现的,这个方法的意思是设置数据库的表的生成形式。

整个项目最关键的是web.xml的配置,这里主要说明下jersey在web.xml里面的配置

<servlet>

        <servlet-name>jersey-servlet</servlet-name>

        <!—这个是jersey与Spring整合的servlet-->

<servlet-class>

            com.sun.jersey.spi.spring.container.servlet.SpringServlet

        </servlet-class>

        <init-param>

            <!—项目启动时需要扫描的包-->

            <param-name>

                com.sun.jersey.config.property.packages

            </param-name>

            <param-value>org.anttix.example.shj.services;org.anttix.example.shj.rest;com.wordnik.swagger.jaxrs.listing</param-value>

        </init-param>

        <init-param>

            <param-name>swagger.config.reader</param-name>

            <param-value>org.anttix.example.shj.rest.ApiDocConfig</param-value>

        </init-param>

        <init-param>

            <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>

            <param-value>true</param-value>

        </init-param>

        <load-on-startup>1</load-on-startup>

    </servlet>

 

    <servlet-mapping>

        <servlet-name>jersey-servlet</servlet-name>

        <!—拦截什么样的请求使用jersey-->

        <url-pattern>/rest/*</url-pattern>

    </servlet-mapping>

com.sun.jersey.spi.spring.container.servlet.SpringServlet:

这个是jersey与Spring整合的servlet,里面含有众多的配置参数如:需要扫描那些包,启动时间等。

com.sun.jersey.config.property.packages:

这个是项目启动时哪些包被扫描。

<url-pattern>/rest/*</url-pattern>:

说明什么样的请求使用jersey

© 著作权归作者所有

共有 人打赏支持
liuyuantao
粉丝 5
博文 134
码字总数 27666
作品 0
武汉
高级程序员
【2016-05-08】Jersey vs. SpringMVC

当前Web Service 常用的风格有两种,RESTful风格和RPC风格。 一、RESTful与RPC简介 RPC的中心是方法,REST的中心是资源。 RPC:其中RPC风格中常见的有XML-RPC和JSON-RPC,JSON以其简洁、传输...

rathan0
2016/05/08
1K
0
OSC 第 125 期高手问答 -- Java RESTful Web Service实战

OSCHINA 本期高手问答(8月29日- 9月5日) 我们请来了@六爷 (韩陆)为大家解答关于Java RESTful Web Service实战的问题。 @六爷 (韩陆),资深Java技术专家,曾在用友(总部)、新浪、Avaya...

凝小紫
2016/08/29
7.6K
58
基于Jsersy的RSET服务的实现

本文主要介绍如何用Jsersy实现RESTful服务。在介绍Jsersy之前,先介绍一下Rest和Restful的概念。 什么是REST REST 中最重要的概念是资源(resources),使用全球 ID(通常使用 URI)标识。客...

小李飞刀008
2013/10/23
0
0
Jersey : Java规范下REST风格Web Service开发框架

Sun正在致力于建立RESt风格Web服务的规范, 规范如下 JSRs: Java Specification Requests JSR 311: JAX-RS: The JavaTM API for RESTful Web Services 链接:http://jcp.org/en/jsr/detail?......

hans汉斯
2010/01/13
0
0
Jersey REST WebServcie Example

1 介绍 1.1 什么是JAX-RS标准 JAX-RS是java领域的REST式的WEB服务的标准规范。它的目标是这样的: (1)基于POJO,规定使用POJO来公布WEB资源 (2)以HTTP为中心,采用HTTP协议,无状态 (3...

蜡笔小小小新
2016/06/16
82
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

spring-boot | 日志

引言 好久不见,都还好吗? 大家都知道,我一般都是带来实用的东西,这次也一样,我们来试试项目开发中的日志处理。 理论知识 1、为什么要用日志?你是否因为项目出现问题,查找日志文件定位...

成都_小冯同学
15分钟前
0
0
dubbo下的补偿实现(一)

背景 由于前面几篇文章涉及的问题 分布式事务的思考 在我们微服务的场景下 各种本地事务都没有办法控制的很好。 A服务调用B服务 当B服务成功提交之后 A发生了异常 这种情况下要如何处理呢??...

Mr_Qi
23分钟前
2
0
HTML显示json字符串并且进行格式化

通过pre标签进行格式化展示,使用JSON.stringify()方法转换。 代码如下:   <html> <head> <title>HTML显示json字符串并且进行格式化</title> </head> <body> <p id="show_p">{ "name": "B......

writeademo
44分钟前
0
0
LNMP——php-fpm

php-fpm的pool •vim /usr/local/php/etc/php-fpm.conf //在[global]部分增加include并删除我们之前www池子 • include = etc/php-fpm.d/*.conf • mkdir /usr/local/php/etc/php-fpm.d/ • ......

chencheng-linux
48分钟前
0
0
TensorFlow layers slim 模块搭建cnn对mnist分类,比较bn效果

shape变化 (?, 784)(?, 28, 28, 1)(?, 14, 14, 8)(?, 7, 7, 8)(?, 1, 1, 8)(?, 8)(?, 10) 结果对比,基本上还是有点用的 0.91725457 0.9232 0.9548 0.95530.9177273 0.9234 0....

阿豪boy
51分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部