java - SSH框架中寫分頁(yè)時(shí)service層中不能注入分頁(yè)類
問題描述
service層
@Servicepublic class AuthorAdminServiceImpl implements IAuthorAdminService { @Resource private IAuthorAdminDao iauthoradmindao; @Resource PageUntil<AuthorAdmin> pageUntil;@Override public PageUntil<AuthorAdmin> findByPage(int currentPage) {pageUntil.setCurrentPage(currentPage);// 當(dāng)前多少頁(yè)int pageSize = 3;pageUntil.setPagesize(pageSize);// 最多顯示多少記錄int totalCount = iauthoradmindao.findCount();// 數(shù)據(jù)庫(kù)中所有的記錄pageUntil.setTotalCount(totalCount);double tc = totalCount;Double num = Math.ceil(tc / pageSize);// 頁(yè)面顯示的總頁(yè)數(shù)=數(shù)據(jù)庫(kù)的總記錄數(shù)/最多顯示多少記錄pageUntil.setTotalPage(num.intValue());int begin = (currentPage - 1) * pageSize;// 當(dāng)前頁(yè)開頭位置的索引List<AuthorAdmin> list = iauthoradmindao.findByPage(begin, pageSize);if(list==null){ System.out.println('list findByPage service error');}pageUntil.setList(list);return pageUntil; }
action層
public String listAuthorAdmin() {PageUntil<AuthorAdmin> pageuntil = iauthoradminservice.findByPage(currentPage);ActionContext.getContext().getValueStack().push(pageuntil);return 'listSuccess'; }

org.springframework.beans.factory.BeanCreationException: Error creating bean with name ’authorAdminAction’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ’authorAdminServiceImpl’: Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.lcy.until.PageUntil com.lcy.service.author.admin.AuthorAdminServiceImpl.pageUntil; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.lcy.until.PageUntil] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}----------Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ’authorAdminServiceImpl’: Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.lcy.until.PageUntil com.lcy.service.author.admin.AuthorAdminServiceImpl.pageUntil; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.lcy.until.PageUntil] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}----------Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.lcy.until.PageUntil com.lcy.service.author.admin.AuthorAdminServiceImpl.pageUntil; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.lcy.until.PageUntil] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}----------Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.lcy.until.PageUntil] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}


如果不是使用注入而使用new的方法就行,請(qǐng)問為什么?
問題解答
回答1:PageUntil這個(gè)類也是要用@Component
回答2:你沒有正確使用@Resource,導(dǎo)致配置文件里面找不到名稱屬性為'iauthoradmindao'的<bean>,故而注入失敗!你可以將@Resource 更換成 @AutoWired 試試看。這兩個(gè)注解的注入方式是不一樣的,當(dāng)然前提是你的xml文件中要配有'IAuthorAdminDao '類型的<bean>
詳情參考:https://www.zhihu.com/questio...
回答3:我覺得 new出來(lái)最簡(jiǎn)單了。你這個(gè)類需要考慮到特殊的問題嗎?
相關(guān)文章:
1. boot2docker無(wú)法啟動(dòng)2. 老師,按tab鍵不起作用怎么回事3. node.js - antdesign怎么集合react-redux對(duì)input控件進(jìn)行初始化賦值4. 關(guān)于docker下的nginx壓力測(cè)試5. angular.js - Angular開發(fā)的單頁(yè)面應(yīng)用,如何正確地實(shí)現(xiàn)在微信里的網(wǎng)頁(yè)授權(quán)和調(diào)用js sdk6. python - for循環(huán)print怎樣才能輸出csv呢7. python2.7 - Python安裝模組不成功8. mysql - InnoDB中的鎖9. 您好師太我想請(qǐng)教這個(gè)框架怎么搭建呢?10. javascript - 在低版本微信如何處理引用高版本的微信小程序基礎(chǔ)庫(kù)所帶來(lái)的問題?

網(wǎng)公網(wǎng)安備