SpringMVC3.2+hibernate4.2.5 多数据库注解 找不到实体问题

下面我只粘主要的配置文件和实体

applicationContext.xml

<bean id="propertyConfigurer"             class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
       <property name="locations">
           <list>
               <value>classpath:hsm-db-dchsqlserver.properties</value>
               <value>classpath:hsm-db-drhsqlserver.properties</value>
           </list>
       </property>
</bean>
<import resource="db-dch.xml" />
<import resource="db-drh.xml" />

资源文件就不贴了,资源文件主要配置数据库驱动连接等相关配置

db-dch.xml
图片说明
图片说明
图片说明
db-drh.xml
图片说明
图片说明
图片说明
两个数据库都有一个Employee的表,所以这里我分开两个实体

DCHEmployeeEntity
图片说明
DRHEmployeeEntity
图片说明
DAO也分两个

DCHEmployeeDAO
图片说明
DRHEmployeeDAO
图片说明
目录结构
图片说明
控制类,项目访问

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import com.dch.projects.dch.employee.entity.DCHEmployeeEntity;
import com.dch.projects.dch.employee.service.IDCHEmployeeService;
import com.dch.projects.drh.employee.entity.DRHEmployeeEntity;
import com.dch.projects.drh.employee.service.IDRHEmployeeService;
import com.dch.projects.oms.user.entity.UserEntity;
import com.dch.projects.oms.user.service.IUserService;

@Controller
@RequestMapping("/")
public class IndexController {
@Autowired
private IUserService userService;
@Autowired
private IDCHEmployeeService dchEmployeeService;
@Autowired
private IDRHEmployeeService drhEmployeeService;
@RequestMapping("/main")
public ModelAndView main(HttpServletRequest request) {
List listUsers=this.userService.getAllUsersByHql("from UserEntity");
for(UserEntity user:listUsers){
System.out.println(user.getName());
}
List listDCHEmployees=this.dchEmployeeService.getAllDCHEmployeesByHql("from DCHEmployeeEntity");
for(DCHEmployeeEntity employee:listDCHEmployees){
System.out.println("德诚行:"+employee.getEmpNo()+" "+employee.getEmpName());
}
List listDRHEmployees=this.drhEmployeeService.getAllDRHEmployeesByHql("from DRHEmployeeEntity");
for(DRHEmployeeEntity employee:listDRHEmployees){
System.out.println("德瑞行:"+employee.getEmpNo()+" "+employee.getEmpName());
}
return new ModelAndView("index/main");
}
}
后台错误
图片说明
图片说明
页面错误,都一样
图片说明
DCHEmployee这个能查出数据,就是DRHEmployee报错,配置那里看来看去都没什么问题,除了table的名字是一样,但如果我使用hibernate配置文件配置实体而不用注解的话是没问题,使用注解就出现这问题。

哪位大神帮看下问题出在哪里,谢谢了。

2个回答

你表名一样。注解会不知道去哪个表找你需要的数据吧。你要不把表名改了试试。

这个异常显示你的查询语法有问题,你的HQL里面查询的from表名要是你映射的对应实体类的名称,检查下是不是一致呢?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!