(继续搬)struts日期格式的转换以及hibernate中session的关闭在xml中的配置

1.struts日期格式的转换
package cn.sxx.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Map; import org.apache.struts2.util.StrutsTypeConverter; public class DateConverter extends StrutsTypeConverter { @Override public Object convertFromString(Map map, String[] vals, Class class1) { Date date = null; if(vals != null && vals.length > 0){ String dateStr = vals[0]; if(StringUtils.isNotBlank(dateStr) && class1 == Date.class){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try { date = sdf.parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } } } return date; } @Override public String convertToString(Map map, Object obj) { String result = ""; if(obj != null && obj.getClass() == Date.class){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); result = sdf.format(obj); } return result; } }

配置文件:xwork-conversion.properties的内容为:

java.util.Date=DateConverter 的全路径

 2.hibernate中session的关闭在xml中的配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" 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">

    <display-name>Struts Blank</display-name>
    <!-- 
    防止hibernate的session关闭问题,主要应用与延迟加载 .spring在管理session,把事务切分在service层,
    当前service方法开始调用时,会开启一个session。service执行完毕,就会关闭session。
    如果关闭了session,就不会有延迟加载。openSessionInViewerFilter让session不被关闭
    openSessionInViewerFilter一定要在struts过滤器的上面,否则会报出no session的错误。
    -->
    <filter>
        <filter-name>openSessionInViewerFilter</filter-name>
        <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>openSessionInViewerFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <!-- 
        服务器启动时该过滤器会被实例化,init方法会被调用,然后就会读取配置文件。
     -->
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    
    <!-- 
        spring 的容器一定是服务器已启动就创建,spring提供搞一个监听器,专门做ioc容器的初始化
     -->
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    
    <!-- 
        指定spring文件的位置,给上面的listener
     -->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:ApplicationContext.xml</param-value>
    </context-param>

    
  
</web-app>

 

posted @ 2019-06-26 16:25  永远没对象  阅读(195)  评论(0编辑  收藏  举报