执行sql的时候不报错也不继续执行

package com.wangdonghui.dbcd;

import java.sql.SQLException;

import javax.sql.DataSource;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;

public class JDBCTest {

private ApplicationContext ctx = null;
private JdbcTemplate jdbcTemplate;
{
    ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
    jdbcTemplate = (JdbcTemplate) ctx.getBean("jdbcTemplate");
    System.out.println("fffffffff");
}
@Test
public void test() throws SQLException{
    String sql = "insert into people(id,name) values ('5','6')";
    int result = jdbcTemplate.update(sql);
    System.out.println(result);
}

}


没有空指针,但是到 int result = jdbcTemplate.update(sql);这行代码就不执行也不往下走了,求大神告知

6个回答

你应该把SQLException catch住,然后打印出error,表people里面的id,你确认是string?

检查下sql呢,如果你id是int类型,不用加''吧!

madman_donghui
一个在努力变强的二狗子 应该不是引号的问题,加不加我都试过
大约 4 年之前 回复

String sql = "insert into people(id,name) values ('5','6')";
int result = jdbcTemplate.update(sql);
一个是Insert,一个又是update??

madman_donghui
一个在努力变强的二狗子 应该添加和修改都可以用update方法吧?我试了改成update的sql也是不行
大约 4 年之前 回复

你在使用junit时,那个条条,是绿色的,还是红色的?

zy_281870667
Bug开发攻城狮 回复你揍嘛咧: 恩,问题解决就好。别忘了采纳答案哦
大约 4 年之前 回复
madman_donghui
一个在努力变强的二狗子 嗯嗯 谢谢 我换成class类了,能看到错误了,谢谢前辈
大约 4 年之前 回复
zy_281870667
Bug开发攻城狮 回复你揍嘛咧: 这样吧,你把jdbcTemplate.update(sql); 这一行,用tra{}catch 包裹住
大约 4 年之前 回复
zy_281870667
Bug开发攻城狮 回复你揍嘛咧: 不是看eclipse的console,是看junit的filter stack trace,就是junit右下角的那东西
大约 4 年之前 回复
madman_donghui
一个在努力变强的二狗子 回复伈照不宣: 但是控制台里是没有错误的啊
大约 4 年之前 回复
zy_281870667
Bug开发攻城狮 回复你揍嘛咧: 红色的,那就是程序出错了,你看下错误信息就知道是什么问题了
大约 4 年之前 回复
madman_donghui
一个在努力变强的二狗子 是红色的
大约 4 年之前 回复

这种问题就应该debug看下到底是哪个地方出的问题。然后在寻找解决方法

去数据库执行一下那条SQL,可能是数据表锁了

DreamingJ
捍卫简单 回复你揍嘛咧: 加上try catch 看看控制台的打印结果
大约 4 年之前 回复
madman_donghui
一个在努力变强的二狗子 数据库里可以修改,表没有锁
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