SEARU.ORG
当前位置:SEARU.ORG > Linux 软件 > 正文

ORM软件 Monalisa-db

这是一款全新的ORM软件(仅依赖一个jar: gson):

  • 如果你觉得hibernate难以驾驭,或许该软件正是你所想要的

  • 如果你觉得mybatis成堆的xml/mapper太繁琐,或许该软件正是你所想要的

  • 如果你觉得现有的ORM软件总有那么些不太满意的地方,或许该软件有你所想要的

  • 如果你觉得将SQL的查询结果映射成Map使用起来不太方便,该软件能帮你自动产生class

  • 如果你觉得配置型SQL语法书写起来不太方便,该软件借用JSP编辑器来书写SQL, IDE能帮助你实现代码提示

  • 如果你想尝试下新的ORM软件, 欢迎来使用!

一行代码引入数据库:

@DB(url="jdbc:mysql://127.0.0.1:3306/test" ,username="root", password="root")

一些基本的数据库操作:

//插入对象
new User().setName("zzg.zhou").setStatus(1).save();

//数据解析:data可以是: Map, json/xml字符串, JsonObject(Gson),HttpServletRequest, JavaBean
new User().parse("{'name':'oschina','status':0}").save();
new User().parse("<data> <name>china01</name><status>1</status> </data>").save();


//单表查询
User.SELECT().selectOne("name=?", "zzg.zhou");

User.SELECT().selectByPrimaryKey(1);

//select(), selectOne(), selectPage(limit,offset)...
User user = User.WHERE().name.like("zzg%").status.in(1,2,3).SELECT().selectOne();

//一般查询
Test.DB.select("SELECT * FROM user WHERE name like ?","zzg%");

Test.DB.createQuery().add("SELECT * FROM user WHERE name like ?","zzg%")
  .getList(User.class);

Query q=new Query(Test.DB);
q.add("SELECT * FROM user WHERE name like ?","zzg%")
 .add(" AND status ").in(1,2,3);


//更新操作
user.setStatus(3).update();

User updateTo=new User().setName("tsc9526");
User.WHERE().name.like("zzg%").update(updateTo);

//删除操作
user.delete();
User.DELETE().deleteAll();

Eclipse 插件使用效果:(插件下载

1. 自动生成模型类:


2. 动态SQL自动产生结果类

更多用法参考:https://github.com/11039850/monalisa-db

maven坐标:

<dependency>
	<groupId>com.tsc9526</groupId>
	<artifactId>monalisa-core</artifactId>
	<version>0.7.6</version>
</dependency>

备注:    

目前只实现了Mysql接口,其它类型的数据库后续补上

未经允许不得转载:SEARU.ORG » ORM软件 Monalisa-db

赞 (0)
分享到:更多 ()

评论 0