Java 页面的工具包
所谓工具包,是指把页面的功能划分出来,放到另外一个包里面。方面工程管理、结构清晰、团队协作等。
- 根据原来的例子:要做一个com.myweb包的工具包com.myweb.tool
- 为导航栏统一创建接口
- 创建好后,要创建页面上的一些导航栏,分为顶部导航栏和底部导航栏
- 创建工厂,用工厂来生成顶部导航栏和底部导航栏
- 获取创建好的元素并加到界面上
上面听起来稍微比较复杂的,但是我感觉还是可以理解的。
代码如下;
package com.myweb.tool; public interface NavBar {
//导航栏接口
public String getBarContent();//获取导航栏
}
导航栏接口
package com.myweb.tool; public class TopBar implements NavBar { @Override
public String getBarContent() {
return " <a href=''>首页</a> | <a href=''>新闻</a> | <a href=''>用户注册</a> ";
} }
顶部导航栏
package com.myweb.tool; public class BottomBar implements NavBar{ @Override
public String getBarContent() { return " <a href=''>首页</a> | <a href=''>关于我们</a> | <a href=''>招聘信息</a> ";
} }
底部导航栏
package com.myweb.tool; public class BarFactory {
public static NavBar CreateBar(String type)
{
NavBar nv;
switch(type)
{
case "top":
nv = new TopBar();
break; case "bottom":
nv = new BottomBar();
break; default:
nv = new TopBar();
break;
} return nv;
}
}
导航栏工厂
@Override
public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { ModelAndView mv = new ModelAndView(view); /* TopBar topNav = new TopBar();
mv.addObject("top_nav", topNav.getBarContent()); BottomBar bottomNav = new BottomBar();
mv.addObject("bottom_nav", bottomNav.getBarContent());*/ NavBar topNav = BarFactory.CreateBar("top");
NavBar bottomNav = BarFactory.CreateBar("bottom");
mv.addObject("top_nav", topNav.getBarContent());
mv.addObject("bottom_nav", bottomNav.getBarContent()); return mv;
}
创建导航栏
<!DOCTYPE html>
<!-- [ published at 2015-11-13 12:30:50 ] -->
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>新阳</title>
</head>
<body>
<div style="width:100%;height:95px;border-bottom:solid 1px gray">
${top_nav}
</div> <div > body content </div> <div style="width:100%;height:95px;border-bottom:solid 1px gray;margin-top:500px">
${bottom_nav} © 2015 新阳
</div>
</body>
</html>
jsp加载导航栏
Java 页面的工具包的更多相关文章
- Java页面中文编码要转换两次encodeURI
1.js文件中使用encodeURI()方法. login_name = encodeURI(encodeURI(login_name)); 2.action中URLDecoder解码 loginNa ...
- Java 8并发工具包漫游指南
Java 8并发工具包简介 Java 8并发工具包由3个包组成,分别是java.util.concurrent.java.util.concurrent.atomic和java.util.concur ...
- java页面url传值中文编码&解码
URL参数中有中文值,传到服务端,在用request.getParameter()方法,得到的常常会是乱码. 这将涉及到字符解码操作,我们在应用中常常会用new String(fieldType.ge ...
- java 页面传输中文乱码解决方式
post 中文乱码解决方案 接受数据的时候设置 request.setCharacterEncoding("utf-8");//编码必须和页面编码一致 页面设置 <%@pag ...
- 用java页面下载图片
try { //根据String形式创建一个URL对象 String filePath = materialProductWorks.getDownloadImageUrl(); URL url = ...
- java 页面换行处理
在taxtarea中输入的文本.如果含有回车或空格.在界面上显示的时候则不哪么正常.回车消失了,空格变短了. 如何解决这个问题呢.有2种方法. 1.使用<pre>标签 w3c对pre元素是 ...
- java 页面url传值中文乱码的解决方法
parent.window.location.href 和 iframe中src的乱码问题.要在这两个url地址中传中文,必须加编码,然后再解码.编码:encodeURI(encodeURI(&quo ...
- java基础-jdk工具包
1. 标准工具 这些工具都是JDK提供的,通常都是长期支持的工具,JDK承诺这些工具比较好用.不同系统.不同版本之间可能会有差异,但是不会突然就有一个工具消失. 1.1 基础包 (extcheck, ...
- Java页面中EL的${}与<%= request.getParameter%>有什么区别? el 取不到值
${requestScope}操作的是request的作用域,相当于request.getAttribute();不过EL比这个更智能些,它不用强制类型转换就可以拿到了真实对象的值.request.g ...
随机推荐
- 使用VNC远程管理VPS(Centos系统)
首先安装桌面环境,我选择的是xfce,轻量级桌面,小巧实用不占太多内存,(占用内存方面,xfce<kde,kde<gnome). centos默认源里面没有xfce,首先安装epel源,然 ...
- CentOS 6.5添加163源
1.首先备份/etc/yum.repos.d/CentOS-Base.repo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS ...
- 利用Openssl进行RSA加密签名算法
加密(签名)的过程是(M的e次方)mod n,在这里我们把消息M假定为一个数字,但实际上消息一般为字符串,所以必须有一个将字符串转化为数字的规则,并且要让这个数字的大小和n相当(也不能比 n大).这样 ...
- PAT (Advanced Level) 1092. To Buy or Not to Buy (20)
简单题. #include<cstdio> #include<cstring> ; char s1[maxn],s2[maxn]; ]; ]; int main() { sca ...
- HDU 3715 Go Deeper
二分答案 + 2-SAT判断 #include<cstdio> #include<cstring> #include<cmath> #include<vect ...
- 深入浅出Ajax(三)
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> &l ...
- HashSet 与HashMap底层实现
1. HashSet底层通过包装HashMap来实现,HashSet在添加一个值的时候,实际上是将此值作为HashMap中的key来进行保存. 2. HashMap的底层实现是通过初始化化一个Entr ...
- excel 合并多个文件
新建一个工作表,命名后保存到和与合并的100个文件同一个文件文件夹,摁 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码.运行.等候一会就OK了. ...
- POP音原因
一,通话时调节音量,有POP音. POP音产生原因在于,音量变化太大导致有POP音,需要以淡入淡出的方式调节音量.请申请MOLY00108114 & MOLY00108143这两个Modem ...
- Total Highway Distance
Total Highway Distance 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi and Little Ho are playing a ...