随笔-26  评论-44  文章-20  trackbacks-0

我的评论

顶,写的很清楚很详细。
@sclsch
谢谢你的建议,我现在src下的已经删了,只留了web-info下的配置文件。
你的做法很好,用classpath应该定位的到,以前只看到程序里面用,没想到配置文件里也可以用它来定位。
re: easyjweb求教 开机 2008-08-30 19:16  
我明白了,自动生成的工程差个文件easyjweb-ext-1.1.jar。按官方的说法基本的应用,easyjweb-core-1.1.jar和required文件夹下的jar就够了。也不知道为什么偏偏要把扩展工具包加上去,eclipse才肯编译,哪怕源文件是最简单java文件:
package qqq;

public class Qqq {

}
re: easyJWeb+Eclipse快速入门 开机 2008-08-30 18:18  
用 easyjweb project命令生成的工程导入到eclipse后继续写程序,你试过没有?我遇到了一个问题。
re: extjs做的信息管理系统 开机 2008-08-30 08:45  
@Java爱好者
肯是没导入数据库
re: extjs做的信息管理系统 开机 2008-08-30 08:44  
@AlleNny
我firefox空白页面时占内存32M,运行程序时占内存67M,除非是老爷机,现在的机器用起来都没问题。就是刚开始的时候慢,js做的系统都是这样的。
re: extjs做的信息管理系统 开机 2008-08-30 08:35  
@Java爱好者
我邮箱 yijia_ctgu@yahoo.com.cn
你看的这里的代码是以前的,最近由于在项目中的应用,代码又增加了很多,完善了一些,尤其是操作数据库的工具做成了和具体的数据库无关的,有人说好有人说不安全,总之这算是创新吧(我自己是没发现以往有象这样做的,呵呵也许这样并不是很好吧)。代码在随笔:自己动手做试卷管理系统-操作数据库的工具 里可以看到,还有一篇随笔: js带来了改变 看了之后就明白什么是与具体的数据库无关的工具了。
@kevin
包装数据库返还的数据,Row是数据库的一行记录,set是集合的意思,Dyna好像是指延迟。

以下是摘抄别人的:
ResultSetDynaClass (Wraps ResultSet in DynaBeans)

一个很普通的DynaBean 的USER CASE就是用它来包装其他原始集合,这些集合不是以JAVABEAN的形式展示的。最常见的情况就是当你请求JDBC驱动查询SQL语句返回java.sql.ResultSet类型的记录的时候,BeanUtils提供了标准的机制来把每一行resultset转变为一个 DynaBean,参照下列:

Connection conn = ...;
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery
("select account_id, name from customers");
Iterator rows = (new ResultSetDynaClass(rs)).iterator();
while (rows.hasNext()) {
DynaBean row = (DynaBean) rows.next();
System.out.println("Account number is " +
row.get("account_id") +
" and name is " + row.get("name"));
}
rs.close();
stmt.close();

RowSetDynaClass (Disconnected ResultSet as DynaBeans)

尽管ResultSetDynaClass是一个用来展示sql查询的很好的技术(当成DynaBean),但是最大的问题就是在MVC的结构之中,我们需要离线的取出查询的所有数据,而ResultSetDynaClass必须保持和数据库相连。

RowSetDynaClass 展示了解决这个问题的不同方法。当你构造这样的实例,那些原始的数据被复制到一系列in-memory 的DynaBeans来代表这些结果。这个技术的优势是,理所当然,你可以立即关闭ResultSet(和他相连的Statement),这些操作都可以在你处理被返回的数据之前。缺点就是,你需要为复制数据所需要的性能和内存买单,而且数据的大小还得让堆内存可以适合。在许多情况下(特别是WEB APPS),这种折衷是有益处的。

额外的方便就是,RowSetDynaClass 被定义为java.io.Serializable的实现,因此它可以被序列化和反序列化。因此RowSetDynaClass展示了一种十分便利的方法来传输SQL结果到远程Java-based 客户端应用程序(比如APPLET).

基本的RowSetDynaClass使用模式如下所示:

Connection conn = ...; // Acquire connection from pool
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT ...");
RowSetDynaClass rsdc = new RowSetDynaClass(rs);
rs.close();
stmt.close();
...; // Return connection to pool
List rows = rsdc.getRows();
...; // Process the rows as desired

WrapDynaBean and WrapDynaClass



对于这个类,我也不是很懂,只是知道怎样用而已,希望我的回答会对你有帮助。
re: js带来了改变。 开机 2008-08-13 18:56  
@leekiang
多谢夸奖!
不知道他们具体是怎么做的?
re: js带来了改变。 开机 2008-08-13 18:55  
@隔叶黄莺
客户端和服务器端都是我一人做,的确与数据库交互起来很轻松。
为什么怕客户端随意修改表记录?我现在基本上快做完了,还没遇到这个问题带来了麻烦。也许是因为我做的是很小很小的项目吧。
做这样的小项目,我觉得用自己做的这个工具很简洁,不需要把时间浪费到重复性的工作上。
re: js带来了改变。 开机 2008-08-13 18:49  
@一杯清茶
是的,我尝试的是小项目,所以才敢这样做。我也只是初学者,不知道遇到大项目,到底会出什么问题?
re: 幻想sql语句 开机 2008-07-26 21:39  
我已经找到答案了:
sea_sky(××××××) 2008-07-26 12:02:24
可以的
不过"表名"和"属性名"不用加单引号''
而"属性值"要不要加单引号需要根据字段的类型而定

比如属性是char,varchar或date型,sql语句可写成:
String sql="delete from "+tableName+" where "+property+"='"+propertyName+"'";

而属性是int型,sql语句可写成:
String sql="delete from "+tableName+" where "+property+"="+propertyName;

你的sql语句失败,我估计主要是没有考虑到要不要加引号这个细节问题,稍微注意一下应该能行的~~


总结:char varchar date 之所以多加一个单引号,就像java里面的 String s="123"; 一样来表示s是个字符串而不是int。
你有Ext_JSEclipse 吗?我申请了用户名,可是不够权限下载,不知道是怎么回事.
re: Air+Ext小试一下 开机 2008-07-11 20:06  
我在Ext2.1 api里怎么看不到 Ext.sql.Connection,是版本不对吗?
典范,学习了。
为什么30后都转行?难道真的到了30后就干不动了吗?还是有其它的原因?
re: 学习java web的一点体会 开机 2008-06-09 23:15  
@ardorleo
多谢了,以后还请多多指教。
re: js菜鸟初学,请各位多指教 开机 2008-05-15 09:46  
文中:Form我以前还以为是html里面的,原来是js那一部分的。
我理解错误了,我昨天看了JS中的DOM才知道,JS可以对网页中的很多对象进行控制,通讯。FORM是HTML的,JS只是控制它,除此外,JS还可以和JAVA程序通讯,控制JAVA对象。不知道我的理解有没有错误?
JS太强大了!
re: JavaScript For Beginners(转载) 开机 2008-05-10 14:45  
谢谢了
学习了,
谢谢楼主
我好久没想过“为什么”之类的问题了,羡慕楼主能常常有这样的灵感。
好东东,顶一个
后来我有从新安装了MyEclipse,发现就正常了,突然想起,以前安装过openxava插件,它和数据库有关的,也许就是它在作怪吧。
所以,尽量不要装插件,除非你清楚这个插件的功能和使用带来了“副作用”。
re: 易博下载 开机 2007-07-11 21:08  
好东东