我编写了一些代码,利用SOAPUI作为用户界面,通过restful服务将一些数据保存到数据库中。我用@put来做这个。下面是运行的步骤:
1-在Tomcat9.0服务器上运行代码。2-使用SOAPUI中的URL来放置一些数据。
但是当我使用PUT in时,给出第一个和最后一个的字符串值,然后运行它,这些值不会添加到我的数据库中。Hoewer,json文件获得正确的值。
{
   "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);
    }
}这就是我的联系:
public class database {
public static Connection getConnection() {
            try {
                String driver = "com.mysql.jdbc.Driver";
                String url = "jdbc:mysql://localhost:3306/testdb";
                String username = "root";
                String password = "00000";
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(url, username, password);
                System.out.println("Connected");
                return conn;
            } catch(Exception e) {System.out.println(e);}
            return null;    
            }
public static void insert(final String var1, final String var2) {
        try {
            Connection con = getConnection();
            PreparedStatement posted = con.prepareStatement("INSERT INTO student (first, last) VALUES ('"+var1+"', '"+var2+"')");
            posted.executeUpdate();
        } catch(Exception e) {System.out.println(e);}
        finally {
            System.out.println("Insert completed");
        }
    }
}控制台上的输出是:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver java.lang.ClassNotFoundException: com.mysql.jdbc.Driver java.lang.NullPointerException插入已完成
如何正确地将web服务连接到数据库中以保存数据库中的某些记录?非常感谢你帮助我。
发布于 2019-07-10 15:41:51
只需下载并将mysql连接器 jar添加到项目构建路径即可。
或
将jar文件添加到WEB/lib文件夹中。右键单击Eclipse中的项目,然后转到“构建路径>配置构建路径”,添加“”库,这将确保类路径中包含所有WEB/lib jars。
如果使用maven,也可以使用依赖项:
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.6</version>
</dependency>编辑:右键单击项目“=>构建路径=>配置构建路径=>”选项卡“库”,然后单击“添加外部JAR”,然后指向您的文件“mysql-连接器-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;
    }
}https://stackoverflow.com/questions/56974046
复制相似问题