项目是用SSH做的;DAO层是自动生成的方法和接口;问题是Oracel11G创建的数据库有的表的字段是关键字;比如ID,name,description,constraint....等等;DAO层手写的话可以加单引号解决;但是现在关键是自动生成的;求高人解决方案!在线等.........

解决方案 »

  1.   

    id, name, description 啥时候成关键词了?desc 才是吧?
      

  2.   

    方法也自动生成啊
    dao最好是自己写,别自动生成,dao里extends HibernateDaoSupport就可以完全拥有你需要的方法了,自动生成的不能完全满足需要,不如自己写了,简洁,符合自己的需求,也比自动生成的灵活,这样你的dao就是操作数据库表映射的实体了
      

  3.   

    create table IndustryCategory  (
       ID                   NUMBER(18)                      not null,
       name NUMBER(18),
       aaaaaa CHAR,
       largeCofffde          CHAR(2),
       description PK_INDUSTRYCATEGORY primary key (ID)
    );
    在oracle里创建可以成功;但是访问的时候就要这样'id', 'name'才能取到值;不然就报500错误:找不到字段为 ID,name ...
      

  4.   

    你看看这个文章
    http://sys53.javaeye.com/blog/38115
    然后 
    Hibernate配置文件:
    <hibernate-configuration>
     <session-factory>
      <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
      <property name="connection.url">jdbc:mysql://localhost:3306/test</property>
      <property name="connection.username">root</property>
      <property name="connection.password">root</property>
      
      <!-- 数据方言 -->
      <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
      <property name="myeclipse.connection.profile">mysql</property>  <property name="hibernate.show_sql">true</property><property name="hbm2ddl.auto">update</property>
      <mapping resource="org/mdl/school/Person.hbm.xml" />
     </session-factory>
    </hibernate-configuration>
    注意 这句  <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
    这个是mysql的配法。
      

  5.   

     <property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
    oracle 这样
      

  6.   

    http://lzc0088.javaeye.com/blog/430063
      

  7.   


    不会吧?我在 Oracle 中直接用 SELECT id, name FROM IndustryCategory; 没有问题的啊?
      

  8.   

    我怎么就没懂呢,在oracle11g中,id,name,description这些都变成关键字了,怎么可能,如果是关键字的话,你建表的时候就报错了,desc是关键字,估计是你的映射有问题,DAO层还可以自动生成啊,这个学习学习
      

  9.   

    这个......
    难道你在什么地方设置了区分大小写. 你上命令行上看看这个表的具体表结构是什么样的?
    使用desc IndustryCategory
      

  10.   


    问题解决了;今天重新建表搭框架测试了下;发现没问题了;无语了.以前给字段取名叫ID的话;在操作这字段的时候;就报找不到字段为'ID'的错误;现在又好了.....不解释;这太假了....DAO层的实现可以自动生成;我一直是让它自动生成的;我是先配hibernate在配spring在就让MyEclipse hibernate perspective去生成实体和DAO层;在配置struts;