当前位置: 代码迷 >> Java Web开发 >> 整合ssh使用hibernateTemplate的find方法报空指针?解决思路
  详细解决方案

整合ssh使用hibernateTemplate的find方法报空指针?解决思路

热度:209   发布时间:2016-04-17 10:19:45.0
整合ssh使用hibernateTemplate的find方法报空指针
这是entity类
Java code
package com.tjw.mysql.model;import javax.annotation.Generated;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import org.springframework.stereotype.Component;@Component("admin")@Entitypublic class Admin {    private int id ;    private String name ;    private String password ;    private int grade ;            @Id    public int getId() {        return id;    }        public void setId(int id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    public int getGrade() {        return grade;    }    public void setGrade(int grade) {        this.grade = grade;    }}


这是实现类
Java code
package com.tjw.mysql.dao.impl;import java.io.Serializable;import java.util.HashSet;import java.util.List;import java.util.Set;import javax.annotation.Resource;import javax.jms.Session;import org.hibernate.Query;import org.springframework.orm.hibernate3.HibernateTemplate;import org.springframework.stereotype.Component;import com.tjw.mysql.dao.AdminDAO;import com.tjw.mysql.model.Admin;@Component("adminDAO")public class AdminImpl implements AdminDAO{    private HibernateTemplate hibernateTemplate;     public void doCreate(Admin admin)  {        // TODO Auto-generated method stub        hibernateTemplate.save(admin);    }    public boolean doCreateOrdoUpdate(Admin admin) {        // TODO Auto-generated method stub        return false;    }    public void doDelete(Admin admin)  {                this.hibernateTemplate.delete(admin);    }    public void doUpdate(Admin admin) {        // TODO Auto-generated method stub        this.hibernateTemplate.update(admin);    }    public List<Admin> findAll(){        // TODO Auto-generated method stub                 List<Admin> list = (List<Admin>)this. hibernateTemplate.find("from Admin");        return list ;     }    public Admin findById(int id) {        // TODO Auto-generated method stub        return null;    }    public int getCount() {        // TODO Auto-generated method stub        return 0;    }    public HibernateTemplate getHibernateTemplate() {        return hibernateTemplate;    }    @Resource    public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {        this.hibernateTemplate = hibernateTemplate;    }}


这是配置文件
Java code
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns:context="http://www.springframework.org/schema/context"    xmlns:aop="http://www.springframework.org/schema/aop"    xmlns:tx="http://www.springframework.org/schema/tx"    xsi:schemaLocation="http://www.springframework.org/schema/beans           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd           http://www.springframework.org/schema/context           http://www.springframework.org/schema/context/spring-context-2.5.xsd           http://www.springframework.org/schema/aop           http://www.springframework.org/schema/aop/spring-aop-2.5.xsd           http://www.springframework.org/schema/tx            http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">    <context:annotation-config />    <context:component-scan base-package="com.tjw.mysql.model" />    <context:component-scan base-package="com.tjw.mysql.service" />    <context:component-scan base-package="com.tjw.mysql.dao.impl" />    <!--         <bean id="dataSource"        class="org.apache.commons.dbcp.BasicDataSource"        destroy-method="close">                        <property name="driverClassName" value="com.mysql.jdbc.Driver" />        <property name="url" value="jdbc:mysql://localhost:3306/spring" />        <property name="username" value="root" />        <property name="password" value="bjsxt" />        </bean>    -->    <bean        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">        <property name="locations">            <value>classpath:jdbc.properties</value>        </property>    </bean>    <bean id="dataSource" destroy-method="close"        class="org.apache.commons.dbcp.BasicDataSource">        <property name="driverClassName"            value="${jdbc.driverClassName}" />        <property name="url" value="${jdbc.url}" />        <property name="username" value="${jdbc.username}" />        <property name="password" value="${jdbc.password}" />    </bean>    <bean id="sessionFactory"        class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">        <property name="dataSource" ref="dataSource" />        <!--         <property name="annotatedClasses">            <list>                <value>com.bjsxt.model.User</value>                <value>com.bjsxt.model.Log</value>            </list>        </property>        下面是为了表明哪些是被entity注解标识的         -->         <property name="packagesToScan">            <list>                <value>com.tjw.mysql.model</value>                            </list>        </property>        <property name="hibernateProperties">            <props>                <prop key="hibernate.dialect">                    org.hibernate.dialect.MySQLDialect                </prop>                <prop key="hibernate.show_sql">true</prop>            </props>                    </property>    </bean>    <bean id="txManager"        class="org.springframework.orm.hibernate3.HibernateTransactionManager">        <property name="sessionFactory" ref="sessionFactory" />    </bean>    <aop:config>        <aop:pointcut id="bussinessService"            expression="execution(public * com.bjsxt.service..*.*(..))" />        <aop:advisor pointcut-ref="bussinessService"            advice-ref="txAdvice" />    </aop:config>    <tx:advice id="txAdvice" transaction-manager="txManager">        <tx:attributes>            <tx:method name="getUser" read-only="true" />            <tx:method name="add*" propagation="REQUIRED"/>        </tx:attributes>    </tx:advice>    <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">        <property name="sessionFactory" ref="sessionFactory"></property>    </bean></beans>
  相关解决方案