【自然框架】之鼠标点功能现(一):单表的增删改查(即上次5月23日活动的一个主题)【Demo、源码下载】

 

简单的需求,点点鼠标就可以了,那么复杂的需求呢?还是要写代码,哈哈。

不要被我误导了哦,关于什么时候写代码的问题,请看这里:http://www.cnblogs.com/jyk/archive/2009/06/21/1507594.html

 

 
单表的增删改查

 

      我有一个梦想,那就是不用敲代码,只需要点点鼠标,就可以实现客户的需求。

      可能您会说这是不可能的,但是有个梦想总没有错吧。我就是想实现我的这个梦想,虽然可能一辈子都达不到,但是我还想努力一下子,不想让自己后悔。如果不给自己找一个目标的话,那么活着是不是太没有意思了呢?编码是一种乐趣,那么怎么做才能够是一种乐趣,而不是应付差事呢?

      好在现在已经获得了一点点成绩——单表的增删改查,这种情况已经达到了点点鼠标就可以完成的程度。独乐乐不如众乐乐,拿出来与大家分享。(有源码下载)

      我们举一个用烂的例子吧,新闻表的增删改查。下面的功能都是给程序员用的,不是给客户用的。

 

实现步骤:
1、 编写数据库文档。Excel 格式的一个文档,这个还是需要键盘的,只用鼠标有点困难。不过这个应该属于设计阶段,不属于编码阶段。至于时间,那就可长可短了。
【表设计】

字段名 中文名 类型 大小 默认值 允许空 说明
News_Info 新闻表          
NewsID 主键 int 4 0 主键,自增
NewsTitle 新闻名称 nvarchar 30 _ 0 新闻名称
Content 新闻内容 ntext 16 _ 0 新闻内容
AddedDate 添加日期 datetime 8 GetDate() 0 添加日期
AddedUser 添加人 nvarchar 10 _ 0 添加人
Hits 人气 int 4 0 0 人气

 

2、 打开网页,输入网址,就是打开我的那个配置信息维护程序,也就是大家可以下载的Demo。用户名:admin,密码:123。(页面很难看,没有做任何的修饰)
【表1:登陆页面】

 

3、 进入“数据文档、建表”节点,我们可以看到Excel里面的记录的表名,在这里可以查看文档里的表、字段的说明。也可以根据文档里的内容在SQL Server 里面建立表,可以根据文档里的内容,添加配置信息到 Manage_Table和Manage_Columns表。做好基础工作,为后面的步骤做好准备。(1分钟以内)
【表2:查看表、字段】

【表3:添加表的扩展信息】(已经添加过的话,修改表信息)

【表4:添加字段的扩展信息】(已经添加过的不再添加,也不修改)

4、 打开“功能节点管理”节点,添加一个功能节点。不要看这里的控件这么多,就感觉很麻烦,其实只需要添加“节点名称”、“网址”即可,其他字段都是自动计算出来的,您看一看没有问题就可以直接使用了。这个功能刚作出来不久,没有经过长期的测试,所以有几个控件没有隐藏起来,不隐藏起来就可以直接看到内容是否正确。等确定没有问题后,可以把几个控件隐藏起来的。(1-2分钟)
【表5:功能节点列表】

【表6:添加节点】

 

5、 打开“分配配置信息”节点,这里可以做各种设置。
【表7:列表】

 

6、 单击“添加列表信息”按钮,打开页面,设置列表需要的信息,比如查看数据的表、视图,标题名称,排序字段、页记录数,添加、修改、删除用表等信息。(1-2分钟)
【表8:添加列表信息】

 

7、 单击“功能按钮维护”按钮,打开“节点里的功能按钮”页面,这里可以添加、修改需要的功能按钮。(1-2分钟)
【表9:功能按钮】

 

8、 单击“选择列表、表单的字段”按钮,打开选择字段的页面,选择列表、表单、查询里面需要的字段。(1分钟以内)
【表10:选择字段】

 

9、 设置列表、表单、查询条件。单击“列表字段维护”、“查询字段维护”、“表单字段维护”按钮,就可以进入相关的页面,对列表、表单、查询进行具体的调整。(0.5-3分钟)
【表11:调整列表】

 

【表12:修改查询条件】

 

【表13:调整表单布局】

 

