Chinaunix首页 | 论坛 | 博客
  • 博客访问: 550283
  • 博文数量: 136
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 1343
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-19 23:18
文章分类

全部博文(136)

文章存档

2011年(28)

2009年(60)

2008年(48)

我的朋友

分类: Java

2008-12-28 16:14:51

今天在做JobWin界面的时候,通过Hibernate读取数据库内容到JobWin的table里面,出现了org.hibernate.hql.ast.QuerySyntaxException这个异常。
先看下结构:
 
 
 
其中里面的Job.hbm.xml文件如下:
 

<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "">
<hibernate-mapping package="vo">
    <!-- 每个class元素映射一个持久化类 -->
    <class name="Job" table="jy_job_file">
        <id name="jobId" column="id">
            <generator class="identity"/>
        </id>
        <property name="jobNum" column="jobNum"/>
        <property name="jobName" column="jobName"/>
        <property name="entranceUrl" column="entranceUrl"/>
        <property name="userno" column="userno"/>
        <property name="searchLayer" column="searchLayer"/>
        <property name="searchFrequency" column="searchFrequency"/>
        <property name="searchArea" column="searchArea"/>
        <property name="searchType" column="searchType"/>
        <property name="searchKey" column="searchKey"/>
        <property name="startTime" column="startTime"/>
        <property name="endTime" column="endTime"/>
        <property name="status" column="status"/>
    </class>
</hibernate-mapping>

 

我在JobDao里的查询语句如下:

 

public List<Job> findByStatus(String status) {
        List JobList = getHibernateTemplate().find("from jy_job_file where status='"+status+"'");
        return JobList;
    }
    

 

运行后读取的时候就抛出org.hibernate.hql.ast.QuerySyntaxException:jy_job_file is not mapped [from jy_job_file where status='status']这个异常.

原来SSH机制不一样,他要通过映射,这里它映射到Job.hbm.xml这个文件,jy_job_file

跟Job对应形成映射,多以这里不能用jy_job_file这个表,而应该用Job.

因此把原来的 

List JobList = getHibernateTemplate().find("from jy_job_file where status='"+status+"'");
改成

 List JobList = getHibernateTemplate().find("from Job where status='"+status+"'");
就该觉问题了。

 

阅读(7220) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-02-22 17:16:16

注意这个 jy_job_file名要和对象名的大小写一样,你看一下改了可不可以