采用CXF+spring+restful创建一个web接口项目

这篇文章是http://blog.csdn.net/zxnlmj/article/details/28880303下面,加入的基础上的restful特征

1、参加restful必jar包裹

jsr311-api-1.0.jar
CXF与JAX-RS版本号相应问题,參考自:http://bioubiou.iteye.com/blog/1866871
CXF支持REST风格的Web服务:JAX-RS2.0(JSR-339)和JAX-RS1.1(JSR-311)的Java API。
CXF2.7.0支持JAX-RS2.0(不包含clientAPI如今 - 引入的新功能。但注意CXFclientAPI已经更新,支持新的过滤器,拦截器,异常类和响应API,再加上client的异步调用API)。

CXF2.6.x版本号,在2.5.x。2.4.x和2.3.x的支持JSR-311 API1.1和JAX-RS1.1 TCK符合。

CXF2.2.x的支持JSR-311 API1.0和JAX-RS1.0 TCK标准。 CXF的2.1.x支持JSR-311 API0.8。

本文选择cxf-2.4.2.jar与jsr311-api-1.0.jar

2、开发restful服务

新建RestfulRegeditService.java接口

package zxn.ws.service;import java.io.IOException;import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.MediaType;@Path(value = "/")
public interface RestfulRegeditService {@POST@Path("/regedit")@Consumes(MediaType.APPLICATION_JSON)public String regedit(String username, String password) throws IOException;}
新建RestfulRegeditServiceImpl.java接口
package zxn.ws.service.impl;import java.io.IOException;import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Request;
import javax.ws.rs.core.UriInfo;import zxn.ws.service.RestfulRegeditService;@Path(value = "/")
public class RestfulRegeditServiceImpl implements RestfulRegeditService {@Contextprivate UriInfo uriInfo;@Contextprivate Request request;@POST@Path("/regedit")@Produces(MediaType.APPLICATION_JSON)public String regedit(String username, String password) throws IOException {return "";} 
}

3、改动spring配置文件applicationContext.xml(粗体部分为需加入的)

<?xml version="1.0"?>
<beans xmlns="http://www.springframework.org/schema/b<span style="background-color: rgb(255, 255, 0);">eans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc</span>e" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:jaxrs="http://cxf.apache.org/jaxrs"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
                        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                        http://www.springframework.org/schema/aop
                        http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
                        http://www.springframework.org/schema/context
                        http://www.springframework.org/schema/context/spring-context-3.0.xsd
                        http://www.springframework.org/schema/tx
                        http://www.springframework.org/schema/tx/spring-tx-3.0.xsd   http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd
                        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd ">
    <import resource="classpath:META-INF/cxf/cxf.xml" />
    <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />

    <!-- webservice配置 ,myeclipse检測到此处有错没影响-->
    <jaxws:endpoint id="regeditService" implementor="zxn.ws.service.RegeditServiceImpl" address="/Regedit" />

<bean id="restfulRegeditService" class="zxn.ws.service.impl.RestfulRegeditServiceImpl" />
<!--restful服务 -->
    <jaxrs:server id="restServiceContainer" address="/regedit">
        <jaxrs:serviceBeans>
            <ref bean="restfulRegeditService" />
        </jaxrs:serviceBeans>
        <jaxrs:extensionMappings>
            <entry key="json" value="application/json" />
            <entry key="xml" value="application/xml" />
        </jaxrs:extensionMappings>
        <jaxrs:languageMappings>
            <entry key="en" value="en-gb" />
        </jaxrs:languageMappings>
    </jaxrs:server></strong>
</beans>

4、部署到tomcat,执行。成功。界面下图:

5、源码地址下载:http://download.csdn.net/detail/zxnlmj/7458403

版权声明:本文博主原创文章,博客,未经同意不得转载。

转载于:https://www.cnblogs.com/blfshiye/p/4942280.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/574203.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

古风一棵桃花树简笔画_为什么,很多农村家庭的院子里,会喜欢种一棵樱桃树呢?...

小伙伴们去农村的时候&#xff0c;应该都会注意到几乎每家每户的院子里都会种有几棵树吧。如果小伙伴们认真观察的话&#xff0c;你们可以发现很多农村家庭的院子里都有种一两棵樱桃树。那么这是为什么呢&#xff1f;是因为樱桃比较好吃吗&#xff1f;是有这个原因的&#xff0…

