編集:これを修正する方法を理解し、以下の回答に掲載しました。タイプの戻り値のコンバータが見つかりません - dbコールのSpring Rest API
私は、dbを照会して2つの値を返すAPIを作成しようとしています。私はそれがコンソールに値を吐き出すことを見ることができるので、dbクエリが動作することを知っています。私はそれを実行する場合でも、私はこのエラーを取得していない:タイプの戻り値が見つかりませコンバータ:ここでは、クラスhello.GetPatientInfo
は私のコントローラのコードである:ここで
package hello;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class PatientInfoController {
@RequestMapping("/patientinfo")
@ResponseBody
public GetPatientInfo getPatientInfo (@RequestParam String ssnum){
return new GetPatientInfo(ssnum);
}
}
はそれのための私のクラスである。
package hello;
import com.automation.dataprovider.DatabaseFunctions;
public class GetPatientInfo {
DatabaseFunctions db = new DatabaseFunctions();
private final String pname;
private final String patno;
public GetPatientInfo(String ssnum){
this.patno = getPatNo(ssnum);
this.pname = getPname(ssnum);
}
public String getPatNo(String ssnum){
String query = "SELECT PATNO FROM lib.PATIENTS WHERE SSNUM = '" + ssnum +"'";
String patno = db.returnSingleValue(query).toString();
System.out.println(patno);
return patno;
}
public String getPname(String ssnum){
String query = "SELECT PNAME FROM lib.PATIENTS WHERE SSNUM = '" + ssnum +"'";
String pname = db.returnSingleValue(query).toString();
System.out.println(pname);
return pname;
}
}
私は以前にAPIを作成したことがないので、私は根本的に何かをやっていると確信しています。どんな助けでも大歓迎です。
完全なスタックトレースを提供してください。これはおそらく、オブジェクトをjson形式に変換できないマッピングに関連しています。 –
@PedroMadridは既に述べました。 Springがyout Java ObjectをJSONにマップできないようです。機能を持たない単一のラッパーオブジェクトだけを返すようにしてください。 – grahan
[@ResponseBodyを使用してSpring ControllerからJSONデータを返す方法](http://stackoverflow.com/questions/32905917/how-to-return-json-data-from-spring-controller-using-responsebody)の可能な複製 –