大哥,一个登录界面有必要搞的这么复杂么,Struts+Hibernate+Spring都用上了?java.sql.SQLException: Table 'mydata.mydata__adminuser' doesn't exist提示显示这张表不存在啊,查一下数据库

解决方案 »

  1.   

    估计是hbm配的有问题导致报表不存在的错误
      

  2.   

    对..
    HBM文件的问题
    把它的配置贴出来..
      

  3.   

    不好意思昨前天一晚上没睡觉都犯了糊涂了  我用的是 
    spring的配置文件代替了hbm文件:
    hbm文件:
    ?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>
    <bean id="dataSource"
    class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName">
    <value>com.mysql.jdbc.Driver</value>
    </property>
    <property name="url">
    <value>jdbc:mysql://localhost:3306/mydata</value>
    </property>
    <property name="username">
    <value>root</value>
    </property>
    </bean>
    <bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource">
    <ref bean="dataSource" />
    </property>
    <property name="hibernateProperties">
    <props>
    <prop key="hibernate.dialect">
    org.hibernate.dialect.MySQLDialect
    </prop>
    <prop key="hibernate.show_sql">true</prop>
    </props>
    </property>
    <property name="mappingResources">
    <list>
    <value>vo/Adminuser.hbm.xml</value></list>
    </property></bean>
    <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
             <property name="sessionFactory">
             <ref local="sessionFactory" />
             </property>
        </bean>
    <bean id="AdminuserDAO" class="dao.AdminuserDAO">
    <property name="sessionFactory">
    <ref bean="sessionFactory" />
    </property>
    </bean>
    <bean id="AdminuserDAOProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
              <property name="transactionManager">
               <ref bean="transactionManager" />
            </property>
               <property name="target">
                 <ref local="AdminuserDAO" />
            </property>
            <property name="proxyTargetClass" value="true"/>
            <property name="transactionAttributes">
            <props>
               <prop key="insert*">PROPAGATION_REQUIRED</prop>
               <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
               <prop key="is*">PROPAGATION_REQUIRED,readOnly</prop>
            </props>
            </property>
        </bean>
        <bean id="ServiceImp" class="service.ServiceImp">
             <property name="adminuserDAO">
                      <ref local="AdminuserDAO"/>
              </property>
         </bean>
         <bean name="/adminlogin" class="com.csu.struts.action.AdminloginAction" singleton="false">
            <property name="serviceImp">
                  <ref bean="ServiceImp" />
            </property>
          </bean>
        </beans>
      

  4.   

    不好意思 上面的文件发错了 我的hbm文件是
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <!-- 
        Mapping file autogenerated by MyEclipse - Hibernate Tools
    -->
    <hibernate-mapping>
        <class name="vo.Adminuser" table="adminuser" catalog="mydata">
            <id name="id" type="java.lang.Integer">
                <column name="id" />
                <generator class="native" />
            </id>
            <property name="userName" type="java.lang.String">
                <column name="UserName" length="20" not-null="true" />
            </property>
            <property name="password" type="java.lang.String">
                <column name="Password" length="20" />
            </property>
            <property name="cardId" type="java.lang.String">
                <column name="Card_Id" length="20" />
            </property>
            <property name="subject" type="java.lang.String">
                <column name="Subject" length="20" />
            </property>
        </class>
    </hibernate-mapping>
      

  5.   

    下面是我用到的action及其他的类和借口
    public class AdminloginAction extends Action {
    /*
     * Generated Methods
     */ /** 
     * Method execute
     * @param mapping
     * @param form
     * @param request
     * @param response
     * @return ActionForward
     */
     private ServiceImp serviceImp;
     
     public ServiceImp getServiceImp() {
      return serviceImp;
     }
     
     public void setServiceImp(ServiceImp serviceImp) {
      this.serviceImp = serviceImp; 
     } public ActionForward execute(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
        DynaValidatorForm adminloginForm = (DynaValidatorForm) form;// TODO Auto-generated method stub
        Adminuser adminuser=new Adminuser();
        adminuser.setUserName(adminloginForm.getString("username"));
        adminuser.setPassword(adminloginForm.getString("password"));
         if (serviceImp.isAdmin(adminuser)) {
            return mapping.findForward("success");
          } else {
           return mapping.getInputForward();
          }
       }

    }
    public class ServiceImp implements IService {
    private AdminuserDAO adminuserDAO;
    public  AdminuserDAO getAdminuserDAO(){
    return adminuserDAO;
    }
    public void setAdminuserDAO(AdminuserDAO adminuserDAO){
    this.adminuserDAO=adminuserDAO;
    }
    package service;import vo.Adminuser;public interface IService {
    public boolean isAdmin(Adminuser adminuser );}
    public boolean isAdmin(Adminuser adminuser) {
    boolean flag=false;
    List result = adminuserDAO.findByUserName(adminuser.getUserName());
             if(result.size()>0&&result.get(0).equals(adminuser)) {
    flag=true;
    }
    return flag;
    }}
      

  6.   

    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <!-- 
        Mapping file autogenerated by MyEclipse - Hibernate Tools
    -->
    <hibernate-mapping>
        <class name="vo.Adminuser" table="adminuser" catalog="mydata">
    ----------------------------------
    HMB配置文件的catalog="mydata"去掉即可...