用户要求能实现 通过页面 就可以创建数据库表,对基础表进行自定义表字段, 能够新加的表和字段对其进行维护(保存,修改,查询,删除)。java实体ben 是封装的 怎么给新加的表 创建pojo类。
怎么把新加的这个字段 加到pojo类里面 ??
生成的表 怎么在页面显示?? 有人以前做过吗?? 或有好的方式来解决
非常急!
怎么把新加的这个字段 加到pojo类里面 ??
生成的表 怎么在页面显示?? 有人以前做过吗?? 或有好的方式来解决
非常急!
你说的都可以实现:
我给你个思路:你吧页面的东西可以写成一个文件,这个文件就做成一个bat文件,然后让java执行bat文件往数据库写东西,sqlserver的可以能直接生成表的!这个我做过,其他的也应该可以!
页面上的东西,你肯定要有表名,数据库名,和字段,字段类型!这些你都要注意!如果用户用汉字作为表名的话,更要注意,数据库应该限定死!你可以吧数据类型作成单选按钮,然后后面弄个文本框输入长度。数据库也可以让用户选择!取得数据库的库名,表名等都可以通过jdbc拿到的返回到页面!
jdbc直接实现很麻烦,当时用struts1.1光需求和设计就花了我一个半月,代码写了一个月不过更凄惨的是,我那些代码放在一移动硬盘里面,居然TMD被偷了!害我现在每个资源都保存3份给点当时的思路(几年了,不大记得了,记得的先打出来,楼主觉得有用就参考下):
表:直接根据各个不同的数据库,调用create table 语句等等,根据用户的数据库类型来支持新增修改删除字段,比如有的数据库不支持改字段长度,有的数据库不支持删字段,然后所在表空间,PK(因为个人不喜欢FK,而且做起来比较麻烦,当时没有支持)等等都要考虑。
字段展示规则:比如有的字段是输入型,有的字段是选择型(就是下拉框),有的字段是长字符textarea,还有的是图片
页面顺序:比如有的字段占一行的半个(比如table的tr的一行分4个td,这种占两个td(字段中文名一个,字段值一个),有的占一整行(比如很长的单位地址之类),有的占几行(比如说明之类,textarea来显示)
自定义查询规则:当时做的比较简单,查询规则是配的,就是页面提供该表对应的字段中文名,操作符(>/</>=/<=/like/not like/in等常见的几个),左右括号、and/or等等来组成查询条件,然后建一表来保存所有条件及对应用户(还有考虑权限,admin的所有人可选,最终用户的自己可选别人不可见,但共享了又TMD可见)。
order by 比较好办:就是排序字段选了的,让他1。2。3标出来那个在前那个在后
分区表:没啥好说的,按定义来,分区表空间,分区字段,子分区字段(当时只做了两级分区),分区字段范围等等。
索引:一样,按定义来。分区索引也是。当然,建表权限跟你一样,只有admin有权,不是每个用户有权,每个用户只能干些自定义查询条件之类,否则乱套了希望对你有帮助。哎,顺便借此帖怀念一下我那可怜的移动硬盘!
这个怎么实现??
2、jdbc直接实现很麻烦,当时用struts1.1,调用create table 语句等等,根据用户的数据库类型来支持新增修改删除字段。
create table table(属性字段 不确定不多个,怎么实现)
http://blog.csdn.net/APOLLO_TS/archive/2009/12/28/5092398.aspxjava实体ben 是封装的 怎么给新加的表 创建pojo类。
怎么把新加的这个字段 加到pojo类里面 ??
生成的表 怎么在页面显示??这需求也不知道有什么意义?
一般商业数据库都有一个总揽,关于表和字段的。只要知道表名就可以得出表字段的信息。 也不知道你用什么数据库?还是支持任意数据库?
很多字段怎么去实现???就是怎么把这些字段加到 上面的括号里,???有人知道吗??
1.用户登录有ID的啊,每个用户保存的对应的表的查询方式也有ID的啊,基本上就是:
userID+tableID+queryID +status="自己私有" -- 用户ID,表ID,查询ID 定义一个查询方式
union
otheruserID+tableID + queryID+status =“他人共享”
union
otheruserID+tableID + queryID+status =“系统管理员创建”
就是一个权限问题而已。queryID 对应想应的查询条件细节,比如字段组合orderby等等。2. create table table(属性字段 不确定不多个,怎么实现)
记得当时还做了个step by step的界面呢。。
s1:表英文名,中文名,说明等等跟表相关的。(同时还提供copy from,就是从已经定义好的表里面,copy一个过来,那么因为我字段名都保存在一个表中,就可以load到结构到页面给他看了,但英文表名必须得改)
s2:添加字段,把要的字段一个个加进去
s3:形成select 语句,并展示预览页面(根据我上面说的字段页面展现方式来排页面)
s4:一个存储过程,把以上的都弄掉。
管理表的页面
提供改字段、加索引,重建索引,删索引,隐藏字段等等。