tomcat下搭建简单的xfire web services项目
来源:互联网 发布:新版本淘宝高级搜索 编辑:程序博客网 时间:2024/05/17 23:54
tomcat下搭建简单的xfire web services项目
xfire简介
支持将Web服务绑定到POJO、XMLBeans、JAXB1.1、JAXB2.0和Castor;
支持基于HTTP、JMS、XMPP等多种协议访问Web服务;
支持多种Web服务业界重要标准如SOAP、WSDL、Web服务寻址(WS-Addressing)、Web服务安全(WS-Security)等;
支持JSR181,可以通过JDK5配置Web服务;
高性能的SOAP实现;
服务器端、客户端代码辅助生成;
对Spring、Pico、Plexus等项目的支持等。
Xfire服务器搭建
基础架包
1. XFire-all-1.2.6.jar
XFire框架的二进制包文件,包含了全部的模块(modules)
2. commons-logging.jar
Apache Commons包中的一个,包含了日志功能。这个包本身包含了一个Simple Logger,但是功能很弱。在运行的时候它会先在CLASSPATH找log4j,如果有,就使用log4j,如果没有,就找JDK1.4带的 java.util.logging,如果也找不到就用Simple Logger。
commons-logging.jar的出现是一个历史的的遗留的遗憾,当初Apache极力游说Sun把 log4j加入JDK1.4,然而JDK1.4项目小组已经接近发布JDK1.4产品的时间了,因此拒绝了Apache的要求,使用自己的java.util.logging,这个包的功能比log4j差的很远,性能也一般。
后来Apache就开发出来了commons-logging.jar用来兼容两个 logger。因此用commons-logging.jar写的log程序,底层的Logger是可以切换的,你可以选择 log4j,java.util.logging或者它自带的Simple Logger。不过我仍然强烈建议使用log4j,因为log4j性能很高,log输出信息时间几乎等于System.out,而处理一条log平均只需要5us。你可以在Hibernate的src目录下找到Hibernate已经为你准备好了的log4j的配置文件,你只需要到Apache 网站去下载log4j就可以了。commons-logging.jar也是必须的jar包。
3. jdom-1.0.jar
解析xml文件
4.spring-1.2.6.jar
spring核心包
5.wsdl4j-1.6.1.jar
连接wsdl
6.xbean-spring-2.8.jar
xbean 和 spring 结合所需包
7.ojdbc14.jar
连接数据库
编写接口
package dao;
public interface Bank {
String OperateMoney(String card,double total);
}
编写实现类
package dao.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.junit.Test;
import dao.Bank;
import dao.BaseDao;
public class BankImpl implements Bank {
@Override
public String OperateMoney(String card, double total) {
String info = "";
if(1 == update(card, total)){
info = "success";
}else{
info = "false";
}
return info;
}
private int update(String card, double total){
Connection con = BaseDao.getConnection();
String sql = "update bank_card set total = total + ? where card = ? ";
int row = 0;
entity.Bank bank = select(card);
if(null != bank){
if((bank.getTotal() + total) > 0){
try {
PreparedStatement pState = con.prepareStatement(sql);
pState.setDouble(1, total);
pState.setString(2, card);
row = pState.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return row;
}
private entity.Bank select(String card){
Connection con = BaseDao.getConnection();
String sql = "select * from bank_card where card = ? ";
ResultSet result = null;
entity.Bank bank = new entity.Bank();
try {
PreparedStatement pState = con.prepareStatement(sql);
pState.setString(1, card);
result = pState.executeQuery();
if(result.next()){
bank.setId(result.getInt(1));
bank.setCard(result.getString(2));
bank.setTotal(result.getDouble(3));
}
} catch (SQLException e) {
e.printStackTrace();
}
return bank;
}
}
建立services.xml文件,需要放在WebContent/WEB-INF/classes/META-INF/xfire目录下
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>OperateMoney</name>
<namespace>localhost:8080/fifth/</namespace>
<serviceClass>dao.Bank</serviceClass>
<implementationClass>dao.impl.BankImpl</implementationClass>
</service>
</beans>
修改web.xml文件,加入一个servlet
<servlet>
<servlet-name>xFireServlet</servlet-name>
<servlet-class>
org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>xFireServlet</servlet-name>
<url-pattern>/service/*</url-pattern>
</servlet-mapping>
xfire简介
支持将Web服务绑定到POJO、XMLBeans、JAXB1.1、JAXB2.0和Castor;
支持基于HTTP、JMS、XMPP等多种协议访问Web服务;
支持多种Web服务业界重要标准如SOAP、WSDL、Web服务寻址(WS-Addressing)、Web服务安全(WS-Security)等;
支持JSR181,可以通过JDK5配置Web服务;
高性能的SOAP实现;
服务器端、客户端代码辅助生成;
对Spring、Pico、Plexus等项目的支持等。
Xfire服务器搭建
基础架包
1. XFire-all-1.2.6.jar
XFire框架的二进制包文件,包含了全部的模块(modules)
2. commons-logging.jar
Apache Commons包中的一个,包含了日志功能。这个包本身包含了一个Simple Logger,但是功能很弱。在运行的时候它会先在CLASSPATH找log4j,如果有,就使用log4j,如果没有,就找JDK1.4带的 java.util.logging,如果也找不到就用Simple Logger。
commons-logging.jar的出现是一个历史的的遗留的遗憾,当初Apache极力游说Sun把 log4j加入JDK1.4,然而JDK1.4项目小组已经接近发布JDK1.4产品的时间了,因此拒绝了Apache的要求,使用自己的java.util.logging,这个包的功能比log4j差的很远,性能也一般。
后来Apache就开发出来了commons-logging.jar用来兼容两个 logger。因此用commons-logging.jar写的log程序,底层的Logger是可以切换的,你可以选择 log4j,java.util.logging或者它自带的Simple Logger。不过我仍然强烈建议使用log4j,因为log4j性能很高,log输出信息时间几乎等于System.out,而处理一条log平均只需要5us。你可以在Hibernate的src目录下找到Hibernate已经为你准备好了的log4j的配置文件,你只需要到Apache 网站去下载log4j就可以了。commons-logging.jar也是必须的jar包。
3. jdom-1.0.jar
解析xml文件
4.spring-1.2.6.jar
spring核心包
5.wsdl4j-1.6.1.jar
连接wsdl
6.xbean-spring-2.8.jar
xbean 和 spring 结合所需包
7.ojdbc14.jar
连接数据库
编写接口
package dao;
public interface Bank {
String OperateMoney(String card,double total);
}
编写实现类
package dao.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.junit.Test;
import dao.Bank;
import dao.BaseDao;
public class BankImpl implements Bank {
@Override
public String OperateMoney(String card, double total) {
String info = "";
if(1 == update(card, total)){
info = "success";
}else{
info = "false";
}
return info;
}
private int update(String card, double total){
Connection con = BaseDao.getConnection();
String sql = "update bank_card set total = total + ? where card = ? ";
int row = 0;
entity.Bank bank = select(card);
if(null != bank){
if((bank.getTotal() + total) > 0){
try {
PreparedStatement pState = con.prepareStatement(sql);
pState.setDouble(1, total);
pState.setString(2, card);
row = pState.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return row;
}
private entity.Bank select(String card){
Connection con = BaseDao.getConnection();
String sql = "select * from bank_card where card = ? ";
ResultSet result = null;
entity.Bank bank = new entity.Bank();
try {
PreparedStatement pState = con.prepareStatement(sql);
pState.setString(1, card);
result = pState.executeQuery();
if(result.next()){
bank.setId(result.getInt(1));
bank.setCard(result.getString(2));
bank.setTotal(result.getDouble(3));
}
} catch (SQLException e) {
e.printStackTrace();
}
return bank;
}
}
建立services.xml文件,需要放在WebContent/WEB-INF/classes/META-INF/xfire目录下
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>OperateMoney</name>
<namespace>localhost:8080/fifth/</namespace>
<serviceClass>dao.Bank</serviceClass>
<implementationClass>dao.impl.BankImpl</implementationClass>
</service>
</beans>
修改web.xml文件,加入一个servlet
<servlet>
<servlet-name>xFireServlet</servlet-name>
<servlet-class>
org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>xFireServlet</servlet-name>
<url-pattern>/service/*</url-pattern>
</servlet-mapping>
- tomcat下搭建简单的xfire web services项目
- tomcat和websphere下调用xfire web services
- XFire:轻松简单地开发Web Services
- XFire:轻松简单地开发Web Services
- XFire发布Web Services
- 使用Myeclipse开发基于xfire的Web Services 入门
- 使用Myeclipse开发基于xfire的Web Services 入门
- 基于xfire的web service搭建
- Web Services的简单介绍
- Web Services的简单介绍
- 开发简单的Web Services
- Web Services的简单介绍
- XFire:开发Web服务的简单方式
- mac下java web项目搭建eclipse+Tomcat
- Linux下搭建Web项目运行环境Tomcat+Mysql+Jdk
- Linux下搭建Web项目运行环境Tomcat+Mysql+Jdk
- Tomcat 下Web项目的定时任务
- tomcat下发布自己的WEB项目
- 视频网站社交化风潮涌起 或创造盈利新模式
- opencv第三章习题2
- 基础总结篇之五:BroadcastReceiver应用详解
- 【SQL分享】字符串左对齐或右对齐显示
- IE6解决最小高度和最小宽度的问题
- tomcat下搭建简单的xfire web services项目
- Android SAX读取XML文件
- 有时候最困难的事情,就是坚持
- rational rose使用资料教程汇总
- tomcat和websphere下调用xfire web services
- mknod
- 打包程序如何生成程序下的资源目录
- c++内存的分布
- "_OBJC_CLASS_$_CALayer"问题解决