当前位置: 首页 > 编程日记 > 正文

java service注入失败,使用spring向service里面注入dao不成功。

使用spring向service里面注入dao不成功。求救啊!

本帖最后由 PaperStar 于 2013-12-26 19:29:20 编辑

页面调用action,action调用service,service调用dao

用Debug查看action调用service方法时service有值,但是service调用dao时,dao为null

折腾一下午了,死活找不到原因。我两个写的貌似一样啊,为什么一个成功,一个不成功呢?

程序也不报错,求大神指点啊!

set方法已加入,名称也都核对没问题

//spring配置文件

//service文件

private UserDao dao;

public void setDao(UserDao dao) {

this.dao = dao;

}

public boolean checkEmail(String s) {

int num = dao.checkEmail(s);

return num==0?true:false;

}

//dao文件

public class UserDaoImpl extends HibernateDaoSupport implements UserDao {

public int checkEmail(String s) {

String hql="frome User where email = ?";

List list =this.getHibernateTemplate().find(hql,s);

return list.size();

}

}

分享到:

更多

------解决方案--------------------

你这样试试

还有,你的 UserDao 里 setDao 何意?你不会 service 里没有 setDao 吧?

------解决方案--------------------

看看启动或运行过程中的日志是否报错?

会不会是没有配置真确导致Dao注入失败。注意这个名字sessionFactory是否和配置的一致。

------解决方案--------------------

造成这种原因主要你是命名不规范;

你的dao是:public class UserDaoImpl extends HibernateDaoSupport implements UserDao

但你的配置文件命名却是:

这是不合理的,这个bean id ="UserDao",意思是说你的UserDaoImpl类中,是通过setUserDao注入进来,而你的却是setDao,所以注入不进来。一般的 bean id ="xxx",这个xxx应该和你的类名一致,并且首字母小写,也就是userDaoImpl,然后service中:private UserDao userDaoImpl;

public void setUserDaoImpl(UserDao userDaoImpl) {

this.userDaoImpl = userDaoImpl;

}

相关文章:

下面为初学者分享一下SQL 数据库学习资料

一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice disk, testBack, c:\mssql7backup\MyNwind_1.dat--- 开…

linux7设置时间,CentOS 7 设置日期和时间

现代操作系统分为以下两种类型的时钟:实时时钟(Real-Time Clock,RTC),通常称为硬件时钟(一般是系统主板上的集成电路),它完全独立于操作系统的当前状态,即使在计算机关闭时也能运行。系统时钟,也称为软件时…

SQLMap安装步骤

