mysql快速开发_LLBL Gen + MySQL 快速开发

LLBL Gen + MySQL 快速开发

MySQL 安装配置

安装MySQL, 使用查询分析器连接数据库服务器

7808ed6cfb2033c70c8ca4a9aaad3658.png

创建数据库CTU, 并且创建新表Agent

19565acbbf32200d40b17e5cf3d0e8ee.png

给数据表Agent添加三笔数据,Jack,Tony,Charles

56109d4976e668bc9ee01d9ad1c9f926.png

数据库设计的任务到此为止,记得给每个表添加主键。这里设置的主键是Name

LLBL Gen 设计实体模型

启动LLBL Gen 3.1, 创建新的项目,注意选择Target为LLBL Gen框架

82721875f05b9a770c540e56c006e0bf.png

在Category Explorer窗口中,右键,添加新连接

05488b14795c8e4801752bd256dc5430.png

请在context菜单中选择Reverse-engineer Tables to Entity Definitions

edbf3a6effa5f2b27b9c98176fc13612.png

这些表就会自动mapping到实体集合中

a79f280771a90e42c882761cb8988ec5.png

从图中可以看到,已经发现了Agent表

如果需要进一步的编辑属性与字段的映射关系,请用Edit 菜单,打开窗体

83425f8755a6b5e0e23fe07b458b2143.png

在这里,可以设置关系,设置映射的名称。

F7,可以开始生成代码

e0568e6aee89e358fc4e07c1c1c3d472.png

默认情况下,会生成2个项目文件

ea3c8d0cbfb62b3b0bbd5d65519bc63e.png

从名称中可以看出,一个是数据库无关的,另一个是做数据访问的。以此的原理是我们在生成数据库时,选择Adapter模式,而不是SelfServicing模式.

启动程序

在Visual Studio中打开生成的代码,并且添加测试项目(Console)

解决方案浏览器中现在有三个项目Main是我们用来测试数据访问的

d4a6181f8dfb4e60fed942b93822a11e.png

再来看一下Main方法,只有简单的几行程序,也就是一个最简单的测试程序

8eaea0c787758d007347ff6fe3faaf05.png

它会生成SQL语句 SELECT Name , Postion , Description FROM agent

结论 Conclusion

1. ORM的好处是跨数据库平台,独立于数据库厂商。以MySQL为例子,是为证明,用SQL Server写的项目,可以很轻易的就转移到MySQL数据库平台。

近期会放出LLBL Gen + Oracle的快速开发手册。

2. 到目前为止,SQL Server有几个稳定好用的版本:SQL Server 2000,SQL Server 2005,SQL Server 2008,SQL Server 2008 R2, 还有SQL Express系列,如果要考虑数据的迁移,把数据从一个数据库搬到另一个数据库,请把这些数据库看成不同的产品系列。在这几个产品系列中迁移数据实在是痛苦,比如SQL Server 2005的数据库一旦被SQL Server 2008附加过,就再也无法在SQL Server 2005 Attach。2000和2005之间也会遇到这种尴尬。

6670c209f77b258609d6028608b21138.png

考虑通用性,推荐用SQL Server 2005。

3. 正向和反向思维

学习NHibernate时,我们就在不停的研究把映射文件(数据库字段和.NET属性)存放在哪里。那时,专家的意见是放到xml文件中,放到C#文件中不容易维护。

后来接触到商业的NHibernate设计器,它却把映射文件写到C#文件。因为这些映射全部是可视化生成的,不需要编辑。同样道理,LLBL Gen把映射文件也放到C#代码,同时也是自动生成的。

我知道NHibernate的映射文件的设置的复杂性,就已经令众多的NHibernate爱好者望而却步,无比痛苦,谈不上快速灵活的开发。

扯远一点,谈到经济,听说国际上唱衰中国楼市,大肆宣言房价必降,还有诸多的专家也如此认为,可我还听说,国际热钱还在大肆进军中国楼市,中国的城市化进程不中断,房价不太可能会降。

我要表达的意思是,两种思维,一正一反,我们要习惯。

我常说EPN框架可以快速开发,你可能要意识到这句话不全对,简单的快速开发,暗藏了巨大的复杂性在里面。快速开发有复杂性藏在幕后,出了问题,google,baidu都不太可能帮忙到你;不快不慢的开发,简单容易理解,有bug或是出了问题在网上一找就找到了,可是又做不出很多应用,代码重复,经不起需求变化。

4. LLBL Gen 是商业的ORM工具,请不要向我索取license。

当没有人可以帮忙到你的时候,可以向google,baidu求助,Just take a try.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值