如何从宁静的Web服务获取一些数据并将其保存到数据库?

时间:2019-07-10 15:29:45

标签: java database web-services jax-rs

我已经编写了一些代码,利用SOAPUI作为用户界面,通过静态Web服务将一些数据保存到数据库中。我使用@put来做到这一点。这是运行步骤:

1-在Tomcat 9.0服务器上运行代码。 2-使用SOAPUI中的URL放置一些数据。

但是,当我在SOAPUI中使用PUT时,给出first和last的字符串值并运行它,这些值不会添加到我的数据库中。 Hoewer,json文件的值正确

shouldComponentUpdate(nextProps, nextState) {
    if (this.props.data === nextProps.data) {
      return false;
    } else {
      return true;
    }
  }
  componentDidUpdate(prevProps,prevState){
      if(prevProps.data.length !== this.props.data.length){
        this.props.onFetchAction()

      }
  }

这是我代码的重要部分:

{
   "first": "Jon",
   "last": "Snow"
}

这是我的联系方式:

package tomcat.rest.eclipse.database;

public class Score {

    public static String first, last;
}

public class ScoreService {
@PUT
    @Path("/score")
    @Produces("application/json")
    public String update(@QueryParam("first") String first, 
                             @QueryParam("last") String last) {
                    Score.first = first;
                    Score.last = last;

                    final String var1 = Score.first;
                    final String var2 = Score.last;
                    database.insert(var1, var2);

                    String pattern = "{ \"first\":\"%s\", \"last\":\"%s\"}";
                    return String.format(pattern, Score.first, Score.last);
    }
}

控制台上的输出为:

  

java.lang.ClassNotFoundException:com.mysql.jdbc.Driver       java.lang.ClassNotFoundException:com.mysql.jdbc.Driver       java.lang.NullPointerException       插入完成

如何将Web服务正确连接到数据库以在数据库中保存一些记录?非常感谢您对我的帮助。

1 个答案:

答案 0 :(得分:0)

只需下载mysql connector jar并将其添加到项目构建路径即可。

  

将jar文件添加到您的WEB-INF / lib文件夹中。右键单击您的项目   在Eclipse中,然后转到“构建路径>配置构建路径”,添加“ Web   应用程序库”库,这将确保所有WEB-INF / lib jar   包含在类路径中。

或者,如果使用maven,则为jdbc mysql maven依赖项:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.6</version>
</dependency>
  

编辑:右键单击您的项目=>构建路径=>配置构建   路径=>选项卡“库”,然后单击“添加外部JAR”,然后   指向您的文件“ mysql-connector-java-5.1.17-bin.jar”

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.EmptyStackException;

public class SingletonConnection   {


    private static Connection connection = null ;
    static 
    {
        try{
            Class.forName("com.mysql.jdbc.Driver");
            connection = DriverManager.getConnection
                    ("jdbc:mysql://localhost:3306/dbnameX","root","");
        }catch(Exception ex)
        {

        }

    }
    public static Connection getConnection() throws Exception {
        return connection;
    }


}