标签亦MVC

来源:互联网 发布:mysql怎么删除表字段 编辑:程序博客网 时间:2024/04/28 20:19

标 签 亦 MVC

newxy新坐标技术运用之五

作者:胡立新

 

 
一、MVC
MVC是三个单词的缩写,这三个单词分别为:模型(Model)、视图(View)和控制(Controller)Model层实现系统中的业务逻辑,通常可以用JavaBeanEJB来实现。View层用于与用户的交互,通常用JSP来实现。Controller层是ModelView之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。(这段文字谪于网上未署名文章)
 
二、典型的MVC实现
StrutsServletJSP、自定义标签整合到一个统一的框架中,实现了MVC模式, Struts是一个非常不错的应用框架。
 
三、newxy标签也可实现MVC
1MODEL
基于MVC的系统中的 Model 部分可以细分为两个概念:系统的内部状态, 能够改变状态的行为。
(1)、系统的内部状态,newxy<nhtml:form/><nbean:formBean/>标签可以表示系统内部的状态,使用属性表示状态的细节。
(2)、改变状态的行为,newxy的<nhtml:form/>、<nbean:formBean/>标签关联的formBean可以通过DAO类永久地保存它们的状态信息,也可从数据库中获取信息。
    2
VIEW
View 部分通常使用JSP技术来构建。newxy标签<nhtml:TR/><nhtml:button/><nhtml:link/><nhtml:buttons/><nhtml:stylesheets/><nhtml:javascript/>可以镶入JSP页面,不仅影响页面外观,还产生一些静态页面javascripts函数。
3CONTROLLER
newxy的<nlogic:action1/>标签可以根据传给它的参数决定作数据增、删、改、查或文件上传等操作。
 
四、newxy新坐标标签实现MVC范例及图解
1、范例:一个OA系统的部门管理,只有一个jsp页面,没有java代码。
2、图解,左边是jsp代码,右边是产生的介面和部分超文本代码。
3、标签详解参看技术文档:<nbean:formBean>、<nlogic:action1/>、<nhtml:form></nhtml:form>、<nhtml:buttons/>
 
五、范例的表定义及jsp代码
1、表定义
/*办公系统部门表*/
create table oa_department (
  oa_department_id int primary key,
  parent_id int null,
  title varchar(125) not null,
  intro varchar(255) null,
  being int default 1
)
2、jsp代码
<%@ page contentType="text/html; charset=GBK" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
 
<%@ taglib uri="/WEB-INF/newxy-html.tld" prefix="nhtml"%>
<%@ taglib uri="/WEB-INF/newxy-logic.tld" prefix="nlogic"%>
<%@ taglib uri="/WEB-INF/newxy-bean.tld" prefix="nbean"%>
 
<html>
<head>
<title>
departmentEdit
</title>
  <link href="${pageContext.request.contextPath}/common.css" rel="stylesheet" type="text/css">
  <nhtml:stylesheets stylesheet="stylesheet2"/>
  <nhtml:javascripts/>
  <nlogic:action1 id="act1" formName="formDepartment"/>
</head>
<body bgcolor="#ffffff">
 
<nbean:formBean name="formDepartment" sql="select * from oa_department"/>
 
<div style="width:480">
  <div align="right">
    <nlogic:navigate formName="formDepartment" length="10"/>
    <html:link page="/department/help.jsp">帮助</html:link>
  </div>
 
  <div class="div">
  <logic:notEmpty name="formDepartment" property="_coll">
    <table width="480" cellpadding="0" cellspacing="0">
      <nlogic:iterate id="rec" name="formDepartment" property="_coll">
        <nhtml:TR onclick="edit(act1);">
          <td style="cursor:hand">
            <bean:write name="rec" property="title"/>
          </td>
        </nhtml:TR>
      </nlogic:iterate>
    </table>
  </logic:notEmpty>
  </div>
  <div>
    <nhtml:buttons actionId="act1"/>
  </div>
 
  <div class="div">
    <nhtml:form action="/department/departmentEdit.jsp" formName="formDepartment">
      <nhtml:hidden property="_table" value="oa_department"/>
      <table width="480" border="1">
        <tr>
          <td width="40">名称</td>
          <td><html:text property="title" size="58"></html:text></td>
        </tr>
        <tr>
          <td>说明</td>
          <td><html:textarea property="title" cols="57" rows="8"></html:textarea></td>
        </tr>
        <tr>
          <td>激活</td>
          <td>
            <html:radio property="being" value="1">是(默认)
            </html:radio>
            <html:radio property="being" value="0">否
            </html:radio>
          </td>
        </tr>
      </table>
    </nhtml:form>
  </div>
</div>
</body>
</html>
 
 
 

 

     newxy新坐标网站http://www.newxy.net

 

 
原创粉丝点击