服务器端配置如下
1.首先新建一个web service project.如下图
2.然后新建一个类,如下图
3.编写连接数据库的程序,如下
package server;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
public class WebDao {
public Connection conn = null;
public void getConnection() {// 获取连接
try {// jdbc-odbc桥接
// MySQL
Class.forName("com.mysql.jdbc.Driver");// 1.加载驱动
conn = DriverManager.getConnection("jdbc:mysql://localhost/test",
"root", "1234");// 2.获取连接,格式:jdbc:子协议:数据库定位器
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
@SuppressWarnings({ "rawtypes", "unchecked" })
public ArrayList query(String sql) {// 查询
ArrayList tcus=null;
ResultSet rs = null;
String account;
String password;
String cname;
int cbalance;
String number;
try {
getConnection();
Statement stmt = conn.createStatement();// 3.生成Statement
rs = stmt.executeQuery(sql);
tcus=new ArrayList();
while(rs.next()){
account=rs.getString("account");
password=rs.getString("password");
cname=rs.getString("cname");
cbalance=rs.getInt("cbalance");
number=rs.getString("number");
tcus.add(account);
tcus.add(password);
tcus.add(cbalance);
tcus.add(number);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
close();
}
return tcus;
}
public int update(String sql) {// 插入、删除、修改
int i = 0;
try {
getConnection();
Statement stmt = conn.createStatement();// 3.生成Statement
i = stmt.executeUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
} finally {
close();
}
return i;
}
public void close() {// 关闭资源
try {
if (conn != null) {
conn.close();
conn = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
4.在src上点击右键选择–other–MyEclipse—web Services—web service单击next,如下图设置。
点击next如下图设置
点击Finish效果如下
5.将Mysql数据库的jar包复制到lib文件下,然后加载jax-ws的库,工程—属性下做如下图的选择,点击完成即可。
6.将工程发布到tomcat上,点击下面图标
单击add如下配置
然后如下图操作,开启tomcat
7.至此服务器端完成配置
在IE上输入网址:http://localhost:8080/WebService/WebDaoPort?wsdl,检验效果如下图
客户端配置如下
1.新建一个包client。
2.点击下面图标
点击next、然后做如下配置,next—finish即可。
完成效果如下
3.编写test类,完成数据库调用。程序如下
package test;
import java.util.ArrayList;
import client.WebDaoDelegate;
import client.WebDaoService;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
WebDaoService server = new WebDaoService();
WebDaoDelegate dd = server.getWebDaoPort();
//int result = dd.update("insert into t_customer values('44241','42441','1221121',1000,'121122')");
//System.out.println(result);
@SuppressWarnings("rawtypes")
ArrayList data=(ArrayList) dd.query("select * from t_customer where account='444'");
for(int i=0;i<data.size();i++){
System.out.println(data.get(i));
}
}
}
结果如下
注意事项:
1.编写数据库查询代码时,不能返回结果集(ResultSet ),webservice不支持。
2.源码:http://download.csdn.net/detail/yangghuannn/9287259