本帖最后由 on_my_way20xx 于 2010-02-04 14:47:39 编辑

解决方案 »

  1.   

    prod = (Production)jdbcTemplate.queryForObject(query,new Object[]{prod_id},
    new int[]{java.sql.Types.INTEGER},new ProdRowMapper());这段代码里面的queryForObject方法里面的参数都是什么啊?是写错了,还是java新出的写法啊。
      

  2.   


    是Spring的一个函数啊
    public Object queryForObject(String sql,
                                 Object[] args,
                                 int[] argTypes,
                                 Class requiredType)
                          throws DataAccessException 
      

  3.   

    list = this.jdbcTemplate.queryForList(sql); 我的是在sql语句直接拼的字符串 没有在后面加new object【】对象 加了话 是查不到条件要找的对象 
    不知道为什么 所以 我想
    应该是new Object[]{prod_id},
    new int[]{java.sql.Types.INTEGER},new ProdRowMapper()这里的问题 你试试 把这个对象用拼字符串的形式看看  个人愚见
      

  4.   

    如果是查询的话 你那些参数不应该是new出来的吧 要么为null要么就是你set进去的值
      

  5.   

    这个模板方法支持PrepareStatement中的?做为参数吗?我没用过模板不知道啊,直接拼sql再试试看
      

  6.   

    其实我之前都是在BO层拼接好SQL语句直接执行的,但是考虑到 "or 1=1"这样的Sql语句注入的安全问题,所以想用PreparedStatement set进去的
      

  7.   

    那就不要用模板了,直接用PrepareStatement就好了
      

  8.   

    jdbcTemplate 怎么 直接调用PreparedStatement
      

  9.   

    Production name = (String) jdbcTemplate.queryForObject("select * from t_productions where prod_id=?", new Object[] {id}, Production.class);  
      

  10.   

    final User user = new User();      
        
    jdbcTemplate.query("SELECT * FROM USER WHERE user_id = ?",    
        
    new Object[] {id},    
        
    new RowCallbackHandler() {    
        
    public void processRow(ResultSet rs) throws SQLException {    
        
    user.setId(rs.getString("user_id"));  
        
    user.setName(rs.getString("name"));  
        
    user.setSex(rs.getString("sex").charAt(0));    
        
    user.setAge(rs.getInt("age"));    
        
    }  
        
    });  
      

  11.   

    new Object[] {id},这个是参数啊。你怎么传的啊
      

  12.   

    new Object[]{prod_id},
    ->
    new Object[]{id},
      

  13.   

    jdbcTemplate.queryForObject
    这个方法还真没用过
    一般都用这几个
    jdbcTemplate.queryForList
    jdbcTemplate.queryForMap
    jdbcTemplate.queryForLong
      

  14.   


    prod = (Production)jdbcTemplate.queryForObject(query,new Object[]{prod_id},
    new int[]{java.sql.Types.INTEGER},new ProdRowMapper());
    如醒目字体所示,我就是这样传的,不过兄弟你这个方法少了一个参数而已
      

  15.   

    是Spring的一个函数啊 
    public Object queryForObject(String sql, 
                                Object[] args, 
                                int[] argTypes, 
                                Class requiredType) 
                          throws DataAccessException 
      

  16.   

    new Object[] {id},这个是参数啊。你怎么传的啊