Eclipse上发布Web Service

  1. 云栖社区>
  2. 博客>
  3. 正文

Eclipse上发布Web Service

pandamonica 2018-08-31 14:48:04 浏览1191
展开阅读全文

首先我们的eclipse上有一个java的web项目,其中的一个类,DAO类名为MaraDao.java,它所能提供的功能是查询数据库并返回其中的字符串。我们在eclipse上用testNG运行它看看它原本的工作:
_
运行结果:就是在console中显示数据库读取出来的字符串。
_
test代码

package com.tsmi.mysql.dao;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.testng.AbstractTransactionalTestNGSpringContextTests;
import org.testng.annotations.Test;


import com.tsmi.mysql.domain.Mara;

@ContextConfiguration("classpath*:/mysqlHibernateContext.xml")
public class MaraDaoTest extends AbstractTransactionalTestNGSpringContextTests{
    
    private MaraDao md2;

    public MaraDao getMd2() {
        return md2;
    }
    @Autowired
    public void setMd2(MaraDao md2) {
        this.md2 = md2;
    }
    
  @Test
  public void getMatnr() {
      List<Mara> rlist = md2.getMatnr();
      int i1 = rlist.size();                  
        System.out.println(i1);
        for (int i = 0; i < i1; i++) {   
            Mara m2 = rlist.get(i);
            String sSn = m2.getsMatnr();
            String sGhdw = m2.getsEname();
            System.out.println(sSn+"  "+sGhdw);
        }
  }

}

MaraDAO.java的代码如下:

package com.tsmi.mysql.dao;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowCallbackHandler;
import org.springframework.stereotype.Repository;
import com.tsmi.mysql.domain.Mara;

@Repository
public class MaraDao {
    private JdbcTemplate jdbcTemplate;

    @Autowired
    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }
    
    
    final static String SELECT_TOP_50 = "select * from mara limit 50";
                                
    public List<Mara> getMatnr(){
        
        final List<Mara> rml = new ArrayList<Mara>();
        
        jdbcTemplate.query(SELECT_TOP_50, new Object[] { }, new RowCallbackHandler() {

            public void processRow(ResultSet rs) throws SQLException {
                Mara ma1 = new Mara();
                ma1.setsMatnr(rs.getString("matnr"));
                ma1.setsEname(rs.getString("ename"));
                rml.add(ma1);
            }

        });

        return rml;
        
    }
    
}

上面展示的java代码是非常普通的spring代码,下面我们要把上述类发布成web service。
_
_
_
_
_
_
点击Launch按钮测试,会弹出浏览器,如下图
_
点finish按钮以后
_
web service发布之后,按照发布过程中的设置eclipse为我们自动创建了一个web service client项目,如下图所示:
_
另外原有的项目也发生了变化:
_
_
这个自动创建的client项目运行如下所示:
_

网友评论

登录后评论
0/500
评论
pandamonica
+ 关注