1、applicationContext.xml 或者 spring-mvc.xml中:
<!--===============通用视图解析器 begin===============-->
<!-- 配置jsp视图解析器 -->
<bean id="viewResolverCommon"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
<property name="viewClass">
<value>org.springframework.web.servlet.view.InternalResourceView
</value>
</property>
<property name="order" value="1" />
</bean>
<!-- 配置freeMarker视图解析器 -->
<bean id="viewResolverFtl"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="viewClass" value="com.sojson.core.freemarker.extend.FreeMarkerViewExtend" />
<!-- 把Freemarker 扩展一下,把相关属性加入进去。。。 -->
<property name="contentType" value="text/html; charset=utf-8" />
<property name="cache" value="true" />
<property name="suffix" value=".ftl" />
<property name="order" value="0" />
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="order" value="2"></property>
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp"></property>
</bean>
<!-- 配置freeMarker 拓展-->
<bean id="freemarkerConfig"
class="com.sojson.core.freemarker.extend.FreeMarkerConfigExtend">
<property name="templateLoaderPath">
<value>/WEB-INF/ftl/</value>
</property>
<property name="freemarkerVariables">
<map>
<entry key="xml_escape" value-ref="fmXmlEscape" />
<entry key="api" value-ref="api"/>
</map>
</property>
<property name="defaultEncoding">
<value>utf-8</value>
</property>
<property name="freemarkerSettings">
<props><!-- 315360000 -->
<prop key="template_update_delay">0</prop>
<prop key="defaultEncoding">UTF-8</prop>
<prop key="url_escaping_charset">UTF-8</prop>
<prop key="locale">zh_CN</prop>
<prop key="boolean_format">true,false</prop>
<prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
<prop key="date_format">yyyy-MM-dd</prop>
<prop key="time_format">HH:mm:ss</prop>
<!-- <prop key="number_format">0.######</prop>-->
<prop key="number_format">#</prop>
<prop key="whitespace_stripping">true</prop>
<prop key="auto_import">
/common/config/top.ftl as _top_new,
/common/config/left.ftl as _left_new,
/common/config/footer.ftl as _footer,
/user/Password_and_information.ftl as _pai,
</prop>
</props>
</property>
</bean>
<bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>
<!--===============通用视图解析器 end===============-->
2、在web.xml文件中配置Spring控制器,关键代码如下所示:
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value> <!--或者spring-mvc.xml-->
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern> <!--.do或者.action或者.shtml,即为ajax请求的url后缀-->
</servlet-mapping>
3.index.jsp或index.ftl页面
(1) jsp
<body>
<nav class="navd" role="navigation">
<div class="container-fluid">
<div class="navbar-header">
<!-- <button type="button" class="con navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button> -->
<img class="img_a hidden-xs" src="img/logo.png" style="width:50px;height:50px;float:left">
<a class="h navbar-brand" href="#" style="font-size:24px;color:white;font-weight: bold;">后台管理系统</a>
</div>
<div class="aa collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li class="drow dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" style="color:white;">下拉菜单 <span class="caret"></span></a>
<ul class="dropdown-menu" role="menu">
<li>
<a href="grsz/grsz.jsp" data-toggle="modal" data-target=".vc-example-modal-lg">个人设置</a>
</li>
<li>
<a href="#">退出</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<div class="container-fluid" style="padding-left:0;padding-right:0;">
<div class="row-fluid" style="padding-left:0;padding-right:0;">
<div class="box col-md-1" style="padding-left:0;padding-right:0;background:#2C3E50;margin-left:0px;margin-right:0px;position:relative;overflow: auto;">
<div class="left">
<!--<span class="kjdh2 glyphicon glyphicon-th-list"></span>-->
<b class="b" style="padding-left:20px">快捷导航</b>
<!--<span class="rem glyphicon glyphicon-remove" style="color:white;float:right;line-height:40px;cursor: pointer;position:absolute;right:15px;top:0px;"></span>-->
</div>
<span class="gly_span glyphicon glyphicon-th-large" οnmοuseenter="myEnterFunction()"></span>
<div class="subNavBox">
<div class="subNav currentDd currentDt">
<span class="tubiao glyphicon glyphicon-th-large" style="margin-right:13px;"></span>系统管理
</div>
<ul class="navContent">
<li>
<a href="qygl/qygl.jsp">企业管理</a>
</li>
<li>
<a href="zzjg/zzjg.jsp">组织机构管理</a>
</li>
<li>
<a href="zygl/zygl.jsp">资源管理</a>
</li>
<li>
<a href="jsgl/jsgl.jsp">角色管理</a>
</li>
<li>
<a href="yhgl/yhgl.jsp">用户管理</a>
</li>
<li>
<a href="xtcs/xtcs.jsp">参数管理</a>
</li>
</ul>
<div class="subNav">
<span class="tubiao glyphicon glyphicon-list-alt" style="margin-right:13px;"></span>凭证管理
</div>
<ul class="navContent">
<li>
<a href="${pageContext.request.contextPath}/lpz/record!vchNoList.action">录凭证</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/pzcx/selectRecord!cpz.action">查凭证</a>
</li>
</ul>
<div class="subNav">
<span class="tubiao glyphicon glyphicon-tags" style="margin-right:13px;"></span>账簿管理
</div>
<ul class="navContent">
<li>
<a href="${pageContext.request.contextPath}/zbgl/zz!addAcct.action">总账</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/zbgl/mxz!addAcct.action">明细账</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/zbgl/acctBalance!addAcct.action">科目余额表</a>
</li>
</ul>
<div class="subNav">
<span class="tubiao glyphicon glyphicon-file" style="margin-right:13px;"></span>报表管理
</div>
<ul class="navContent">
<li>
<a href="${pageContext.request.contextPath}/xtsz/wordSet!addAcctWord.action">资产负债表</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/xtsz/wordSet!addAcctWord.action">利润表</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/xtsz/wordSet!addAcctWord.action">现金流量表</a>
</li>
</ul>
<div class="subNav">
<span class="tubiao glyphicon glyphicon-cog" style="margin-right:13px;"></span>财务设置
</div>
<ul class="navContent">
<li>
<a href="${pageContext.request.contextPath}/xtsz/wordSet!firstSelect.action">凭证字设置</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/xtsz/acctSet!addAcct.action">科目设置</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/xtsz/initAcct!addData.action">财务余额初始化</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/xtsz/cwcsSet!updateBase.action">财务系统参数</a>
</li>
</ul>
</div>
</div>
<!--<ul class="nav_content" οnmοuseleave="myLeaveFunction()">
<li>
<a href="qyglinstitutional.html">企业管理</a>
</li>
<li>
<a href="zzjgorganization.html">组织机构管理</a>
</li>
<li>
<a href="zyglresource.html">资源管理</a>
</li>
<li>
<a href="jsglrole.html">角色管理</a>
</li>
<li>
<a href="yhglmanage.html">用户管理</a>
</li>
<li>
<a href="xtcssystem.html">参数管理</a>
</li>
</ul>-->
<div class="col-md-11" style="padding-left:0;padding-right:0;margin-left:0px;margin-right:0px;overflow: auto;">
<div id="box2">
<div class="row-fluid">
<div class="img_b2">
<span class="glyphicon glyphicon-home"> 首页</span>
</div>
</div>
<div class="row-fluid">
<div class="col-md-9" style="position:relative;">
<img src="img/liucheng.png">
<a><img class="img-a" src="img/lpz.png" style="position:absolute;top:290px;left:282px;cursor:pointer"></a>
<a><img class="img-a" src="img/sh.png" style="position:absolute;top:290px;left:460px;cursor:pointer"></a>
<a><img class="img-a" src="img/pzdz.png" style="position:absolute;top:290px;left:640px;cursor:pointer"></a>
<a><img class="img-a" src="img/jzsy.png" style="position:absolute;top:290px;left:815px;cursor:pointer"></a>
<a><img class="img-a" src="img/qmjz.png" style="position:absolute;top:290px;left:1000px;cursor:pointer"></a>
<span style="position:absolute;top:20px;left:10px;color:#4ad5b3;font-weight: bold;font-size:16px;">
<img src="img/zhinan.png" ><i> 新人指南</i>
</span>
</div>
<div class="col-md-2 pull-right" >
<div class="panel panel-primary" style="margin-top:50px;">
<div class="panel-heading">本期财务指标</div>
<div class="panel-body">
<ol>
<li>aaa</li>
<li>aaa</li>
<li>aaa</li>
<li>aa</li>
<li>aaa</li>
</ol>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 个人设置模态框 -->
<div class="modal fade vc-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="mtvc modal-content">
</div>
</div>
</div>
</div>
</div>
</body>
(2)ftl页面
<#macro user index>
<div class="left-side sticky-left-side">
<!--logo and iconic logo start-->
<div class="logo">
<a href="javascript:void(0);"><img src="${basePath}/images/logo.png" alt=""></a>
</div>
<div class="logo-icon text-center">
<a href="javascript:void(0);"><img src="${basePath}/images/logo_icon.png" alt=""></a>
</div>
<!--logo and iconic logo end-->
<div class="left-side-inner">
<!-- visible to small devices only -->
<div class="visible-xs hidden-sm hidden-md hidden-lg">
<div class="media logged-user">
<div class="media-body">
<h4><a href="#">管理员</a></h4>
</div>
</div>
</div>
<!--sidebar nav start-->
<ul class="nav nav-pills nav-stacked custom-nav">
<li><a href="${basePath}/user/index.shtml"><i class="fa fa-home"></i> <span>个人资料</span></a></li>
<li ><a href="${basePath}/role/mypermission.shtml"><i class="fa fa-laptop"></i> <span>我的权限</span></a></li>
<@shiro.hasAnyRoles name='888888,100002,100011'>
<li ><a href="${basePath}/member/online.shtml"><i class="fa fa-cogs"></i> <span>在线用户</span></a></li>
<li ><a href="${basePath}/member/list.shtml"><i class="fa fa-book"></i> <span>用户列表</span></a></li>
</@shiro.hasAnyRoles>
<@shiro.hasAnyRoles name='888888,100003'>
<li class="menu-list"><a href=""><i class="fa fa-bullhorn"></i> <span>权限管理</span></a>
<ul class="sub-menu-list">
<@shiro.hasPermission name="/role/index.shtml">
<li><a href="${basePath}/role/index.shtml">角色列表</a></li>
</@shiro.hasPermission>
<@shiro.hasPermission name="/role/allocation.shtml">
<li><a href="${basePath}/role/allocation.shtml">角色分配</a></li>
</@shiro.hasPermission>
<@shiro.hasPermission name="/permission/index.shtml">
<li><a href="${basePath}/permission/index.shtml">权限列表</a></li>
</@shiro.hasPermission>
<@shiro.hasPermission name="/permission/allocation.shtml">
<li><a href="${basePath}/permission/allocation.shtml">权限分配</a></li>
</@shiro.hasPermission>
</ul>
</li>
</@shiro.hasAnyRoles>
<@shiro.hasAnyRoles name='888888,100003'>
<li class="menu-list"><a href=""><i class="fa fa-sitemap"></i> <span>推广管理</span></a>
<ul class="sub-menu-list">
<@shiro.hasPermission name="/agency/agency_setting.shtml">
<li><a href="${basePath}/agency/agency_setting.shtml">推广设置</a></li>
</@shiro.hasPermission>
</ul>
</li>
</@shiro.hasAnyRoles>
<@shiro.hasPermission name="/agency/agency.shtml">
<li class="menu-list"><a href=""><i class="fa fa-bullhorn"></i> <span>推广</span></a>
<ul class="sub-menu-list">
<li><a href="${basePath}/agency/agency_qrcode.shtml">扫码推广</a></li>
<li><a href="${basePath}/agency/agency_list.shtml">代理列表</a></li>
<li><a href="${basePath}/agency/agency_statistical.shtml">代理统计</a></li>
</ul>
</li>
</@shiro.hasPermission>
<@shiro.hasPermission name="/open/gobang.shtml">
<li><a href="${basePath}/open/gobang.shtml"><i class="fa fa-gamepad"></i> <span>gobang</span></a></li>
</@shiro.hasPermission>
<@shiro.hasPermission name="/open/_2048.shtml">
<li><a href="${basePath}/open/_2048.shtml"><i class="fa fa-gamepad"></i> <span>2048</span></a></li>
</@shiro.hasPermission>
<li><a href="javascript:void(0);" οnclick="Safety_logout(${token.distinguish_type});"><i class="fa fa-sign-in"></i> <span>安全退出</span></a></li>
</ul>
<!--sidebar nav end-->
</div>
</div>
</#macro>
参数映射控制器映射jsp或者ftl页面
最新推荐文章于 2023-02-07 09:23:13 发布