SQLMap是利用Python语言写的,所以需要将Python这个语言环境给安装上 : 1、首先下载Python(这里Python版本为2.7.2,可以下载不同或高版本的) 2、然后在下载sqlmap(http://sqlmap.org) 3、这两个软件下载完成后&#xff…

am5718_AM5718如何扩大内存 - Sitara™ Cortex-A8 和 ARM9 微处理器 - Sitara™ Cortex-A8 和 ARM9 微处理器 - E2E™ 中文支持论坛...

谢谢了Shine,你的资料和建议非常到位,按您的建议,修改了board.c以下两处,问题解决了。1:board/ti/am57xx/board.c文件static const struct dmm_lisa_map_regs am571x_idk_lisa_regs {.dmm_lisa_map_3 0x80640100,.is_ma_present…

亚马逊刊登php代码,最全的亚马逊刊登listing工具了解一下

如果你是亚马逊FBA卖家,那么你可能会错过很多有用的亚马逊listing工具。这些listing工具可以批量上传listing,同时还可以记录产品特征,以及打印运输标签。1、易仓刊登系统易仓刊登系统是一款易仓基于已有ERP客户需求研发的一套平台产品刊登系…

linux重命名tar命令,linux常用操作指令4 —— 文件操作相关命令(mkdir、touch、rm、mv、cp、cat 、 find 、tar、chmod)...

文件操作相关命令文件操作相关命令1、创建文件夹mkdir2、创建文件touch3、移动文件夹mv(类似于剪切)4、删除rm5、重命名mv6、复制cp7、查看文件(cat、head、tail..)8、查找文件 find (重要)9、归档压缩tar10、修改文件权限chmod参考文件操作相关命令1、创建文件夹mkdir# mkdir …

后台生成小程序码

工作需要,根据动态参数生成小程序二维码。 找了下开发API :https://developers.weixin.qq.com/miniprogram/dev/api/qrcode.html 选择了B接口,可以无限生成,只是参数有点限制,但是可以满足需求,开搞。 一、…

2017-02-20 注册.Net Framework4.0

在使用IIS发布Web应用程序时,有时会遇到Asp.Net 4.0尚未在Web服务器上注册的问题,需要手动注册下.Net Framework 4.0。 注册.net Framwork4.0 步骤,以windows7系统为例,注册 步骤如下: 64位操作系统: 1. …

java字符存储,在什么编码是Java字符存储在?

Is the Java char type guaranteed to be stored in any particular encoding?Edit: I phrased this question incorrectly. What I meant to ask is are char literals guaranteed to use any particular encoding?解决方案"Stored" where? All Strings in Java …

matlab 仿真步长,MATLAB Simulink变步长仿真与固定步长仿真简单对比

今天晚上翻了一下资料发现,关于变步长以及固定步长仿真的理解我之前是由错误理解的。当时没有做什么认真的思考活着尝试就自己给自己下了一个结论:变步长仿真会比较精确,但是可能会消耗更多的计算机资源!错!大错特错&a…

JS设计模式(13)状态模式

什么是状态模式? 定义:将事物内部的每个状态分别封装成类,内部状态改变会产生不同行为。 主要解决:对象的行为依赖于它的状态(属性),并且可以根据它的状态改变而改变它的相关行为。 何时使用&am…

【转】Mac 程序员的十种武器

http://chijianqiang.baijia.baidu.com/article/3733 上 在写 Mac 程序员的十个武器之前,我决定先讲一个故事,关于 Mac 和爱情的。(你们不是问 Mac 和爱情有个鸟关系吗?) 从前有一个孩子叫做小明,他不是高帅…

git ignore linux,为什么说.gitignore不能忽视

我注意到很多开发者没有使用 .gitignore 文件,尽管使用 .gitignore 文件来指定你不希望 Git 在版本控制中跟踪的文件是最佳实践之一。.gitignore 可以提高代码质量,所以你不应该忽略版本库中的 .gitignore。什么是 .gitignore?Git 仓库中的文件可以是&a…

java arcengine_在Java程序中调用ArcEngine

ArcEngine一般在C#中用的比较多,不过esri也是为Java提供了AE的类库的,不过文档确实没做的C#那么好。下面我记录一下如何在项目中配置使用AE的环境。第一步:将arcobject.jar包加到build path下;第二步:要使用AE&#xf…

matlab 实例均命名为,MATLAB复习题

第一章MATLAB 概述1、标点符号( ; )可使命令行不显示运算结果,( % )用来表示该行是注释行。(常用标点符号的功能见P9)2、用“format”命令设置数据输出形式,(format long )将pi 显示为3.14159265358979,(format short e )将pi 显示…

爬虫之Scrapy

Scrapy初步 Scrapy基于Twisted设计实现,Twisted的特殊特性是以事件驱动,并且对于异步的支持性很好,集成了高性能的异步下载,队列,分布式,持久化等。 Scrapy的安装 在Linux中可以直接在命令行中输入&#xf…

java 8 lambda reduce_JDK8新特性Lambda表达式体验

“Lambda 表达式”(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Java 8的一个大亮点是引入Lambda表达式&#xf…

php display_errors

// 检测开发环境public function setReporting(){if (APP_DEBUG true) {error_reporting(E_ALL);ini_set(display_errors,On);} else {error_reporting(E_ALL);ini_set(display_errors,Off);ini_set(log_errors, On);ini_set(error_log, RUNTIME_PATH. logs/error.log);}} 在p…

linux esd转iso,window_Win10 TH2正式版10586官方ESD映像怎么转换成ISO镜像?,今天phpstudy分享了Win10 TH2(Build - phpStudy...

Win10 TH2正式版10586官方ESD映像怎么转换成ISO镜像?今天phpstudy分享了Win10 TH2(Build 10586)各版本官方ESD映像下载地址,不过旧转换工具可能已不适用于新版ESD映像,特别是新版本增加了专业版和家庭版二合一映像,而以往都是单版本。本文使…

mysql在线上建索引,mysql 5.6在线DDL建索引测试

基本信息:mysql版本:(product)rootlocalhost [(none)]> select version;------------| version |------------| 5.6.29-log |------------1 row in set (0.00 sec)表payment的记录数:(product)rootlocalhost [sakila]> select count(*) from paym…

接口测试(postman jmeter)

接口:把client(前端)和server(后端)联系起来的就是接口,接口测试就是功能测试,进行接口测试首先得需要接口文档。 json是一种通用的数据格式,接口返回的数据都是json,jso…

c语言中delay找不到标识符,51单片机的c语言,请问哪里错了?延时没有效果,但是编译又不报错。delay应该怎么写,怎么引用啊?...

最佳答案西岸风2019-01-07 15:15i){LED00;LED21;LED40;delay(5000);}void main(void){while(1){for(i0;i<10;sbit LED0P1^0;sbit LED1P1^1;sbit LED4P1^4;sbit LED5P1^5;sbit LED2P1^2;sbit LED3P1^3;unsigned char i;sbit LED6P1^6;sbit LED7P1^7;void delay(unsigned int …

java 数据类型转换的一场_Java基础 — 四类八种基本数据类型

整型&#xff1a;整数类型int    一般的数据。long    极大的数据。short   用于特定的场合&#xff0c;比如底层的文件处理或者需要控制占用存储单元空间量的大数组。byte   用于特定的场合&#xff0c;比如底层的文件处理或者需要控制占用存储单元空间量的大数组。by…

vs 代理登入

https://msdn.microsoft.com/zh-cn/vstudio/dn771556.aspx转载于:https://www.cnblogs.com/CodingArt/p/6424180.html

php 为啥报错,php Soap 报错 求大神帮忙看看为什么

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼代码&#xff1a;$client new SoapClient("http://116.218.12.10:7012/businessService?wsdl", array(*trace* > true, *exceptions* > true));var_dump($client->__getFunctions());var_dump($client->__…

UWP: ListView 中与滚动有关的两个需求的实现

在 App 的开发过程中&#xff0c;ListView 控件是比较常用的控件之一。掌握它的用法&#xff0c;能帮助我们在一定程度上提高开发效率。本文将会介绍 ListView 的一种用法——获取并设置 ListView 的滚动位置&#xff0c;以及获取滚动位置处的项目。这里多说一句&#xff0c;由…

Deepin ROMS 安装详细流程

按照这个过程&#xff0c;完美安装&#xff0c;当然并不能排除会出现其他的问题。如果遇到了&#xff0c;那就老老实实上网搜吧。 转载于:https://www.cnblogs.com/haoorhuai/p/9502859.html

java struts2值栈ognl_Struts2 (三) — OGNL与值栈

一、OGNL表达式1.概述1.1什么是OGNL​ OGNL是Object-Graph Navigation Language的缩写&#xff0c;俗称对象图导航语言. 它是一种功能强大的表达式语言&#xff0c;通过它简单一致的表达式语法&#xff0c;可以存取对象的任意属性&#xff0c;调用对象的方法&#xff0c;遍历整…

c语言课程设计商品销售系统,c语言课程设计商品销售管理系统.pdf

C语言课程设计商品销售管理系统12020 年 4 月 19 日文档仅供参考商品销售管理系统目录一、 需求分析 2二、概要设计 2三、详细设计 4四、调试分析 14五、用户手册 14六、测试数据 15七、 附录 18— 1—22020 年 4 月 19 日文档仅供参考一、需求分析商品销售管理程序商品信息&am…

uploadhandler.php,WordPress Kernel Theme ‘upload-handler.php’任意文件上传漏洞

javascript中apply、call和bind的区别在JS中,这三者都是用来改变函数的this对象的指向的,他们有什么样的区别呢.在说区别之前还是先总结一下三者的相似之处:1.都是用来改变函数的this对象的指向的.2.第一个参数都是this要指向的对 ...AIX UNIX 系统管理、维护与高可用集群建设—…