Dao层调用Mapper为什么会报空指针异常

图片说明

 return userMapper.getUserByName(username);

这句语句出现空指针异常
userMapper.java:
图片说明
userMapper.xml:
图片说明
mapper的配置文件:
图片说明
结构:
图片说明

11个回答

第四章图的"Mapper扫描设置"路径不对吧,你的UserMapper文件在stu.mapper下,你的路径配置为:com.stu.mapper

whb3299065
whb3299065 回复Gabriel_Yuexzh: 观察下面的包结构,很明显没有com这层包
一年多之前 回复
qq_38270238
yuexingzhong 回复Forsaken12345: 是这个原因吗?那个namespace地址不对?
一年多之前 回复
m0_37928829
Forsaken12345 犯傻了。。
一年多之前 回复

userMapper需要使用@Resource注解 注入进来

你要用注解把usermapper给注入到dao层啊

第三张也不对,你包名里哪里来的com这层路径呢

1 @Autowired
private UserMapper userMapper

2 扫包 stu.mapper

一半我会用@Autowired private MessageDao messageDao;让它注入到messageDao对象中

mapper没注入啊,使用@Autowired将它注入到dao中

Mapper扫描设置路径不对

参数注入失败,没有查询出数据,报空指针

jsp中调用dao的getHibernateTemplate()时,报空指针

