WebServiceサービス構築
16258 ワード
機能紹介:WebServiceのインタフェースを提供し、他の人が呼び出すことができます.知識点: WebServiceの使用 XMLドキュメントアクション Spring+jdbcリンクデータベースの注入 データベース操作jdbcTemplate操作 を使用
システム:Win 7
準備ツール:eclipse、下図は私のIDEで、自分でeclilpseの公式サイトでダウンロードしました.
http://www.eclipse.org/
データベース:MyQSL 5.6プロジェクトはOracleで、このDemoは私のパソコンで構築され、主に総括と思い出に使われています.oracleに詳しくないので(後で主にoracleを使う)、今はmysqlに代わってください.mysql公式サイトで解凍版をダウンロードすると、データベースのインストールはあまり紹介されず、ネット上にはたくさんあります.
Tomcat:apache-tomcat-7.0.64
環境構築はeclipseで開発されているので(MyEclipseに比べて軽く、多くの機能は自分でプラグインや構成をダウンロードする必要がある)、まず構成についてお話ししましょう. tomcatをダウンロードしてディレクトリの下に置きます.ここで説明するのは、後でわけのわからない問題が発生しないように、保存されているディレクトリは英語のディレクトリでスペースを持たないほうがいいということです.私のtomcatディレクトリ:D:tomcatapache-tomcat-7.064 eclipseでtomcatを構成する step 1:eclipse->Window->Preferences->Server-Runtime Environmentsを開く図 Step 2:私が配置したので、すでに3つのApcache Tomcatが存在します.Addをクリックしてバージョンを選択し(何の役に立つか分かりません)、あなたがダウンロードしたtomcatに対応して、next Step 3:Browseをクリックして経路の中でDirectoryを見つけ、FinishをクリックすればOKです.ここで一言、私が使っているJREバージョンは1.7です.自分のJREを表示する:win+rを押してcmdを入力して車に戻って、コマンドラインのインタフェースに入ってjava-version 下図の中で配置したばかりのTomcat を入力します
Webプロジェクトを作成し、構成したばかりのTomcatを選択し、nextを選択します. ここで注意が必要なのは、EclipseとMyEclilpseは少し違います.Eclipseが作成したWebプロジェクトのデフォルトで使用されるパスはWebContentですが、MyEclipseのデフォルトで使用されるのはWebRootです.MyEclipseからエクスポートされたプロジェクトがEclipseを走る場合は、構成を変更する必要があります.現在のプロジェクトのプロファイルです.ワークスペースで現在のアイテムを検索するsettings->org.eclipse.wst.common.component下図の緑の部分
クライアントテストコードは、まず、どのような結果を得る必要があるかを明確にする.リモートクライアントはWebServiceインタフェースを呼び出し、パラメータを入力し、目的の結果を返します. クライアント呼び出し方式:xfire方式を使用します.xfireのjarパッケージが必要です.必要なjarパッケージをWebContent/WEB-INF/libディレクトリに直接コピーし、テストクラスに導入すれば次の のコードになります.
WebServiceサービスはまだ構築されていないため、すべての実行結果は見つかりませんでした.
WebServiceの作成
Firstは、プロジェクトに必要なjarパッケージをWebContent/WEB-INF/libにコピーします.本Demoに必要なjarパッケージはコードにあります記述コードはsrcディレクトリの下に3つのパケットを作成し、それぞれcomである.service、com.service.impl、com.テスト中com.testはクライアントのテストプログラム(もちろん1つのプロジェクトを単独で作成してテストすることもできる)comである.サービスは定義されたWebServiceインタフェース、comである.service.implは、具体的に実装されるクラスパケット であるインタフェース定義:nameによってその人の関連情報 を問い合わせる.実装:
プロファイル WebContent/WEB-INFの下にファイルwebを作成する.xml.内容は以下の通りです:(コードディレクトリと名前が変更されていない場合は、下の内容をそのままコピーすればいい)
構成説明:ラベルのを構成しない場合、デフォルトのservices.xmlパスはWebContent/WEB-INF/META-INF/xfire/services.xml(具体的にどこで構成されているのかは不明ですが、知っている仲間が教えてくれます)同じディレクトリの下にファイルservicesを作成する.xmlこのファイルはWebServiceの主なプロファイルであり、提供されるインタフェースと具体的な実装クラスはここで構成されています.
それぞれが1つのサービスであり、nameが提供するサービス名であり、serviceClassがサービスであるインタフェースであり、implementationClassが具体的な実装であるクラスである.
これで、WebServiceのフレームワークがほぼ完成しました.次はプロジェクトを実行して、テストしましょう.
プロジェクトの実行右クリックアイテムRun AS->Run on server 実行するアイテムを右側のConfiguredに移動->finishでTomcatが起動します.コンソールのログにエラーが報告されているかどうかを確認し、エラーがあればエラーに基づいて問題を特定します.運転後の画面は下図: 私たちが望んでいる結果ではないようです.
so
インタフェースが出てきました.ここまでは構成が成功したことを示しています.[wsdl]をクリックすると、次ののインタフェース情報が表示されます.
OK、最初のクライアントテストコードに戻ります.
コードを実行し、予想された結果は「クエリー(入力値)成功」の結果:
次編では,このコードに基づいて補完し,Spring注入方式を用いてデータベースクエリを行う.
ダウンロードリンク:http://download.csdn.net/detail/crazycodings/9224379
システム:Win 7
準備ツール:eclipse、下図は私のIDEで、自分でeclilpseの公式サイトでダウンロードしました.
http://www.eclipse.org/
データベース:MyQSL 5.6プロジェクトはOracleで、このDemoは私のパソコンで構築され、主に総括と思い出に使われています.oracleに詳しくないので(後で主にoracleを使う)、今はmysqlに代わってください.mysql公式サイトで解凍版をダウンロードすると、データベースのインストールはあまり紹介されず、ネット上にはたくさんあります.
Tomcat:apache-tomcat-7.0.64
環境構築
Webプロジェクトを作成し、構成したばかりのTomcatを選択し、nextを選択します. ここで注意が必要なのは、EclipseとMyEclilpseは少し違います.Eclipseが作成したWebプロジェクトのデフォルトで使用されるパスはWebContentですが、MyEclipseのデフォルトで使用されるのはWebRootです.MyEclipseからエクスポートされたプロジェクトがEclipseを走る場合は、構成を変更する必要があります.現在のプロジェクトのプロファイルです.ワークスペースで現在のアイテムを検索するsettings->org.eclipse.wst.common.component下図の緑の部分
クライアントテストコード
package com.test;
import java.net.MalformedURLException;
import java.net.URL;
import org.codehaus.xfire.client.Client;
public class WebServiceTest {
public static void main(String[] args) throws MalformedURLException, Exception {
// TODO Auto-generated method stub
String url = "http://localhost:8080/WebServiceDemo/services/queryPeople?wsdl" ;
String xml = "xiaoming " ;
Client c = new Client(new URL(url));
Object[] o = c.invoke( "queryPeopleInfo", new Object[]{xml});
// queryPeopleInfo ,xml 。
// ,o ; , 。 WebService , 。
if(o !=null){
String result = o [0].toString();
System. out.println(result );
} else{
System. out.println(" " );
}
}
}
WebServiceサービスはまだ構築されていないため、すべての実行結果は見つかりませんでした.
WebServiceの作成
Firstは、プロジェクトに必要なjarパッケージをWebContent/WEB-INF/libにコピーします.本Demoに必要なjarパッケージはコードにあります
package com.service;
public interface QueryPeople {
public String queryPeopleInfo(String name );
}
package com.service.impl;
import com.service.QueryPeople;
public class QueryPeopleImpl implements QueryPeople{
@Override
public String queryPeopleInfo(String name ) {
// TODO Auto-generated method stub
//
return " " + name + " ";
}
}
プロファイル
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name> XFireServletservlet-name >
<servlet-class> org.codehaus.xfire.transport.http.XFireConfigurableServlet servlet-class>
<init-param>
<param-name> configparam-name >
<param-value> services.xmlparam-value >
init-param>
<load-on-startup> 0 load-on-startup>
servlet>
<servlet-mapping>
<servlet-name> XFireServletservlet-name >
<url-pattern> /services/*url-pattern >
servlet-mapping>
<welcome-file-list>
<welcome-file> index.jspwelcome-file >
welcome-file-list>
web-app>
構成説明:ラベルの
<beans xmlns="http://xfire.codehaus.org/config/1.0" >
<service>
<name> queryPeoplename >
<serviceClass> com.service.QueryPeopleserviceClass >
<implementationClass>
com.service.impl.QueryPeopleImpl
implementationClass>
<style> wrappedstyle >
<use> literaluse >
<scope> applicationscope >
service>
beans>
それぞれが1つのサービスであり、nameが提供するサービス名であり、serviceClassがサービスであるインタフェースであり、implementationClassが具体的な実装であるクラスである.
これで、WebServiceのフレームワークがほぼ完成しました.次はプロジェクトを実行して、テストしましょう.
プロジェクトの実行
: tomcat + , WebService
so
services :http://localhost:8080/WebServiceDemo/services services , services web.xml XFireServlet ,
インタフェースが出てきました.ここまでは構成が成功したことを示しています.[wsdl]をクリックすると、次ののインタフェース情報が表示されます.
OK、最初のクライアントテストコードに戻ります.
コードを実行し、予想された結果は「クエリー(入力値)成功」の結果:
xiaoming
テスト成功!次編では,このコードに基づいて補完し,Spring注入方式を用いてデータベースクエリを行う.
ダウンロードリンク:http://download.csdn.net/detail/crazycodings/9224379