我正在尝试将动态 JSON 字符串传递给我的 REST Web 服务,该服务又将用于填充 mysql 数据库。我可以使用硬编码的 JSON 字符串来做到这一点,但是我不知道如何传递动态 JSON 字符串。
如何检索通过 WebService 传入的参数,将其解析为 JSON,并将其保存到数据库中?
任何见解都值得赞赏,因为我对这个主题很陌生。我附上了用于硬编码 JSON 字符串解析并添加到 mysql 数据库的代码。
我的 StackService.java
import java.util.Date;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import org.apache.log4j.Logger;
import org.hibernate.Session;
import com.google.gson.Gson;
import com.tracker.domain.Flow;
import com.tracker.persistence.HibernateUtil;
@Path("")
public class StackService {
private Logger LOG = Logger.getLogger(StackService.class);
/**
* curl -X GET http://localhost:8080/stack
*/
@GET
@Path("")
@Produces(MediaType.APPLICATION_JSON)
public void getStock() {
String stackJsonString = "{\"stack_name\":\"GOOG\",\"id\":null\"}";
Gson gson = new Gson();
Stack stock = gson.fromJson(stockJsonString, stock.class);
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
String stockName = stock.getstock_name();
stock.setstock_name(stockName);
session.beginTransaction();
session.save(stock);
session.getTransaction().commit();
}
}