|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在性能方面,在windows平台下,.net网页编程可能是占强项,要是把.net网页编程放在sun开发的操作系统上去运行呢?根本就运行不了,.net网页编程对其它操作系统的支持也很弱,性能也可能比不上java。HS4JKit是HS4J的奉献项目,它的灵感来自ORM(对象干系映照),经由过程利用Annotation(注解)对范畴对象举行声明,便可完成对HS4J的挪用,省往编写和保护较为底层的模板式代码.
举例而言,在一个办理用户信息的营业场景中一般城市有:- 01classUser{02Longid;03Stringname;04Integerage;05}0607interfaceUserRepository{08voidadd(Useruser);09voiddelete(Useruser);10UserfindBy(longid);11voidupdate(Useruser);12}
复制代码 [/code][/code]- 01CREATETABLE`user_t`(02`id`int(10)unsignedNOTNULL,03`name`varchar(50)DEFAULTNULL,04`age`int(3)DEFAULTNULL,05PRIMARYKEY(`id`),06KEY`NAME`(`name`),07KEY`AGE`(`age`)08)ENGINE=InnoDB
复制代码- 若间接利用HS4J供应的API,代码会如HS4JGettingStarted的示例一样,形式化的反复.对象布局复杂还不是成绩,一旦对象字段十多个,并且还总是要变更,不可思议恶梦才方才入手下手.
复制代码 利用Kit供应的注解来声明的话,统统HS4J的挪用操纵全体将通明化:- 01@Repository(database="test",table="user_t")02interfaceUserRepository{03@HandlerSocket(INSERT)04@EntityClass(User.class)05voidadd(Useruser);06...07}
复制代码 [/code]- 01HSClienthsClient=newHSClientImpl(newInetSocketAddress(9999));02ProxyFactoryproxyFactory=newHandlerSocketProxyFactory(hsClient);03UserRepositoryproxy=proxyFactory.newProxyOf(UserRepository.class);0405proxy.add(newUser(1L,"killme2008",18));0607hsClient.shutdown();
复制代码- 抛开需要的初始化和烧毁的代码,除一行必需的营业代码没有任何过剩的.
复制代码 这里没有设置表的列(Columns),而是经由过程EntityClass来告知Kit默许利用User的一切字段映照为表的一切列,条件是User的字段名与表列名分歧.
若列名与字段名没法分歧的时分,能够ColumnName来声明:
- 利用ResultIterator<User>作为前往值范例,实在目标是为了复杂的封装ResultSet;
- 利用Operator对参数id举行了注解,告知HS4J对id利用EQ操纵.
查询场景一般会有分页的需求,这就会利用到Offset和Limit两个注解:修正多值的情形下,请包管参数声明的按次和Columns界说的按次分歧:Java到底会发战成什么样,让我们拭目以待吧,我始终坚信着java会更好。以上都是俺个人看法,欢迎大家一起交流. |
|