【发布时间】:2026-01-16 05:25:01
【问题描述】:
我已使用以下代码创建表:
CREATE TABLE IF NOT EXISTS TRENDING (ID SERIAL PRIMARY KEY , TOPIC TEXT , CATEGORY TEXT ,QUESTION TEXT,ANSWER TEXT,PROFILEPIC TEXT NOT NULL,TICK TIMESTAMP,url TEXT);
我正在使用以下代码来接受发布请求并将日期插入 postgres db。
@POST
@Path("addTrending")
@Consumes({ MediaType.APPLICATION_JSON })
@Produces(MediaType.APPLICATION_JSON)
public static String addTrending(Trending trending){
String songString = "requesting";
ArrayList<Success> output = new ArrayList();
try {
Connection connection = MyResource.getConnection();
PreparedStatement stmt = connection
.prepareStatement("INSERT INTO TRENDING (TOPIC,CATEGORY,QUESTION,ANSWER,PROFILEPIC,TICK,URL) VALUES(?, ? , ? , ? , ? , ? , ? )");
stmt.setString(1, trending.getTopic());
stmt.setString(2, trending.getCategory());
stmt.setString(3, trending.getQuestion());
stmt.setString(4, trending.getAnswer());
stmt.setString(5, trending.getProfilePic());
stmt.setTimestamp(6, trending.getTimeStamp());
stmt.setString(7, trending.getUrl());
songString = "success";
} catch(Exception ex){
songString = "failure";
}
output.add(new Success(songString));
return output.toString();
}
以下是我正在发出的 JSON 请求:
{
"timeStamp": "2016-10-11 14:11:52.516596",
"question": "what?",
"answer": "yes",
"profilepic": "assa",
"topic": "Paul",
"id": 2,
"category": "FIlter",
"url": "a"
}
我已经正确使用了消费者注解。我还将application/json 设置为我的内容类型,但我仍然得到:
HTTP 状态 415 - 不支持的媒体类型
我怎样才能解决这个问题?
【问题讨论】:
-
但是类趋势无法解析json
-
但是,如果我将字符串作为参数传递,并且尝试将字符串转换为 json 对象并执行插入操作,我可以做到。
标签: postgresql web-services heroku jersey jax-rs