使用java和mybatis spring在EKS中运行的应用程序向oracle插入和更新值时出现的数据库问题
我有一个JavaSpring独立应用程序,它将向Oracle插入/更新对象列表。当我在本地运行时,它会遍历循环并插入和更新所有对象。但当我在EKS中部署同一个应用程序(这是一个批处理作业)时,它正在插入/更新第一个关闭连接的对象,紧接着spring上下文也关闭了。因此,它不是插入/更新除第一个对象之外的所有对象。注意:在日志中没有看到任何异常
我正在使用mybatis spring与oracle进行交互。我的问题是这样的
<insert id="insert" parameterType="com.mycompany.Employee">
INSERT INTO TABLE (col1,col2,....)
VALUES (val1,val2,val3,....)
</insert>
<update id="update" parameterType="ccom.x.x.x">
UPDATE TABLE
SET
col1 = #{subadv_acctng_clos_prc},
col2 = #{local_subadv_acctng_clos_prc},
.
.
WHERE colx = valx
</update>
我的Dao impl看起来像这样
public void insert(Employee emp) {
try {
getSqlSession().insert("Map.insert", emp);
} catch (Exception e) {
log.error("Error while inserting:" + e.getMessage());
}
}
public int update(Employee emp) {
int status = 0;
try {
status = getSqlSession().update("Map.update", emp);
} catch (Exception e) {
log.error("Error while updating:" + e.getMessage());
}
return status;
}
调用方方法
void Insert(List<EMp> list)
{
for (Iterator iterator = list.iterator(); iterator.hasNext(); )
{
Emp emp= iterator.next();
int status=update(emp);
if(status==0)
{
insert(emp)
}
}
}
共 (0) 个答案