使用spring mvc 报异常Could not obtain transaction-synchronized Session for current th

小新s23 2016-03-11 12:06:11
@RequestMapping(value="/readyInfo/{id}",method=RequestMethod.GET)
public void readyInfo(@PathParam("id") String id,HttpServletResponse response){
String sql="select * from ourinfo where id="+id;
String target=j_util.objToJson(aboutus_service.getInfo(sql));//报错
c_util.responseWrite(response, target);
}

public OurInfo getInfo(String sql){
OurInfo target=(OurInfo) baseDao.getData(sql, OurInfo.class);
return target;
}

//根据sql获取某条数据
public Object getData(String sql,Class clazz){
Object target=getSession().createSQLQuery(sql).addEntity(clazz).uniqueResult();
return target;
}

public Session getSession() {
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
sessionFactory=(SessionFactory) ctx.getBean("sessionFactory");
return sessionFactory.getCurrentSession();
}

我的理解,getcurrentsession()就是判断当前线程上session是否存在,如果存在,就调用,如果不存在,就创建,然后再绑定到线程上,当再次在同一条线程上调用getcurrentsession()时,直接获取就好了,不知道理解的对不对,这错我一直没有明白,求各位指教
...全文
141 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Intboy 2016-03-11
  • 打赏
  • 举报
回复

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