2017年应公司要求负责研发智能分析平台,利用OLAP技术对税务数据从多个维度、多个层级,跨业务域的分析,发现数据特性,总结税务规律,支持领导决策,经过差不多一年,终于算是整理出来1.0版本,现在对整个开发过程中用到的东西进行稍微总结,连续一年,80%以上都在加班,惨!
公司的框架叫loushang2016,是基于springMVC+mybatis的,前端采用JSP,但是开发过程中,我想使用FreeMaker和JSP兼容开发前端页面,接下来我将重点介绍一下,普通的WEB项目如何集成FreeMaker,且不影响JSP的使用,在mvc-context.xml中配置多视图解析器。
<!-- 配置视图解析器 -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/jsp/" />
<property name="suffix" value=".jsp" />
<property name="order" value="1" /> <!-- 匹配顺序 -->
</bean>
<!-- 配置freeMarker视图解析器 -->
<bean id="viewResolverFtl" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>
<property name="contentType" value="text/html; charset=UTF-8"/>
<property name="exposeRequestAttributes" value="true" />
<property name="exposeSessionAttributes" value="true" />
<property name="exposeSpringMacroHelpers" value="true" />
<property name="cache" value="true" />
<property name="suffix" value=".html" />
<property name="order" value="0"/> <!-- 顺序 -->
</bean>
<!-- 配置freeMarker的模板路径 -->
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/html/"/>
<property name="freemarkerVariables">
<map>
<entry key="xml_escape" value-ref="fmXmlEscape" />
</map>
</property>
<property name="defaultEncoding" value="UTF-8"/>
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">0</prop><!-- 模板多久更新一次 -->
<prop key="locale">zh_CN</prop>
<prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
<prop key="date_format">yyyy-MM-dd</prop>
<prop key="number_format">#.##</prop>
</props>
</property>
</bean>
<bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"></property>
<!-- 设定文件上传的最大值5MB,5*1024*1024 -->
<property name="maxUploadSize" value="52428800"></property>
</bean>