`
huangfoxAgain
  • 浏览: 36955 次
  • 性别: Icon_minigender_1
  • 来自: 常州
社区版块
存档分类
最新评论

[简易信息系统开发01] 模块化展示数据

阅读更多

需求:

1.信息聚合展示;

2.快速建站;

3.网站布局可以定制;

 

以上需求虽然就简单几个字,但是对于我这个web新手还是有些头晕~

晚上花了些时间构思了一个简单的“山寨版”模型。

 

实现的功能:

1.后台控制页面布局和样式问题;

2.信息模块化展示;(方式1:jsp:include)

 

实现思路:

 

1.项目文件结构

 

 

主要注意WebRoot中的文件结构:

css里面存放多套样式文件;

image和css配套使用;

web-inf中page中存放多套布局文件(jsp布局,没采用freemarker等模版引擎,不熟!);在page中有个module专门存放模块的文件(简单理解首页上的那些“豆腐块”);

 

2.模块化展示数据

像每个子页面的公共部分(例如:导航、版权等)可以采用jsp:include的方式公用,因此这块可以作为模块放到module中作为一个组件,在需要的地方引入。

但是这种方式也可以展示后台传过来了数据信息(信息一般存储在list中),例如:

<%@ page language="java" contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<!-- 首页里面的信息展示“豆腐块” -->
<div id="index_list_top" ></div>
<div id="index_list_mid" >
<c:forEach var="info" items='${param.info}'>
	${ info } <br>
</c:forEach>
</div>
<div id="index_list_bottom" ></div>
 

这个模块文件遍历了传入的list,并做出了简单的布局展示。这里采用了jstl、el表达式。

在引入这个模块的页面只要如下操作即可:

<!-- 使用jsp:include 包含页面内容 -->
     <jsp:include page="/WEB-INF/page/style01/module/index_list.jsp">
     	<jsp:param value='${requestScope.news}' name="info"/>
     </jsp:include>
 

其中${requestScope.news}是利用el从request中取出相应的数据。因此只要这里“注入”的数据就可以复用模版的布局。

同样可以利用c标签import这个模块,代码如下:

<!-- 使用c:import 包含页面内容 -->
   	<c:import url="/WEB-INF/page/style01/module/index_list.jsp">
   		<c:param name="info" value='${requestScope.notices}' ></c:param>
   	</c:import>
 

3.后台控制布局和样式

其实后台取出了数据,要改变他们给用户的呈现,主要就是选择对应的布局文件(在该项目中存在于web-inf/page/中),和对应的样式文件(在该项目中存在与webRoot的css和image文件夹中)。

注意这里目录的特点:

css:WebRoot\css\style01

iamge:WebRoot\image\style01

jsp:WebRoot\WEB-INF\page\style01

如果我们对应开发了style02,并且里面给出不同的布局和样式文件,那么后台动态制定到不同的目录就带到了这个目的。

 

例如:在action中定义一个属性(style),用来指定呈现的布局和样式。(这个属性在正式项目中应该从配置文件中读取而来)

那么在action配置中可以动态配置result,用来“导向”指定的布局文件:

<action name="index" class="com.manta.index.action.IndexAction">

<result>/WEB-INF/page/${style}/index.jsp</result>

 </action>

 

那么在页面上通过其也可以指定样式文件:

<link rel="stylesheet" type="text/css" href="css/${requestScope.style}/index.css">

 

 

效果:(简单用颜色模块展示)

 

第一种样式:

 

通过修改action中的style属性,既可以得到第二种样式:

 

 

 

如果想开发新的样式怎么办?

1.只需要开发对应的jsp模版、css样式文件即可;

 

--------------------------------------------

需要持续改进的地方:

1.模块的配置(即模块的数量、位置可配置)。

2.模块的展示使用自定义标签来实现,可能更加方便。

 

 

欢迎大家提出意见~给出指导!

 

 

分享到:
评论
4 楼 huangfoxAgain 2011-03-18  
Wallian_hua 写道
我觉得他的是类似jquery 的样式switch.。不过我觉得楼主的思路不错。。。我喜欢。在做一下url重写最好可。


url重写应该得考虑~ 目前关于页面静态化处理没有什么思路~
3 楼 Wallian_hua 2011-03-18  
我觉得他的是类似jquery 的样式switch.。不过我觉得楼主的思路不错。。。我喜欢。在做一下url重写最好可。
2 楼 huangfoxAgain 2011-03-17  
tsoukw 写道
我在js端完成,简单,清晰,适应性高

能具体说说思路吗~?
1 楼 tsoukw 2011-03-17  
我在js端完成,简单,清晰,适应性高

相关推荐

    java开发简易人员管理系统

    在本项目中,"java开发简易人员管理系统" 是一个基于J2EE技术栈构建的应用,主要目的是实现对人员信息的有效管理和操作。系统采用MySQL作为后端数据库存储数据,提供了基本的增删查改功能,虽然规模不大,但包含了...

    简易快速j2ee开发GIS数据建库基本思想

    在进行J2EE开发以构建GIS(地理信息系统)数据建库系统时,我们需要理解几个核心概念和技术要点。本文将深入探讨简易快速J2EE开发GIS数据建库的基本思想。 首先,J2EE(Java 2 Platform, Enterprise Edition)是...

    简易银行卡管理系统的开发

    在本项目中,我们关注的是一个使用C++编程语言开发的简易银行卡管理系统。这个系统旨在帮助用户方便地管理和跟踪他们的银行账户活动,如存款、取款、转账等基本功能。以下是对这个系统的详细分析和相关知识点的阐述...

    简易的留言板模块系统

    总结来说,【简易的留言板模块系统】涉及了前端交互设计、后端开发、数据库管理、权限控制、安全防护以及运维等多个方面的知识。它是Web开发基础技能的一个典型应用场景,也是学习和实践全栈开发的绝佳起点。通过...

    简易教务管理系统c语言开发文档

    总的来说,这个简易教务管理系统项目是一个很好的C语言实践示例,它展示了如何运用基本的编程概念和数据结构来解决实际问题。通过学习这份开发文档和源代码,不仅可以提升C语言编程技能,还能了解教务管理系统的一般...

    简易微博系统.zip

    7. 数据持久化:所有用户数据,如用户信息、动态、评论等,都需要通过数据库进行持久化存储,保证信息的安全性和可靠性。 总结起来,这个简易微博系统虽然没有使用复杂的框架,但通过.NET和C#的结合,充分展示了Web...

    MFC简易学生信息系统

    "MFC简易学生信息系统"是一个基于Microsoft Foundation Class (MFC) 库开发的简单学生信息管理应用程序。MFC是微软提供的一套C++类库,它为Windows应用程序开发提供了丰富的功能,包括窗口、对话框、控件、文档视图...

    简易JSP信息管理系统

    【简易JSP信息管理系统】是一种基于Java服务器页面(JSP)技术构建的管理信息系统,它主要用于数据存储、处理和展示,适用于小型企业或个人进行日常信息管理。在本系统中,用户可以实现对数据的增删改查操作,提供了...

    简易oa系统

    4. 设计模式:在开发简易OA系统时,可能会采用MVC(Model-View-Controller)设计模式,将业务逻辑(Model)、视图呈现(View)和用户交互控制(Controller)分离,有利于代码结构的清晰和模块化。 5. 开发工具与...

    简易社区管理信息系统.zip

    《简易社区管理信息系统》可能包含了用户管理、事务处理、资源调度、数据分析等多个功能模块。其中,用户管理模块可能涉及居民信息录入、权限分配等,确保信息安全且有针对性;事务处理模块则可能涵盖报修、投诉、...

    简易管理系统

    "简易管理系统"是一个基于Java开发的应用程序,旨在提供一种简单、高效的管理工具,可能涵盖了诸如数据存储、用户操作、权限控制等核心功能。在Java这个强大的面向对象编程语言的支持下,此类系统通常具有良好的可...

    简易论坛系统文档和代码

    《简易论坛系统——Java Web开发详解》 在IT行业中,Web开发是一项至关重要的技能,而构建一个论坛系统是学习和实践这项技能的经典案例。本文将深入解析“简易论坛系统”的核心知识点,涵盖从需求分析到实际编码的...

    简易人员管理系统(纯Java版)

    【简易人员管理系统(纯Java版)】是一款基于Java编程语言开发的、专注于人员信息管理的软件系统。系统设计简洁高效,旨在提供一个易用的平台,实现对人员的增删查改等基本操作,同时也引入了管理员账号的概念,以...

    简易网上书店系统设计与实现

    《简易网上书店系统设计与实现》是一篇详细阐述基于B/S架构的网上书店系统开发的论文,该系统采用ASP编程语言和ACCESS数据库进行构建。网上书店系统作为一种商业信息系统,其核心在于提供便捷的网络购物体验,使用户...

    简易学生信息管理系统

    总结来说,这个“简易学生信息管理系统”是一个典型的C语言编程实践案例,它展示了如何利用C语言的强大功能构建一个实用的数据管理系统。对于初学者,通过分析和学习这个系统,可以提升对数据结构、文件操作以及基本...

    Python实现简易图书管理系统

    Python有内置的csv模块,可以方便地读取和写入这类文件,用于系统中图书数据的持久化存储。 接下来,"untitled.py"应该是项目的主程序文件。在这个文件中,开发者可能使用了Python的Tkinter库来创建GUI界面。...

    亮剑.net简易银行系统

    《亮剑.NET简易银行系统》是一个基于.NET框架的C#开发实战项目,旨在提供一个基础的银行业务模拟平台。此项目可能涵盖了多个IT知识点,包括但不限于数据库设计、用户界面交互、事务处理、安全性控制以及多层架构的...

    易语言简易银行系统

    综上所述,《易语言简易银行系统》是学习数据库操作、易语言编程以及银行业务流程的一个实例,它涵盖了基础的数据库连接与断开、用户交互、数据处理等多个关键点,对提升编程和项目开发能力具有积极的实践意义。...

    PB 开发的简易进销存系统

    PB开发的简易进销存系统凭借其易用性和灵活性,能够有效提升中小企业的生产管理效率,降低运营成本,是这类企业信息化建设的有力工具。在实际使用中,用户还需要根据自身业务特点对系统进行适当的定制和优化,以充分...

    简易考试系统

    2. 可扩展性:设计模块化,便于后期增加新功能或整合其他系统。 3. 用户体验:优化界面设计,提供清晰的导航和反馈,确保用户操作流畅。 总结,“简易考试系统”是信息技术与教育相结合的产物,它通过科学的设计和...

Global site tag (gtag.js) - Google Analytics