共11条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
在java项目中 dao实例和service实例在调用的时候报空指针异常
 如果再写一些工具类包括过滤器和监听器的时候,需要使用到dao或者service中的方法,这个时候如果按照平时那样获取系统会直接报空指针异常,提示找不到。原因就是在项目启动的时候这些工具类中的service或者dao还没有来得及注入。解决办法:传统ssh项目中,只需要单独写个方法,然后在使用的时候直接使用这个方法获取即可public IUtilService getService(){ IUt...
使用DAO时发生空指针错误
2014-10-6 17:38:26 dao.daoImpl.CustomerDAO save 严重: save failed java.lang.NullPointerException at dao.daoImpl.CustomerDAO.save(CustomerDAO.java:51) at test.CustomerDAOtest.testSave(CustomerDAOtest
struts2的Action中调用DAO方法时报空指针异常 解决办法
<br />在action中调用DAO方法时,<br /><br /><br />      必须UserDAO uDAO = new UserDAOImpl()声明; <br /><br /><br /><br />               而不是简单的private UserDAO uDAO;
Spring构建Service层过程中,报空指针异常
贴下我的代码,看下你是否漏掉了哪些配置: 首先是Controller层: @Controller @RequestMapping("/system") public class AdminLoginController extends BaseController{ @Autowired private UserService userService; @Request
Junit测试出现空指针异常
在学习Hibernate的时候,使用到Junit4进行测试,一直出现空指针异常的解决办法! 本人使用eclipse-mars-1版本进行开发,一直出现空指针异常,是eclipse版本的问题,换一个版本的,比如luna版本,运行正常!mars版本1,2都会出现空指针异常!
Spring自动装配报空指针异常
这几天在学Spring的自动装配,自己动手做一个小项目,但是被一个空指针异常卡住了。启动的时候弹出index.jsp,这是一个登陆页面:<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.
controller调用service接口 空指针异常
调用的时候会跑到这个函数里; public InvocationTargetException(Throwable target) 原因: service接口注入失败!
spring整合mybatis时报空指针异常:service注入得不到Mapper接口的实例化对象(已解决)
解决方法在下边↓↓问题一:    mabite中Mapper接口的实例化对象找不到,显示为NULL这是我的配置,还有运行时报的错这几个文件都是使用反向工程生成的,应该没有错。运行结果显示tUserMapper为null问题二:还有,使用ssm框架写web工程的时候还出过这么一个错:org.apache.ibatis.binding.BindingException:         Invalid...
Dao层mapper开发:
如果不写实现类,他会使用代理的方式生成实现代码。想要使用mapper开发,必须遵循以下原则:①  接口的名字建议和mapper映射文件的名字保持一致,并且在同一目录下, cn.hd.dao.UserMapper②  接口中方法名必须和mapper中的id保持一致③  方法的返回值要和配置文件中的resourceType保持一致。④  参数...
Mybatis-Dao层开发之Mapper接口
相关链接: 相关配置文件:详见 http://blog.csdn.net/qq_28796345/article/details/53427020 基本配置:详见 http://blog.csdn.net/qq_28796345/article/details/53402808 dao接口开发实现:详见 http://blog.csdn.net/qq_28796345/a
java Timetask 访问service 抛空指针异常解决方案
java Timetask 访问service 抛空指针异常解决方案            错误原因: 创建自己的timetask 定时器继承了TimerTask之后,当执行run时还未进行service的注入。此时抛出空指针异常;以下为最终解决方案         // 自定义的TimerTask          public class WXFocusTask extends Ti
SSM框架下基本的mapper,dao,service,controller等相关文件的整理
SSM框架下基本的mapper,dao,service,controller等相关文件的整理 (新手整理,有不详细和不正确的地方还望指正以便即使改进) SELECT * FROM t_user WH
mybatis+spring 省去dao实现层直接匹配mapper
最早接触mybatis的时候都是dao层,然后dao实现层通过namespace匹配到mapper,后面发现mybatis可以自动匹配到mapper省去dao实现层,减少代码分层以及代码量,变相的提高代码效率...
mapper.xml是怎样实现Dao层接口
上午写了一个简单的 从xml读取信息实例化一个Bean对象。下午就开始想mybatis是怎么通过xml文件来实现dao层接口的,一开始想直接用Class.forName(String name)然后调用getMethods的办法来得到Dao接口所有的方法Method,结果证明这对接口实没有用的,会报一个错误。于是想百度,但是百度的结果全是怎么配置mapper的。。然后我又四处翻资料,终于找到一些办
关于springmvc报的空指针的异常,就是在这个service方法报空指针的原因
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.NullPointerException org.springframework.web.servlet.FrameworkServlet.processRequest(Fram
使用mybatis时,dao层mapper文件的基本示例
dao层mapper文件的示例 实体类 Brand: package cn.itcast.core.bean.product; import java.io.Serializable; public class Brand implements Serializable { private static final long serialVersionUID = 1L; ...
spring+mybatis通用dao层、service层的一些个人理解与实现
首先声明,本文所述只是鉴于本人在开发一些应用时的心得,仅供参考。 1、现在的绝大多数web应用,通常都以action、service、dao三层去组织代码,这样划分结构很清晰,分工明确 2、一般情况下,我们会把事务控制在service层。 3、action和dao层,会使用一些框架技术。比如action层可能选择有springmvc、struts等,dao层有hibernate、my
Mapper中的方法和DAO接口方法是怎么绑定到一起的
  Mybatis中DAO层接口没有写实现类,Mapper中的方法和DAO接口方法是怎么绑定到一起的,其内部是怎么实现的   原理   再根据网上的一些知识点,讲一下原理: mybatis通过JDK的动态代理方式,在启动加载配置文件时,根据配置mapper的xml去生成Dao的实现。 session.getMapper()使用了代理,当调用一次此方法,都会产生一个代理class的in...
SSM框架中Dao层,Mapper层,controller层,service层,model层,entity层都有什么作用
SSM是sping+springMVC+mysql集成的框架。MVC即model view controller。model层=entity层。存放我们的实体类,与数据库中的属性值基本保持一致。service层。存放业务逻辑处理,也是一些关于数据库处理的操作,但不是直接和数据库打交道,他有接口还有接口的实现方法,在接口的实现方法中需要导入mapper层,mapper层是直接跟数据库打交道的,他也是...
Mybatis Mapper动态代理方法 即 只写Dao接口 不写Dao的实现类
Mapper动态代理方法:程序员只需要写dao接口(Mapper),而不需要写dao实现类,由mybatis根据dao接口和映射文件中statement的定义生成接口实现代理对象。可以调用代理对象方法。 Mybatis官方建议:将dao接口叫做mapper。 目标:通过一些规则让mybatis根据dao接口和映射文件中statement的定义生成接口实现代理对象 my
关于Mybatis中foreach的用法以及与service中循环调用dao层中的差异
导读: 在实际开发过程中遇到需要批量插入、批量更新、批量删除等操作,纠结于是在service层中直接调用dao层的方式还是直接使用Mybatis中的标签,因此特地做了一个实验。 做两个批量插入操作,一个是在service层中循环调用dao层的方法,另一个是在Mybatis中使用标签做插入操作。 代码如下:service层对应的代码: public
使用@Autowired 报空指针解决方案
使用@Auarowired时程序报空指针。如图:
mybatis--开发Dao--原始dao方式和Mapper代理方式
Mybatis开发dao Mybatis在项目中主要使用的地方就是开发dao(数据访问层), 有两种方式:原始dao开发方式、mapper代理开发方式(推荐)。 需求: 1、 根据用户ID来查询用户信息; 2、 根据用户名称来模糊查询用户信息列表; 3、添加用户; 一、原始dao开发方式 1、思路 需要写dao接口和dao实现类。 2、编程步骤 1
【框架】[MyBatis]DAO层只写接口,不用写实现类
转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自【大学之旅_谙忆的博客】 团队开发一个项目,由老大架了一个框架,遇到了DAO层不用写接口了,我也是用了2次才记住这个事的,因为自己一直都是习惯于写DAO层的实现类,所以,习惯性的还是写了个实现类。于是遇到错误了。找不到那个方法。问了团队的人才知道,方法名和Mapper中配置的id名必须一样。实现:一、配置Spr
SSM框架项目调用查询的方法时 报空指针异常
严重: Servlet.service() for servlet [a] in context with path [/house] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause java.lang.NullPoint
使用mybatis完成通用dao和通用service
原文  http://liuyiyou.cn/2015/01/25/base-mybatis-dao/ 主题 MyBatis 概述: 使用通用dao和通用service可以减少代码的开发。可以将常用的增删改查放到通用dao中。对不同的or框架,基本上都有自己的实现如SpringJPA的Repository就提供了常用的增删改查方法。而MyBatis借助代码生成工具也可以生
Mybatis Mapper动态代理方法 即 只写Dao接口 不谢Dao的实现类
Mapper动态代理方法:程序员只需要写dao接口(Mapper),而不需要写dao实现类,由mybatis根据dao接口和映射文件中statement的定义生成接口实现代理对象。可以调用代理对象方法。 Mybatis官方建议:将dao接口叫做mapper。 目标:通过一些规则让mybatis根据dao接口和映射文件中statement的定义生成接口实现代理对象 mybatis将以下代码自动
mybatis 用接口的方式实例化dao的缺点
在MyBatis中,当我们编写好访问数据库的映射器接口后,MapperScannerConfigurer就能自动成批地帮助我们根据这些接口生成DAO对象(请参考本系列前面的博文:MyBatis MapperScannerConfigurer配置),然后我们再使用Spring把这些DAO对象注入到业务逻辑层的对象(Service类的对象)。因此,在这种情况下的DAO层,我们几乎不用编写代码,而且
idea中添加mybatis插件实现dao到mapper的跳转
两种实现: 1:直接再idea中下载插件,如下图 不过这种有点缺陷只能从dao跳到mapper.xml 2:下载jar到本地     free-idea-mybatis  
为什么mybatis的mapper没有实现类(原理探究)
下午想到了一个JAVA中的一个很基础的问题,java中接口是不能实例化的,想到这点,让我想起了mybatis框架中的mapper的用法,我们有用mapper时,全都是没有实现类的,只有一个mapper接口,而我们在调用的时候,通过spring注入到适当的service或其他类中就可以用了,那么它的原理是什么呢,mapper调用时又是在哪里进行了实现的呢? 带着这个问题,我重新复习了下mybatis的用法,为了测试方便,我在mysql上建了一个user表,并插入了3条记录,并写了一个简单的mybatis例子
ssm4.3版本配置dao层与mapper.xml不在同一个包中的处理方法
比如:dao的写法是package com.lucas.dao;import java.util.List;import org.springframework.stereotype.Repository;import com.lucas.bean.User;@Repositorypublic interface UserMapper { public List&amp;lt;User&amp;gt; getLi...
controller层的引用service层一直报空指针问题
注入的service层一直报空指针的错误,原因就是controller层有个方法是private的方法,将这个private改为public问题即可解决解决后的:
关于@Autowired没有注入引起的空指针异常
最近做项目,遇到了一个NPE,经过一番挣扎终于找到了问题的所在截图以作备忘问题就在这里,第二个注入的service层,因为没有用Autowired注解一直报NPE注解之后解决掉!!!之后查资料重新了解了一下@Autowired附上大牛对此注解的总结  点击打开链接...
Mybatis 接口编程中dao 层接口没有注解和<bean> 为什么能被实例化为bean??
Mybatis 接口编程中dao 层接口没有注解和 为什么能被实例化为bean??相信不少人有过这个疑问,我自己带着这个疑问好久了!我自己写dao 层接口都是自己加上@Repository这个注解,但是项目组的其他同事不写的情况也可以正常注入?带着这个疑问我一点一点查找资料。最终发现 MapperScannerConfigurer 帮我们做了实例化bean的工作。在Spring配置Mybatis的文
maven+Springboot——mapper层的sql执行失败,在service层里不能捕获到
sql语句本身出现错误,即bad sql 在serviceimpl中,public void updateOrder (Integer id, String d, boolean isS)throws Exception { System.out.println("here**************");ParamMap param = new ParamMap(); param.seti(i
springmvc和mybatis结合 可以直接把用mybatis写的接口注入到service层
http://bbs.csdn.net/topics/390773239今天我看别人用springmvc和mybatis结合的代码  以前我用SSH框架的 发现了个问题 public interface MmMapper {public List&amp;lt;HashMap&amp;lt;String, Object&amp;gt;&amp;gt; mmQueryByPage(@Param(&quot;mm&quot;)HashMap&amp;lt;St...
构建springboot自动生成mapper文件和dao接口项目的步骤和配置
一.首先是创建一个简单的springboot项目,创建的方式有两种: 第一种方式:登录http://start.spring.io/这个网站,然后选择相应的参数即可,一定要记着Dependencies下面一定要选择 Reactive Web,没有的话就把版本更改一下,然后下载到本地通过idea打开该项目即可 第二种方式:直接通过IDEA的直接创建项目,点击new project...
【SSM-MyBatis框架】MyBatis开发DAO的方式
Mybatis开发Dao的方式   MyBatis开发Dao有两种方式:原始Dao的开发方式,Mapper动态代理的方式。     两种开发方式在企业开发中均有运用。都要掌握。    使用myBatis时,需要对其进行一个全局的管理配置。     sqlMappingConfig.xml        <!DOCTYPE configuration PUBLIC "-//mybat
DAO和Repository有什么区别
http://www.jdon.com/32562/5
SSH框架一直报action的service空指针异常
看到网上很多答案,大部分都是applicationContext.xml里面的bean的id要和action的set方法名一致即&amp;lt;bean id=&quot;userService&quot; class=&quot;com.lc.service.Impl.UserServiceImpl&quot;&amp;gt; &amp;lt;property name=&quot;userDao&quot; ref=&quot;userDao&quot;&amp;gt;&amp;lt;/propert
相关热词 用户权限才c# c#应用程序实例 c#请求接口数据 c#高效读写plc c#代码规范快捷方式 c#编辑模板 c# 内存存储 c# poi 生成图表 c#页面 弹出页面选择框 c# 不实现 继承接口