gpt4 book ai didi

java - Spring Jdbc 模板 + MySQL = TransientDataAccessResourceException : Invalid Argument Value : Java. io.notSerializationException

转载 作者:行者123 更新时间:2023-11-29 01:47:33 25 4
gpt4 key购买 nike

我正在使用 spring jdbc 模板将一些数据插入数据库,但出现此错误。

这是我的代码:

JdbcTemplate insert = new JdbcTemplate(dataSource);
for(ResultType result : response.getResultSet().getResult())
{
Object[] args = new Object[] {result.getAddress(), result.getCity(), result.getState(), result.getPhone(), result.getLatitude(), result.getLongitude(),result.getRating().getAverageRating(), result.getRating().getAverageRating(), result.getRating().getTotalRatings(), result.getRating().getTotalReviews(), result.getRating().getLastReviewDate(), result.getRating().getLastReviewIntro(), result.getDistance(), result.getUrl(), result.getClickUrl(), result.getBusinessUrl(), result.getBusinessClickUrl()};
insert.update("INSERT INTO data.carwashes ( address, city, state, phone, lat, lng, rating, average_rating, total_ratings, total reviews, last_review_date, last_review_intro, distance, url, click_url, business_url, business_click_url, category_id, zipcode_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,96925724,78701)", args);
}

相当冗长的代码..但是,基本上它从对象获取值并将其粘贴到数组并将该数组传递给 jdbc 模板的插入方法。

我们将不胜感激。

最佳答案

我的猜测是您的 arg 数组中的一项是 JdbcTemplate 无法识别的类型,(即它不是 StringDate ,等等),所以它在语句上调用 setObject()。然后,驱动程序将尝试将该参数序列化为二进制文件,发现它不可序列化,并抛出异常。

确保数组中的参数都是您认为应该的,例如它们不应该是您自己的类的实例,而应该是标准的 Java 类型。

关于java - Spring Jdbc 模板 + MySQL = TransientDataAccessResourceException : Invalid Argument Value : Java. io.notSerializationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2955135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com