在使用spring+hibernate的时候遇到一点疑问,请高人指点迷津!1,当使用Hibernate延时加载时,用getSession.load(xx.class,new Long(1));方法出现了NO SESSION异常。
经过BAIDU上狂搜,结果发现使用spring提供的openSessionInViewFilter能解决问题。
但是,好象用了openSessionInViewFilter以后,可能会在执行saveorupdate等业务时出现异常。不知如何解决。2,各位在开发项目时,鉴于尽可能的少发送SQL语句并且节省资源的情况下,通常用哪种加载机制?
经过BAIDU上狂搜,结果发现使用spring提供的openSessionInViewFilter能解决问题。
但是,好象用了openSessionInViewFilter以后,可能会在执行saveorupdate等业务时出现异常。不知如何解决。2,各位在开发项目时,鉴于尽可能的少发送SQL语句并且节省资源的情况下,通常用哪种加载机制?
解决方案 »
- java中如何监控正在使用的串口信息
- (面向对象的基本设计原则)有补充的补充下
- 使用Axis1.4 遇到此Exception,
- 一个关于xml解析文件放置问题
- javaMail的问题?很菜鸟的问题,都进来看看哈^
- struts validator的问题
- 这个程序为什么有问题呢???
- 各位大哥有人能较详细跟我讲讲部署ejb的各个xml文件吗?拜谢(当然分是不会少地)
- 高手经来:如何判断一个Socket连接是否还有效?我的代码为什么不能成功?
- 报错 There is no Action mapped for namespace / and action name .
- servlet报错
- struts <html:select>标签问题
例如:
@Transactional
public void doA(Object obj){
getSession.load(obj);
}public void doB(Object obj){
getSession.load(xx.class,new Long(1));
}public void main(){
...
doA();
...
doB(); //这时可能会出现no session异常
}把事务注释标签移到main()方法上就OK了。
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
<init-param>
<param-name>singleSession</param-name>
<param-value>true </param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.essh.util.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
<init-param>
<param-name>ignore</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<servlet-name>action</servlet-name>
</filter-mapping>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>能帮忙看下openSessionInViewFilter的配置吗?配完以后还是no Session