0
MyController.java日付パラメータを使用してHibernateでストアドプロシージャを呼び出す方法
@RequestMapping(value = "/ohlc",method = RequestMethod.POST)
public @ResponseBody List<OhlcResponse> getOhlc(@RequestBody OhlcRequest ohlcRequest) {
List<OhlcResponse> ohlc = ohlcService.getOhlc(ohlcRequest);
return ohlc;
}
OhlcDaoImpl.java
Query query = session.createSQLQuery(
"CALL uspGetOhlcData(:stockCode,:fromDate,:toDate)")
.addEntity(OhlcResponse.class)
.setParameter("stockCode", ohlcRequest.getStockSymbol())
.setParameter("fromDate",ohlcRequest.getFromDate())
.setParameter("toDate", ohlcRequest.getToDate());
List<OhlcResponse> list = query.list();
return list;
}
OhlcResponse.java
public class OhlcResponse {
private int Id;
private BigDecimal MaxPrice;
private BigDecimal MinPrice;
private BigDecimal PreviousClosingPrice;
private BigDecimal ClosingPrice;
public BigDecimal getMaxPrice() {
return MaxPrice;
}
public void setMaxPrice(BigDecimal maxPrice) {
MaxPrice = maxPrice;
}
public BigDecimal getMinPrice() {
return MinPrice;
}
public void setMinPrice(BigDecimal minPrice) {
MinPrice = minPrice;
}
public BigDecimal getPreviousClosingPrice() {
return PreviousClosingPrice;
}
public void setPreviousClosingPrice(BigDecimal previousClosingPrice) {
PreviousClosingPrice = previousClosingPrice;
}
public BigDecimal getClosingPrice() {
return ClosingPrice;
}
public void setClosingPrice(BigDecimal closingPrice) {
ClosingPrice = closingPrice;
}
ストアドプロシージャ:uspGetOhlcDataあなたは私のストアドプロシージャを見ることができるよう
CREATE PROCEDURE uspGetOhlcData
@StockSymbol varchar(50),
@fromDate date,
@toDate date
AS
BEGIN
SELECT spd.ClosingPrice, spd.PreviousClosingPrice, spd.MinPrice, spd.MaxPrice
FROM StockPriceDetl spd
inner join Stock stk on stk.Id = spd.StockId
inner join StockPriceMast spm on spm.Id = spd.MastId
WHERE stk.StockSymbol= @StockSymbol AND spm.TranDate Between @fromDate and @toDate
END
GO
はmaxprice、minprice、previousClosingPriceとClosingPriceを返します。私はjsonフォームで4つのデータをohlcResponseクラスにバインドして返したいと思います。自社コード:
私は現在取得していますエラーが構文エラーを@PO
は迅速な対応をありがとうございました。今はそれだと言います HTTPステータス500 - 要求の処理に失敗しました。ネストされた例外はorg.hibernate.MappingExceptionです:不明なエンティティ:com.infodev.models.OhlcResponse – sagar
'OhlcResponse'クラスに' @ Entity'を注釈付けするか、またはXMLマッピングでそれをリストする必要がありますを使用して)。 – coladict