Spring jdbc 空指针异常

Spring jdbc 空指针异常

尝试了几次还是找不出原因,请老师协助


DB的部份查询同样的语句是没问题的,但Java的步骤出现空指针异常,请问老师要如何解决?


https://img1.sycdn.imooc.com//climg/63204266092a61be12090310.jpghttps://img1.sycdn.imooc.com//climg/632042d00957ff4f07400358.jpg


debug mode

https://img1.sycdn.imooc.com//climg/6320431209c4648212420287.jpg

Service类

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:applicationContext.xml"})
public class HotelServiceTest extends TestCase {
    @Resource
    private HotelDao hotelDao;

    @Test
    public void testFindById(){
        Hotel hotel = hotelDao.findById(10001);
        System.out.println(hotel);
    }
}


DAO类

@Repository
public class HotelDao {

    private JdbcTemplate jdbcTemplate;

    @Resource
    private Hotel hotel;

    public Hotel findById(Integer oid){
        String sql = "SELECT * FROM hotel WHERE orderno = ?";
        Hotel hotel = jdbcTemplate.queryForObject(sql, new Object[]{oid}, new BeanPropertyRowMapper<Hotel>(Hotel.class));
        return hotel;
    }
}


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,1、空指针异常是因null调用方法导致的问题。如下所示:

https://img1.sycdn.imooc.com//climg/63205305092dfead12240234.jpg

2、建议同学注入JdbcTemplate。如下所示:然后重新测试代码试一下。

  <bean id="JdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource" ref="dataSource"></property>
    </bean>

祝学习愉快!

  • weixin_慕仙7241916 提问者 #1

    了解了,原先就已经有定义好bean,但是少了@Resource注解,加了之后问题解决了,谢谢。

    @Resource
    private JdbcTemplate jdbcTemplate;


    2022-09-13 19:05:33
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师