* 接口方法
*/
public void excuteInputDB(SynchServiceConfig synchServiceConfig)
throws Exception {
try {
// if(!"".equals(queryQdParaWayinfo()))
// {
// CLOB clob = oracle.sql.CLOB.createTemporary(oraConn, false, oracle.sql.CLOB.DURATION_SESSION);
// clob.putString(1, queryQdParaWayinfo());
//
// insertMyAnnouncement(VALID_WAYINFO_SENDER, curTime, VALID_WAYINFO_TITTLE, clob);//渠道资料缺失提醒推送
// }
if(!""
.equals(queryQdSysNetpointuser())){
//将String类型转oracle.sql.CLOB类型插入到数据库
CLOB cb = oracle.sql.CLOB.createTemporary(oraConn,
false, oracle.sql.CLOB.DURATION_SESSION);
cb.putString(1
, queryQdSysNetpointuser());
insertQdSysNetpointuser(VALID_WAYINFO_SENDER, curTime, VALID_EMPLOYEE_TITTLE, cb);//营业员资料缺失提醒推送
}
System.out.println("===测试模块END=="
);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 获取缺失的渠道资料的数据
* @throws SQLException
*/
private String queryQdParaWayinfo()
throws SQLException {
/**
* way.id-- id vc_wayacctname-- 渠道经理联系人 way.c_wayid-- 网点编号 vc_acctname--
* 银行帐户名 vc_acctbank-- 开户银行 vc_wayacctno-- 银行帐号 dept_sx1-- 渠道属性
* c_accttype-- 帐户类型 si_chain-- 店铺属性 c_type-- 连锁属性 dept_sx3-- 星级
* way.manager_name--渠道经理
*/
String msg = ""
;
String msgs = ""
;
PreparedStatement ps =
null;
ResultSet rs =
null;
String sql = "select way.id, "
+ " NVL(way.vc_wayacctname, ‘ ‘) AS vc_wayacctname, "
+ " NVL(way.c_wayid, ‘ ‘) AS c_wayid, "
+ " NVL(way.vc_acctname, ‘ ‘) AS vc_acctname, "
+ " NVL(way.vc_acctbank, ‘ ‘) AS vc_acctbank, "
+ " NVL(way.vc_wayacctno, ‘ ‘) AS vc_wayacctno, "
+ " NVL(way.dept_sx1, ‘ ‘) AS dept_sx1, "
+ " NVL(way.c_accttype, ‘ ‘) AS c_accttype,"
+ " NVL(way.si_chain, -9) AS si_chain, "
+ " NVL(way.c_type, ‘ ‘) AS c_type, "
+ " NVL(way.dept_sx3, ‘ ‘) AS dept_sx3, "
+ " NVL(way.manager_name, ‘ ‘) AS manager_name "
+ " from qd_para_wayinfo way where regexp_like(way.c_wayid,‘QD[0-9]{6}‘) and way.si_waystate = 1 "
;
System.out.println("sql......"+
sql);
try {
ps =
oraConn.prepareStatement(sql);
rs =
ps.executeQuery();
while (rs.next()) {
if ("".equals(rs.getString("vc_acctname"
).trim())) {
msg = msg + "银行帐户名为空,"
;
}
if ("".equals(rs.getString("vc_acctbank"
).trim())) {
msg = msg + "开户银行为空,"
;
}
if ("".equals(rs.getString("vc_wayacctno"
).trim())) {
msg = msg + "银行帐号为空,"
;
}
if ("".equals(rs.getString("dept_sx1"
).trim())) {
msg = msg + "渠道属性为空,"
;
}
if ("".equals(rs.getString("c_accttype"
).trim())) {
msg = msg + "帐户类型为空,"
;
}
if (rs.getInt("si_chain") == -9
) {
msg = msg + "店铺属性为空,"
;
}
if (rs.getInt("si_chain") == 3
&& "".equals(rs.getString("c_type"
).trim())) {
msg = msg + "连锁属性为空,"
;
}if("".equals(rs.getString("c_wayid"
).trim())) {
msg = msg + "渠道编号为空"
;
}
if ("".equals(rs.getString("dept_sx3"
).trim())) {
msg = msg + "星级为空"
;
}
if (!""
.equals(msg)) {
msgs = msgs + rs.getString("manager_name") + "|"
+ rs.getString("c_wayid") + "|" + msg+"|"
;
}
msg = ""
;
}
} catch (Exception e) {
e.printStackTrace();
}finally{
if(rs !=
null){rs.close();}
if(ps !=
null){ps.close();}
}
return msgs;
}
/**
* 插入公告表 qd_anno_myAnnouncement
* @throws SQLException
* */
private boolean insertMyAnnouncement(
long sender,Date send_time,String title,Clob cb)
throws SQLException{
boolean flag =
false;
PreparedStatement psInsert =
null;
SimpleDateFormat sf =
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"
);
try {
String sql =
"insert into qd_anno_myannouncement(id, sender , send_time , title , content ) " +
"select qd_anno_myannouncement_seq.nextval,? , ? , ? ,? from dual "
;
psInsert =
oraConn.prepareStatement(sql);
psInsert.setLong(1
, sender);
psInsert.setTimestamp(2
, Timestamp.valueOf(sf.format(send_time)));
psInsert.setString(3
, title);
psInsert.setClob(4
, cb);
int num =
psInsert.executeUpdate();
if(num > 0
){
flag =
true;
}
oraConn.commit();
} catch (Exception e) {
e.printStackTrace();
oraConn.rollback();
}finally{
if(psInsert !=
null){psInsert.close();}
}
return flag;
}
JDBC 操作插入表出现javax.sql.rowset.serial.SerialBlob cannot be cast to oracle.sql.BLOB
标签: