怎样将单机版的管理信息系统转换成C/S结构? 用Java+Access做的一个信息管理系统,需要将其放在局域网上使用,请问有什么比较简单的方法可以转换?望高手指点! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 access可以通过IP访问吗?没试过,你可以考虑将数据库转为mysql 首先指出一下你的错误,不是C/S 而应该是B/S.没有什么特别简单的方法。只是你以前的那些SQL语句还可以用。其他的都得要改。1.页面都是需要你从新做的。等于是把你的C/S操作界面全换成了B/S的网页。2.要考虑数据同异步问题。如一个表当什么时候是只能有一个人来改的。总之和做个新的系统差不多吧。 放在局域网跟用不用C/S结构有什么关系?用B/S不是很好吗? 倒,别人放局域网上用一定要b/s吗??和access最接近的是mssql,改动的地方最少。只要把数据库连接字符串改一下就好,如果你在配置文件里面的话程序不用改。msssql放到局域网上的机器上就可以了。另外为了防止读脏数据,更新丢失问题,需要在每个表中加入modifiedtime,在update语句中加入where modifiedtime=xxxx,xxxx是你上次取数据的值,大致这样,改动不是很多 恩。是的。要用B/S 的。这样大家的数据才能一起操作。程序才能一起更新(当然webStart 是可以。但是没用过)你要是用C/S 数据怎么汇总。直接靠吗? 数据库服务器放在192.168.0.5上jdbc连接字符串上localhost改成192.168.0.5,每个用户的机器上部署应用程序不可以吗,为什么非要转成b/s的 当然可以通过改数据库的连接的方式达到对统一个库的操作。但是你想过数据同步的问题吗?多个人对表中的一个状态进行更改时,你怎么搞?锁定一个表,其他人等?再者说你程序升级了,还要一个一个的给局域网中的每台机子更新。是很痛苦的。这个正是B/S的优势所在啊。客户端有个IE就Ok。 我在前面已经说过了另外为了防止读脏数据,更新丢失问题,需要在每个表中加入modifiedtime,在update语句中加入where modifiedtime=xxxx,xxxx是你上次取数据的值,大致这样,改动不是很多就算你用b/s实现没有这个问题了,你自己想一下吧。为什么你看csdn帖子的时候明明没有回帖等你回帖成功以后却发现N多人已经回帖了?安全的系统应该提示你,你的数据已经过期了,请刷新新的数据再次提交。这是社区,为所谓的。 至少用B/S可以用同步的机制很好的解决。因为所有的数据操作的请求都是通过一种方式来处理,只有一个入口。不像你说的那种每个客户端都能操作数据库。由于只有服务器上的Dao能操作数据库,就可以用对象锁了。如:Object rebuildTreeLock = new Object();//对象锁private void rebuildCourseNodeTreeCode(String courseId,CourseNode parentNode){ synchronized (this.rebuildTreeLock) { _rebuildCourseNodeTreeCode(courseId, parentNode); } //重构完成 } private void _rebuildCourseNodeTreeCode(String courseId,CourseNode courseNode){ CourseNode node = courseNode; String treeCode = node==null?"":node.getTreeCode(); List<CourseNode> nodes = this.getCourseNodeChildren(courseId, node==null?null:node.getId()); int index = 0; if(nodes!=null)for(CourseNode child : nodes){ index++; String nTreeCode = treeCode + ("0000"+index).substring(String.valueOf(index).length()); child.setOrdering(index*100); child.setTreeCode(nTreeCode); this.courseDao.updateCourseNodeTreeCodeInfo(child); this._rebuildCourseNodeTreeCode(courseId, child); } } 如何在path中设置JMF动态库的路径 Exception in thread "main" java.lang.NullPointerException jsp+oracle 前途怎么样? 一个Thread运行完成后怎么重新启动? java程序 菜菜的问下,JDK6是不是不支持范型啊? 求解 我写的APPLET传到网上后,在我机器上浏览就行,在别人的机器上除了一片灰之外就出不来! [求助]JBuilder中引用问题(初级) 怎样用script实现某段html随滚动条滚动的效果?最好能给源代码?或者给出能看到源代码的链接也可以 最基础的问题,不好意思啊 求助 !!!
没有什么特别简单的方法。只是你以前的那些SQL语句还可以用。
其他的都得要改。
1.页面都是需要你从新做的。等于是把你的C/S操作界面全换成了B/S的网页。
2.要考虑数据同异步问题。如一个表当什么时候是只能有一个人来改的。
总之和做个新的系统差不多吧。
倒,别人放局域网上用一定要b/s吗??和access最接近的是mssql,改动的地方最少。只要把数据库连接字符串改一下就好,如果你在配置文件里面的话程序不用改。msssql放到局域网上的机器上就可以了。另外为了防止读脏数据,更新丢失问题,需要在每个表中加入modifiedtime,在update语句中加入where modifiedtime=xxxx,xxxx是你上次取数据的值,大致这样,改动不是很多
你要是用C/S 数据怎么汇总。直接靠吗?
数据库服务器放在192.168.0.5上
jdbc连接字符串上localhost改成192.168.0.5,每个用户的机器上部署应用程序不可以吗,为什么非要转成b/s的
多个人对表中的一个状态进行更改时,你怎么搞?锁定一个表,其他人等?再者说你程序升级了,
还要一个一个的给局域网中的每台机子更新。是很痛苦的。这个正是B/S的优势所在啊。
客户端有个IE就Ok。
我在前面已经说过了
另外为了防止读脏数据,更新丢失问题,需要在每个表中加入modifiedtime,在update语句中加入where modifiedtime=xxxx,xxxx是你上次取数据的值,大致这样,改动不是很多就算你用b/s实现没有这个问题了,你自己想一下吧。为什么你看csdn帖子的时候明明没有回帖等你回帖成功以后却发现N多人已经回帖了?安全的系统应该提示你,你的数据已经过期了,请刷新新的数据再次提交。这是社区,为所谓的。
因为所有的数据操作的请求都是通过一种方式来处理,只有一个入口。
不像你说的那种每个客户端都能操作数据库。
由于只有服务器上的Dao能操作数据库,就可以用对象锁了。
如:
Object rebuildTreeLock = new Object();//对象锁
private void rebuildCourseNodeTreeCode(String courseId,CourseNode parentNode){
synchronized (this.rebuildTreeLock) {
_rebuildCourseNodeTreeCode(courseId, parentNode);
}
//重构完成
}
private void _rebuildCourseNodeTreeCode(String courseId,CourseNode courseNode){
CourseNode node = courseNode;
String treeCode = node==null?"":node.getTreeCode();
List<CourseNode> nodes = this.getCourseNodeChildren(courseId, node==null?null:node.getId());
int index = 0;
if(nodes!=null)for(CourseNode child : nodes){
index++;
String nTreeCode = treeCode + ("0000"+index).substring(String.valueOf(index).length());
child.setOrdering(index*100);
child.setTreeCode(nTreeCode);
this.courseDao.updateCourseNodeTreeCodeInfo(child);
this._rebuildCourseNodeTreeCode(courseId, child);
}
}