spring配置bean注入为空的有关问题,求帮助
spring配置bean注入为空的问题,求帮助
自己写了一个小demo准备玩玩的。flex+spring+ibatis 结果刚开发,就碰到了个困难,试了好久,始终不如意。我想把spring配置文件放到WEB-INF下的conf文件夹里。把一些bean的配置文件放到WEB-INF下的beanConf文件夹里. 小程序测试的时候,发现BookController里的bookService总为空。试了很多方法,始终不知道如何解决。请帮忙,贴出代码:目录结构:

web.xml
demo_applicationContext.xml
BookController.java
BookService.java
每次BookController.java里的addBook() 里的bookService都是null,
工程在附件里,求帮助
自己写了一个小demo准备玩玩的。flex+spring+ibatis 结果刚开发,就碰到了个困难,试了好久,始终不如意。我想把spring配置文件放到WEB-INF下的conf文件夹里。把一些bean的配置文件放到WEB-INF下的beanConf文件夹里. 小程序测试的时候,发现BookController里的bookService总为空。试了很多方法,始终不知道如何解决。请帮忙,贴出代码:目录结构:
web.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-name>FirstFlex</display-name> <description>BlazeDS Application</description> <context-param> <param-name>flex.class.path</param-name> <param-value>/WEB-INF/flex/hotfixes,/WEB-INF/flex/jars</param-value> </context-param> <!-- 加载Spring文件配置 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/conf/demo_applicationContext.xml,/WEB-INF/beanConf/*.bean.xml </param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- Http Flex Session attribute and binding listener support --> <listener> <listener-class>flex.messaging.HttpFlexSession</listener-class> </listener> <!-- MessageBroker Servlet --> <servlet> <servlet-name>MessageBrokerServlet</servlet-name> <display-name>MessageBrokerServlet</display-name> <servlet-class>flex.messaging.MessageBrokerServlet</servlet-class> <init-param> <param-name>services.configuration.file</param-name> <param-value>/WEB-INF/flex/services-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>MessageBrokerServlet</servlet-name> <url-pattern>/messagebroker/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> </welcome-file-list> <!-- for WebSphere deployment, please uncomment --> <!-- <resource-ref> <description>Flex Messaging WorkManager</description> <res-ref-name>wm/MessagingWorkManager</res-ref-name> <res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type> <res-auth>Container</res-auth> <res-sharing-scope>Shareable</res-sharing-scope> </resource-ref> --> </web-app>
demo_applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <!-- 数据源配置 --> <bean id="dataSource_config" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location"> <value>classpath:dataBaseContext.properties</value> </property> </bean> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"> <value>${datasource.driverClassName}</value> </property> <property name="url"> <value>${datasource.url}</value> </property> <property name="username"> <value>${datasource.username}</value> </property> <property name="password"> <value>${datasource.password}</value> </property> </bean> <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation"> <value>/WEB-INF/classes/sqlmap-config.xml</value> </property> <property name="dataSource"> <ref bean="dataSource"/> </property> </bean> <bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate"> <property name="sqlMapClient"> <ref bean="sqlMapClient" /> </property> </bean> <!-- 业务指标定义 --> <bean id="bookController" class="com.crud.controller.BookController"> <property name="bookService" ref="bookService"> </property> <!-- <property name="sybasejdbcTemplate" ref="sybasejdbcTemplate"/> --> </bean> <bean id="bookService" class="com.crud.service.impl.BookServiceImpl"> <property name="sqlMapClientTemplate"> <ref bean="sqlMapClientTemplate" /> </property> </bean> </beans>
BookController.java
package com.crud.controller; import java.util.List; import java.util.UUID; import com.crud.model.Book; import com.crud.service.BookService; import com.crud.service.impl.BookServiceImpl; public class BookController { private BookService bookService; public List<Book> findBooks(){ return bookService.findBook(); } public String addBook(Book book){ //bookService = new BookServiceImpl(); System.out.println("addBook"); System.out.println(bookService); book.setId(UUID.randomUUID().toString()); String temp = bookService.addBook(book); System.out.println(bookService); return temp; } public void updateBook(Book book){ } public void deleteBook(Book book){ } public BookService getBookService() { return bookService; } public void setBookService(BookService bookService) { this.bookService = bookService; } }
BookService.java
package com.crud.service.impl; import java.util.List; import org.springframework.orm.ibatis.SqlMapClientTemplate; import com.crud.model.Book; import com.crud.service.BookService; public class BookServiceImpl implements BookService { private SqlMapClientTemplate sqlMapClientTemplate; public String addBook(Book book) { System.out.println(sqlMapClientTemplate); sqlMapClientTemplate.insert("addBook",book); return "1"; } public void deleteBook(Book book) { } public List<Book> findBook() { List<Book> list = sqlMapClientTemplate.queryForList("bookInfo"); return list; } public String updateBook(Book book) { return null; } public SqlMapClientTemplate getSqlMapClientTemplate() { return sqlMapClientTemplate; } public void setSqlMapClientTemplate(SqlMapClientTemplate sqlMapClientTemplate) { this.sqlMapClientTemplate = sqlMapClientTemplate; } }
每次BookController.java里的addBook() 里的bookService都是null,
工程在附件里,求帮助