banq
2006-07-06 15:29
看看了案例,不错,问一个问题,如下代码是保存,非常类似Hib,但是没有SQl语句,如何保证Article 和数据表的字段之间映射?比如,程序怎么知道article的xxxx字段和数据表的ppp字段实际是映射的?

 public void postArticle(Article at) throws Exception {
    Engine engine = null;
    try {
      engine = BaseEngine.getForumEngine();
      engine.save(at);
      engine.commit();
    }
    catch (Exception ex) {
      engine.rollback();
      throw ex;
    }
    finally {
      engine.closeEngine();
    }
  }

santafeng
2006-07-06 16:32
> 看看了案例,不错,问一个问题,如下代码是保存,非常类似

> ib,但是没有SQl语句,如何保证Article

> 和数据表的字段之间映射?比如,程序怎么知道article的xxx

> 字段和数据表的ppp字段实际是映射的?

>

>

>

> public void postArticle(Article at) throws Exception
> {
> Engine engine = null;
> try {
> engine = BaseEngine.getForumEngine();
> engine.save(at);
> engine.commit();
> }
> catch (Exception ex) {
> engine.rollback();
> throw ex;
> }
> finally {
> engine.closeEngine();
> }
> }

目前只实现了sql关联视图对象返回,至于关联级CRUD还没有实现,不过这已经比传统的持久层作的工作少多了。关联CRUD毕竟这只是一个初期的版本,目前先把基本JDBC的API完成,JTA事务完成。大概2.0版本会以一个全新的面貌给大家批示。希望得到大家的认同与支持。

santafeng
2006-07-06 16:59
还有对于CRUD语句是框架内部把SQL自动产生的。Article 是表名字,与javabean对象名字相同。Speed框架要求表、视图设计对象逻辑设计模式结合开发,视图就是需要显示在页面上面的javabean,该javabean的名字与表名字可以不同,但属性必须与查询出来的集合属性对应。也就是如下:

engine = EngineFactory.getEngine("link2");

Query query = engine.getQuery();

list = query.getResults("select b.money1 as money from testexecute a ,test b where a.id=b.id", new Object[] {}, TestExecuteVO.class, pagin);

public class TestExecuteVO extends TestExecute{

public TestExecuteVO() {

}

private Integer money;

...

}

yellowicq
2006-07-06 17:08
up

kevin@jdon
2006-07-06 18:08
我现在的项目也是这样做的,基本思想和你类似,只需要用工具根据数据库生成Bean就可以了,bean和数据库表及表的字段一一对应。 在增删改查时用反射取得bean对应的表,字段等拼成sql语句。对简单的增删改提供了统一方法,程序员直接调用即可基本不用再写sql语句,复杂的查询语句还是要自己写。 查询语句的结果封装成POJO,或者动态bean.

优点是上手快,开发速度快,缺点是现在还没有处理对象之间的关系。

猜你喜欢
15Go 上一页 1 2 3 4 5 6 ... 15 下一页