10、 修改表单里的控件。因为根据文档里的内容自动生成的配置信息可能不能满足需求,比如“新闻内容字段”,只能自动生成单行文本,这个用于添加新闻显然是不适合的,那么就需要做一下适当的变化,我们可以打开“修改配置信息”节点,选择“News_Info”表,单击“查看字段”按钮。打开“修改字段的描述信息”页面,在这里我们可以对字段的配置信息进行修改。(1-3分钟)
【表14:字段信息列表】

 

【表15:修改字段配置信息】

 

 

11、 OK,现在可以添加新闻了。刷新左面的树,我们就会看到刚刚添加的这个节点,点击进入,点击添加按钮,看到表单了吧,填内容,然后保存。看到新添加的记录了没?然后修改记录,删除记录。
【表16:新闻管理】

 

12、 与角色的结合。添加了新的功能节点,又添加了按钮,那么角色管理会是什么样子的呢?添加新的功能节点、按钮之后,在添加角色的页面里,这些新添加的就会自动的出现。您可以根据客户的情况来修改角色,以便让可以使用该功能的用户可以使用新增加的功能。
【表17:添加角色】

 

      从第四步开始(选择字段的除外),表格都是MyGird(我的显示数据的控件)绘制出来的,查询都是查询控件(MyFind)绘制出来的,表单也都是表单控件绘制出来的,当然也少不了QuickPager了。我只需要拖拽这几个控件就可以了。而且列表页面大都是dataList.aspx,表单页面有一半是dataForm.aspx 页面。

FAQ
1、 字段名变了怎么办?
      这个简单,我们可以用【表15:修改字段配置信息】这里的功能来修改字段名,这里不仅会修改配置信息里的字段名,而且还会同时修改数据库里的表的字段名、数据库说明文档(Excel)里面的字段名称。这样就可以“强制”三者的同步更新

2、 添加字段了怎么办?
      这也简单,我们可以【表2:查看表、字段】在这里面,添加数据库里的表里的字段,然后在添加字段的配置信息,在后面的步骤就都一样了。

3、 删除字段了怎么办?
      只要删除相关的配置信息即可。

4、 为什么不用实体类呢?
      这个……。我们可以看【表10:选择字段】,当我们点了“选择”之后,右面出现了表的字段,那么这个和实体类是不是挺像的呢?这个是从表的角色来看的,表与字段。
      还可以看【表11:调整列表】、【表12:修改查询条件】、【表13:调整表单布局】,这里就是从另外的角度来看了。从列表的角度,看看列表里面显示的是那些字段;从查询的角度,看看有哪些字段,都是什么查询方式;从表单的角度看,一个表单里需要哪些字段。

      我觉得在一些情况下,这个比实体类好用多了,当然对于复杂的情况还是实体类好用。我也正在向如何让表单返回一个实体类出来。

 

5、 复杂的如何处理?
      这个就不好说了,因为复杂也有许多情况,比如一般复杂的,比较复杂的,很复杂的,超级复杂的。这个一句话是说不明白的。这里说的就是一个最简单的情况,以后还会说其他的情况。我的原则:简单的情况,简单处理;复杂情况特殊处理

      如果您心急的话,可以下载Demo,看一下我的这些管理配置信息的写法,就是上面的那些图里的功能。因为这些都是用的类似的方式实现的。都是表单控件,查询控件等。

6、 你的权限通用吗?
      这个我比较无语了,写了这么多,看到的回复最郁闷的就是这个。这里演示了添加节点和按钮的方式,添加完毕之后,在“添加角色”里面也可以立即看到新添加的节点和按钮。操作步骤也说了,Demo也提供下载,也有源码。大家自己看吧,如果你说这个是不通用的,那么就不通用好了。

 

Demo(包括源码)下载:http://www.cnblogs.com/jyk/archive/2009/06/06/1497616.html

 

时间: 2024-10-26 05:52:49

【自然框架】之鼠标点功能现(一):单表的增删改查(即上次5月23日活动的一个主题)【Demo、源码下载】的相关文章

【框架】[Hibernate]利用Hibernate进行单表的增删改查-Web实例

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 前面两篇博客已经将Hibernate的基础知识讲解得差不多了,差不多到写实例的时候了. 本篇只用hibernate进行单表的增删改查. 应用Hibernate,对students表进行增删改查. service层和DAO层,我都是直接写实现类了(因为这里主要是演示一下Hibernate的使用),如果是开发项目,注意一定要写接口! 准备数据库: 首先准备一个students表: cr

jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】_jquery

本文实例讲述了jQuery实现响应鼠标事件的图片透明效果.分享给大家供大家参考,具体如下: 实现的思想: 1.当鼠标放在图片上面的时候触发mouseover mouseenter两个事件(图片变得透明) 2.当鼠标离开图片的时候触发mouseleave mouseout两个事件(图片变为不透明) 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or

jQuery实现对无序列表的排序功能(附demo源码下载)_jquery

本文实例讲述了jQuery实现对无序列表的排序功能.分享给大家供大家参考,具体如下: 利用jQuery对无序列表排序的原理是:获取到无序列表中的所有列表项,并转成数组形式,使用JavaScript函数对其进行排序后再次输出.其中使用到的jQuery函数有ready().get().text().each().append()和JavaScript函数sort(). 1.jQuery函数介绍 (1)jQuery函数get()--获取匹配元素集合 该函数取得所有匹配元素的一种向后兼容的方式(不同于j

Android实现软件列表的点击启动另外一个程序功能【附demo源码下载】_Android

本文实例讲述了Android实现软件列表的点击启动另外一个程序功能.分享给大家供大家参考,具体如下: 目前面世的许多软件中有这么一个功能:设备中安装了哪些软件,他们会以一个软件列表清单的形式向用户展示出来. 今天我们就来实现这一功能: 运行环境: motorola defy+ 系统2.3.6 主要 API : PackageInfo,PackageManager,LayoutInflater,ApplicationInfo PackageManger类,它的主要职责是管理应用程序包. 通过它,我

Android程序自动更新功能模块的实现方法【附完整demo源码下载】_Android

本文实例讲述了Android程序自动更新功能模块的实现方法.分享给大家供大家参考,具体如下: 在程序启动的时候检测服务器上有没有对应版本更新,如果有更新,提示用户是否更新. 在程序启动的时候首先调用更新模块检测服务器上存放的版本号跟当前程序的版本号如果大于当前版本号,弹出更新对话框,如果用户选择更新,则显示当前更新状态,然后替换当前程序. 程序调用版本更新检测: private UpdateManager updateMan; private ProgressDialog updateProgr

Android编程实现TextView垂直自动滚动功能【附demo源码下载】

本文实例讲述了Android编程实现TextView垂直自动滚动功能.分享给大家供大家参考,具体如下: 在做android 应用的开发的时候,横向滚动或者要做出跑马灯的效果很简单,textview本身的属性就支持,只要设置准确就会滚动,开发起来比较简单,但是textview 不支持垂直滚动,那么垂直滚动就需要自己来实现了,很多网友提供的垂直滚 动方案都是千篇一律,使用ScrollView来进行滚动,但是都不完美,做起来有些别扭.有一位网友给出的歌词的滚动思路明确,能从根本上解决问题,因此我实现的

Android编程实现的微信支付功能详解【附Demo源码下载】

本文实例讲述了Android编程实现的微信支付功能.分享给大家供大家参考,具体如下: 最近公司弄Ionic框架,项目中需要微信支付,无奈,把我调过去弄,期间也是几近崩溃,好在皇天不负有心人,在看别人的文档,终于是在项目中集成了微信支付,下面作为一个小白的我,想要把我的经验分享给大家,希望对大家有所帮助. 先给一个可用的demo吧(运行前先看txt文件) demo代码点击此处本站下载. 这个demo是基于eclipse开发的,博主也在Android Studio开发过微信支付,原理都是一样的,大家

jQuery实现带延时功能的水平多级菜单效果【附demo源码下载】_jquery

本文实例讲述了jQuery实现带延时功能的水平多级菜单效果.分享给大家供大家参考,具体如下: 运行效果图如下: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999

Zend Framework实现留言本分页功能(附demo源码下载)_php实例

本文实例讲述了Zend Framework实现留言本分页功能的方法.分享给大家供大家参考,具体如下: 这里的分页功能运用了..Zend_Paginator这个组件来实现留言本分页...这里我也是参考PHPCHINA里一位PHPer写的这方面的教程 我实现的坏境以及项目的目录安排是在第三篇教程的基础上写的..如果有朋友不明白目录什么的安排..请用ZF1.6.0以上.请自己前面的文章里找一下这篇教程...我在这里就不多说什么了..谢谢.. 第一步:在我们的控制器里面,也就是indexControll