springMvc定义jdbctemplate出现空指针异常

selamatl 2013-12-23 02:32:15
applicationContext.xml配置
	<bean  name="ekp_db" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="jdbcUrl">
<value>jdbc:mysql://localhost:3306/ekp_rpt?characterEncoding=utf-8</value>
</property>
<property name="user">
<value>root</value>
</property>
<property name="password">
<value>admin</value>
</property>
<property name="minPoolSize" value="10"/>
<property name="maxPoolSize" value="20"/>
<property name="maxIdleTime" value="3600" />
</bean>

<bean name="jdbcTemelate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="ekp_db"></property>
</bean>

<bean name="ekpDAO" class="com.kingsoft.ksc.dc.cube.dao.EpkDAO">
<property name="jdbcTemplate" ref="jdbcTemelate"></property>
</bean>
,JAVA代码
@Repository
public class EpkDAO {
private JdbcTemplate jdbcTemplate ;

private static final String FIND_BY_NAME = "SELECT id, userid, name, address, phone, fax, email, corporation, contact, ctime, mtime,discard FROM EkpDomain WHERE name LIKE ?";

public List<Map<String ,Object>> findCompaniesByName(String namePart){

if(jdbcTemplate == null)
System.out.println(" jdbctemplete is null ");
//return jdbcTemplate.queryForList(FIND_BY_NAME, "%"+namePart+"%");
return null;
}

public JdbcTemplate getJdbcTemplate(){
return jdbcTemplate;
}

public void setJdbcTemplate(JdbcTemplate jdbcTemplate){
this.jdbcTemplate = jdbcTemplate;
}
}
,service层中,DAO是@AutoWired的,启动不报任何错误,但是运行时就是出现空指针异常,jdbctemplate为null,跪求解
...全文
913 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Cactus_hxk 2013-12-26
  • 打赏
  • 举报
回复
引用 3 楼 sunaer 的回复:
兄弟, 你的jdbctemplate的实例名是 jdbcTemelate 不是 jdbcTemplate --------- <bean name="jdbcTemelate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="ekp_db"></property> </bean>
+++
song_wl 2013-12-26
  • 打赏
  • 举报
回复
首先,你变量名称不知道是故意写错的还是误写的。 <bean name="jdbcTemelate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="ekp_db"></property> </bean>是jdbcTemplate不是吗? 然后我记得是id="jdbcTemplate"吧?不是name="jdbcTemplate"
sunaer 2013-12-26
  • 打赏
  • 举报
回复
兄弟, 你的jdbctemplate的实例名是 jdbcTemelate 不是 jdbcTemplate --------- <bean name="jdbcTemelate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="ekp_db"></property> </bean>
loveunittesting 2013-12-26
  • 打赏
  • 举报
回复
ref="jdbcTemelate 这个明显写错了
牟云飞 2013-12-23
  • 打赏
  • 举报
回复
<bean name="ekpDAO" class="com.kingsoft.ksc.dc.cube.dao.EpkDAO"> <property name="jdbcTemplate" ref="jdbcTemelate"></property> </bean> 别用一样的名字,试试
Defonds 2013-12-23
  • 打赏
  • 举报
回复
这是 spring jdbc 的东东,和 spring mvc 没关系。
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
         <constructor-arg ref="myDataSource"></constructor-arg>
     </bean>
JdbcTemplate 的初始化需要 DataSource,你应该这样传给它。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