Python【02】【基础部分】- B

1、作用域 变量只要在内存存在&#xff0c;就可以被使用 。&#xff08;栈&#xff09; 1 if 1 1: 2 name kim 3 print name 个例&#xff1a;item的值为字典循环后最后一个key的值 1 name {xiaoming:12,xiaohua:15,xiaoli:11} 2 for item in name: 3 print item 4 …

(转)数字格式化函数:Highcharts.numberFormat()

一、函数说明 该函数用于图表中数值的格式化&#xff0c;常见用途有数值精度控制、小数点符、千位符显示控制等。二、函数使用1、函数构造及参数Highcharts.numberFormat (Number number, [Number decimals], [String decimalPoint], [String thousandsSep])参数列表number 需…

cad图层管理插件_设计大神CAD常用七个插件你会用几个?

如果你需要这些CAD插件&#xff0c;可以私信我&#xff0c;小编会及时发给大家​​ 说道CAD插件可能会被人们熟知的也就那几个&#xff0c;可是据统计CAD插件多达上百个&#xff0c;那么在这上百个插件中你又会用几个呢&#xff1f;下面就让我们看看大部分设计师常用的插件有哪…

笔记本显示器仅计算机,别只玩性能 笔记本屏幕怎么进化才靠谱?

1分辨率升级2K不合适一直以来&#xff0c;屏幕显示效果都是笔记本电脑的弱项。近几年笔记本电脑的变化更多是性能以及外观设计的变迁。诸如游戏本以及超极本等产品&#xff0c;在屏幕的优化上&#xff0c;表现都是差强人意。很多人手中的笔记本都是TN屏幕的产品&#xff0c;在显…

计算机专业刚毕业本科生,计算机专业应届本科毕业生自我鉴定

计算机专业应届本科毕业生自我鉴定四年的大学生活是我人生这条线上的一小段&#xff0c;是闪闪发光的一段&#xff0c;它包含了汗水和收获&#xff0c;为我划平人生的线起着至关重要的作用。四年大学生活已接近尾声&#xff0c;感觉非常有必要总结一下大学四年的得失&#xff0…

佳能c3320怎么设置接收方_入门级单反相机佳能800D是否值得买?在我看来价格决定一切...

佳能入门级单反相机800D是否值得买看了就清楚旺灵龙如果你是一位刚刚准备购买数码单反相机的入门小白&#xff0c;佳能最新的EOS 800D的肯定是你现在最容易拿来对比的选择。新相机在性能与操作便利性方面的良好结合&#xff0c;无疑将是入门级单反性价比最高的一款机型。佳能(C…

stm8时钟源

下面4种时钟源可用做主时钟&#xff1a; 1-24MHz高速外部晶体振荡器(HSE)最大24MHz高速外部时钟信号(HSE user-ext)16MHz高速内部RC振荡器(HSI)128KHz低速内部RC(LSI)各个时钟源可单独打开或关闭&#xff0c;从而优化功耗。 (一)HSE 高速外部时钟信号可由下面两个时钟源产生&am…

nexus 仓库类型_Maven私服Nexus的搭建

私服存在的合理性Maven中的依赖是从服务器仓库中下载的&#xff0c;Maven的仓库只有两大类&#xff1a;本地仓库远程仓库&#xff0c;其中在远程仓库中又分成了3种&#xff1a;中央仓库 、私服、其它公共库。Maven用户直接连接远程仓库下载构件的做法是Maven不建议使用的&#…

ae中心点重置工具_AE中图形绘制的6大技巧,简单易操作

AE中的图形系统和文字系统很相似&#xff0c;都有自己相对独立的一套基础动画系统。当我们打开AE软件&#xff0c;面对空白的面板&#xff0c;如何通过一步步的操作填充画面&#xff0c;做出酷炫的效果&#xff0c;这其中图形占据很大的比重&#xff0c;更不用说流行的MG动画&a…

Mac安装软件报“打不开。。。,因为它来自身份不明的开发者”的解决办法

