開始action的servcie沒有註解成功,報null 指標錯誤,最後對dao的,service裡方法進行註解,才發現註解成功了的,但是action的servcie還是空的沒有註解成al ,最後再從網上查了下http://blog.csdn.net/liguiping2000/article/details/7256354終於發現我沒有加struts2-spring-plugin,呵呵,開始我加了的,後來刪了,忘記了,弄了好久,總結一下遇到的是mybatis和spring中的mybatis-spring外掛程式的版本一定要對應,不然會找到一些類找不到,比如mybatis3.1.1+spring3.0:
mybatis-spring-1.1.1
application.xml的部分配置
<context:annotation-config />
<context:component-scan base-package="com.myPojo"></context:component-scan>
<bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource">
<property name="driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
<property name="driverUrl" value="jdbc:sqlserver://192.168.4.114:1433;DatabaseName=userlogin"/>
<property name="user" value="sql"/>
<property name="password" value="123456"/>
<property name="maximumActiveTime" value="18000000" />
<property name="maximumConnectionCount" value="20" />
<property name="minimumConnectionCount" value="1" />
<property name="prototypeCount" value="5" />
<property name="houseKeepingSleepTime" value="60000" />
</bean>
<!-- 配置datesource管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"></property>
</bean>
<!-- 整合myIbatis -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:/config/mybatis/mybatis-config.xml">
</property>
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
dao的實作類別
@Repository
public class StuDaoIMP implements StuDao{
//@Autowired
private SqlSessionTemplate sqlSessionTemplate;
public SqlSessionTemplate getSqlSessionTemplate() {
return sqlSessionTemplate;
}
@Resource
public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {
System.out.println("注入了啊set sqlsessiontemplate success");
this.sqlSessionTemplate = sqlSessionTemplate;
}
業務層的實作類別
@Service("stuService")
public class StuServiceIMP implements StuService{
private StuDao stuDao;
public StuDao getStuDao() {
return stuDao;
}
@Autowired
public void setStuDao(StuDao stuDao) {
System.out.println("註解了stuService");
this.stuDao = stuDao;
if(this.stuDao==null)
{
System.out.println("註解stuService沒有成功,是空的");
}
else
{
System.out.println("註解stuService成功了,不是空的");
}
}
action部份
@ParentPackage("struts-default")
//@Namespace("/user")
@Controller
@Scope("prototype")
public class StudentAction extends ActionSupport{
/**
*
*/
private static final long serialVersionUID = 1L;
@Autowired
private StuService stuService;
public StuService getStuService() {
return stuService;
}
@Resource(name="stuService")
public void setStuService(StuService stuService) {
System.out.println("註解了stuAction");
this.stuService = stuService;
}