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 ...
随机推荐
- CentOS 6.5 开机启动指定服务
gedit /etc/rc.d/rc.local #关闭防火墙 service iptables stop #开启samba服务 service smb start #开启ntopng 端口5000 ...
- CentOS 在同一窗口打开文件夹
1.打开一个文件夹 2.编辑 - 首选项 - 行为,勾选“总是在浏览器窗口打开”,点击关闭.
- iOS对UIViewController生命周期和属性方法的解析
目录[-] iOS对UIViewController生命周期和属性方法的解析 一.引言 二.UIViewController的生命周期 三.从storyBoard加载UIViewController实 ...
- USACO Section 1.3 Mixing Milk 解题报告
题目 题目描述 Merry Milk Makers 公司的业务是销售牛奶.它从农夫那里收购N单位的牛奶,然后销售出去.现在有M个农夫,每个农夫都存有一定量的牛奶,而且每个农夫都会有自己的定价.假设所有 ...
- 基于js脚本的单机黄金点游戏
题目描述 N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G( ...
- 实战3--项目开始--准备:::资源分类, 日志系统, 写BaseDao
项目资源分类: 1. package: base, dao, dao.impl, domain, service, service.impl, util, view.action 2. co ...
- GIT使用规范流程
1:每次开发新功能时,都应该新建立一个独立的分支(branch),整个项目工程有且只有一个主分支(master branch),项目发版时是从主分支上发布. Step01:切换到主分支 $ git c ...
- iOS开发——应用图标上显示消息数量
iOS8以前: UIApplication *app = [UIApplication sharedApplication]; app.applicationIconBadgeNumber = num ...
- (中等) HDU 4725 The Shortest Path in Nya Graph,Dijkstra+加点。
Description This is a very easy problem, your task is just calculate el camino mas corto en un grafi ...
- STM32应用笔记转载
stm32 外部中断嵌套[操作寄存器+库函数] stm32 NVIC中断管理实现[直接操作寄存器] stm32 SPI通信[操作寄存器+库函数] stm32 i2c通信 [操作寄存器+库函数] stm ...