问题描述 在Mac上安装git&#xff0c;双击pkg进行安装&#xff0c;报如下图错误&#xff1a; 解决办法 不要双击pkg文件&#xff0c;改成选中文件之后&#xff0c;鼠标右键&#xff0c;选择“打开方式->安装器&#xff08;默认&#xff09;”&#xff0c;即可继续安装。 转载…

模型预测控制c语言程序_搭建第一个程序控制电路LED灯,体会C语言的魅力

学习C语言&#xff0c;先从读程序开始&#xff01;这一点是过来人的经验之谈。本文建议大家选择一款图形编程软件&#xff0c;本文选择了Mixly。一、首先&#xff0c;介绍一下arduino UNO控制器内部电压的问题。v 高电平(5V)&#xff1a;对应数值是1&#xff0c;输入状态3.5V-5…

s丅7318是啥芯片_透彻解析LED驱动芯片HT1632C指令集与驱动编程

HT1632C是一款很常用的LED(数码管或点阵)驱动芯片&#xff0c;虽然官方已经宣布该芯片明年(2021年)即将寿终正寝(停产)&#xff0c;但是相同厂家生产的同系列芯片的控制方式通常是相同的(事实上&#xff0c;大多数LED驱动芯片差别也不大)&#xff0c;所以了解HT1632C的控制原理…

服务器显示不明用户远程过,服务器显示不明用户远程过

服务器显示不明用户远程过 内容精选换一换Windows操作系统云服务器蓝屏&#xff0c;如图1所示。使用了来源不明的第三方软件。CPU占用过高导致。因为误操作或者病毒引起的系统文件、注册表损坏。操作系统在蓝屏的情况下&#xff0c;会显示对应的bugcheck code以及可能的导致蓝屏…

微信小程序定义全局变量_微信小程序第二天学习内容分享

微信小程序的生命周期文件的配置在app.js文件中&#xff1b;方法&#xff1a;onLaunch,onShow,onHideapi链接&#xff1a;https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html#onHideonError,当前也可以自定义&#xff0c;用console测试事件的执行情况&a…

java环境配置—配置Tomcat8环境

先安装JDK&#xff0c;配置好jdk环境后再配置Tomcat 8配置环境变量&#xff1a;TOMCAT_HOME&#xff1a;D:\Program Files\apache-tomcat-8.0.28  CATALINA_HOME:D:\Program Files\apache-tomcat-8.0.28  CATALINA_BASE:D:\Program Files\apache-tomcat-8.0.28修改CLASSPAT…

ios13苹方字体ttf_字体 | iOS1013 SF Compact Rounded 英文 By alex

最近沉迷游戏&#xff0c;差点忘记了这个英文。嗨呀&#xff0c;问就是在玩了&#xff0c;啊不&#xff0c;在做了。这个英文来自推特alexman&#xff0c;原版包含100和85大小&#xff0c;本次分享新增到了100-60&#xff0c;每5%一个大小。gzh分享已经获得alex授权&#xff0c…

10双屏鼠标过不去_灵耀X2 Duo双屏笔记本是怎样“炼”成的?对话华硕笔记本设计团队...

2020年的CES上&#xff0c;华硕推出了一款灵耀X2 Duo笔记本&#xff0c;灵耀X2 Duo采用了和灵耀X2 Pro相同的屏幕技术&#xff0c;C面同样采用了一块ScreenPad Plus副屏&#xff0c;机身也更轻更薄。如今灵耀X2 Duo的处理器升级至英特尔第十代酷睿&#xff0c;正在参与“618”大…

理解 OpenStack 高可用(HA) (6): MySQL HA

本系列会分析OpenStack 的高可用性&#xff08;HA&#xff09;概念和解决方案&#xff1a; &#xff08;1&#xff09;OpenStack 高可用方案概述 &#xff08;2&#xff09;Neutron L3 Agent HA - VRRP &#xff08;虚拟路由冗余协议&#xff09; &#xff08;3&#xff09;Neu…

聚类中心坐标公式如何使用_如何使用CAD看图软件来测量坐标?

当我们在拿到图纸的时候&#xff0c;经常会需要使用测量工具&#xff0c;再次测量dwg图纸上的数据。浩辰CAD看图王软件&#xff0c;不仅可以看图&#xff0c;也可以编辑图纸&#xff0c;测量功能更是很方便&#xff0c;当我们在测量的时候&#xff0c;如何测量图纸上点的坐标呢…