数据库查询一遍,有就更新,没有就插入操作(从接口调数据持久化到数据库,好用,数据永远是最新的不会重复)

574 篇文章 4 订阅
public void insertDetail(){
	try {
	ApplicationContext context = new ClassPathXmlApplicationContext("applicationBt.xml");
	JdbcTemplate jdbcTemplate = (JdbcTemplate)context.getBean("jdbcTemplate");	
	System.out.println("-----------更新转账明细------------------");
	String jsonParam=this.read();
    JSONObject job = JSONObject.fromObject(jsonParam);
    if(null!=job.getString("a1")){
    	String sql="select count(1) from bankDetail where  sequenceNo=?";
		Object[] param=new Object[]{job.getString("a1")};
		int i=jdbcTemplate.queryForInt(sql, param);
		if(i>0){
			Object[] param2=new Object[]{job.getString("a16"),job.getString("a4"),job.getString("a3"),job.getString("a14"),job.getString("a10"),job.getString("a15"),job.getString("a1")};
		    sql="update bankDetail set cardId=?,toAccountName=?,toAccountNo=?,bank_id=?,accountNO=?,accountName=? where sequenceNo=?";
			jdbcTemplate.update(sql, param2);
		}else{
			Object[] param1=new Object[]{
					job.getString("a16"),job.getString("a1"),
					job.getString("a2").substring(0, 10),
					job.getString("a4"),job.getString("a3"),
					job.getString("a5"),job.getString("a6"),
					job.getString("a7"),job.getString("a2"),
					job.getString("a11"),job.getString("a12"),
					job.getString("a13"),job.getString("a14"),
					job.getString("a10"),job.getString("a15"),
					job.getString("a17"),job.getString("a18")
			};
			String sql1="insert into bankDetail(d_guid,cardId,sequenceNo,tranDate,toAccountName,toAccountNo,amount,accountBalance,summary,transDateTime,state,pay_from,pro_newid,btype,bank_id,AccountNo,AccountName,userpk,cust_guid) values(newid(),?,?,?,?,?,?,?,?,?,0,?,?,?,?,?,?,?,?)";
			jdbcTemplate.update(sql1, param1);
		}
    }
	

     System.out.println("插入充值明细==");
 	//返回服务端
		    this.getResponse().setCharacterEncoding("utf-8");
			PrintWriter out = this.getResponse().getWriter();
		    out.write("");
		    out.flush();
		    out.close();
    } catch (I){

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值