web程序还是app解决方法不一样
解决方案 »
- 【急急急】一个弹出新页面获取action中传递过来的值的问题,在线等
- 为什么我在myeclipse里建不了Servlet ?
- java中如何使用xmlhttp或xmlRequest对象传递数据去调用web service?
- 求助Struts+Spring+Hibernate 框架插不进值进数据库
- 有没有好的j2ee的QQ群推荐一下
- 关于struts的一个基本应用:Action类中的execute方法怎么传值给页面
- 50分求解----如何生成快捷方式
- 工作经验更看重技术(ejb)还是业务?讨论之
- Jbuilder如何生成一个类的stub和skeleton??????
- java 中用dom4j生成xml文件去掉xml头后,在去掉第二行的空格
- 局部变量未进行初始化(如何在第二个循环中用第一个循环的变量)
- hibernate查询问题 list()方法有时卡住不执行 具体情况内详
百度一下OpenSessionInView <?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- *************************************************************************start******** -->
<display-name>demo</display-name>
<!-- **********************************************************************context-param*********** -->
<!--spring配置-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:appContext*.xml</param-value>
</context-param>
<!-- ***********************************************************************listener********** -->
<!--spring配置-->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!-- **********************************************************************filter*********** -->
<!-- 中文过滤器 -->
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.syj.util.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<!-- hibernate3 OpenSessionInView 模式 -->
<filter>
<filter-name>OpenSessionInViewFilter</filter-name>
<filter-class>
com.syj.util.OpenSessionInViewFilter
</filter-class>
</filter>
<!--struct配置 -->
<filter>
<filter-name>Struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<!-- **********************************************************************filter-mapping*********** -->
<!-- 中文过滤器 -->
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- hibernate3 OpenSessionInView 模式 注意:一定配置struct mapping的前面-->
<filter-mapping>
<filter-name>OpenSessionInViewFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<!--struct配置 注意:一定配置OpenSessionInView mapping的后面-->
<filter-mapping>
<filter-name>Struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- ************************************************************************servlet********* -->
<!-- 负责系统初始化的启动Servlet -->
<servlet>
<servlet-name>initServlet</servlet-name>
<servlet-class>com.syj.action.InitServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 配置图形码 -->
<servlet>
<servlet-name>codeFact</servlet-name>
<servlet-class>com.syj.util.CodeFact</servlet-class>
</servlet>
<!-- jfreechart显示图表 -->
<servlet>
<servlet-name>DisplayChart</servlet-name>
<servlet-class>
org.jfree.chart.servlet.DisplayChart
</servlet-class>
</servlet>
<!-- ************************************************************************servlet-mapping********* -->
<!-- 负责系统初始化的启动Servlet -->
<servlet-mapping>
<servlet-name>initServlet</servlet-name>
<url-pattern>/initServlet</url-pattern>
</servlet-mapping>
<!-- 配置图形码 -->
<servlet-mapping>
<servlet-name>codeFact</servlet-name>
<url-pattern>/codeFact</url-pattern>
</servlet-mapping>
<!-- jfreechart显示图表 -->
<servlet-mapping>
<servlet-name>DisplayChart</servlet-name>
<url-pattern>/servlet/DisplayChart</url-pattern>
</servlet-mapping>
<!-- *************************************************************************jsp-config******** -->
<jsp-config>
<!--syj标签库配置-->
<taglib>
<taglib-uri>syj.tld</taglib-uri>
<taglib-location>/WEB-INF/syj.tld</taglib-location>
</taglib>
</jsp-config>
<!-- *************************************************************************end******** -->
</web-app>
你再试一下
我没有太看明白您的方法:您的方法是
->
<filter>
<filter-name>OpenSessionInViewFilter</filter-name>
<filter-class>
com.syj.util.OpenSessionInViewFilter
</filter-class>
</filter>
->
<filter-mapping>
<filter-name>OpenSessionInViewFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
那么如果用这个方法是不是还要自定义com.syj.util.OpenSessionInViewFilter类。 还有,我查到一个办法
<filter>
<filter-name>hibernateFilter</filter-name>
<filter- class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
不知道这个办法和您的有什么区别。
我没有hibernate的基础,请您指教。
<!--用于事务-->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<!--配置声明式事务代理工厂-->
<bean id="transactionProxy" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref local="transactionManager"/>
</property>
<property name="transactionAttributes">
<props>
<prop key="add*">
PROPAGATION_REQUIRED
</prop>
<prop key="*">
PROPAGATION_REQUIRED
</prop>
</props>
</property>
</bean>
applicationContext中:<!-- JPA Transaction manager :JPA事务控制设置-->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
<property name="dataSource" ref="dataSource"/>
</bean>
<!-- TransAction Manager :文件配置声明事务管理 -->
<!--
<aop:config>
<aop:pointcut id="crudMethods" expression="execution(* com.ssh.service.*.*(..))"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="crudMethods"/>
</aop:config>
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="save" propagation="REQUIRED"/>
<tx:method name="update" propagation="REQUIRED"/>
<tx:method name="delete" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
-->
<!-- TransAction Manager :注释配置声明事务管理 -->
<tx:annotation-driven transaction-manager="transactionManager"/>
在需要事务管理的类中:@Transactional(readOnly = true) //默认不使用事务
public class XXXManager {//在需要事务控制的方法上加标注
@Transactional(readOnly = false, propagation = Propagation.REQUIRES_NEW)
public XXX saveXXX(String arg) {
....
}
}
OpenSessionInView
<filter>
<filter-name>Spring OpenEntityManagerInViewFilter</filter-name>
<filter-class>
org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>Spring OpenEntityManagerInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
又要如何解决呢
http://topic.csdn.net/u/20080524/08/e0cc868a-b9ac-4085-9385-8b2cba27ce45.html