日期:2014-05-16 浏览次数:20449 次
(本测试项目--Helloworld下载地址:http://download.csdn.net/detail/partner4java/5045151 为了减少刷屏,一些比如POJO的get和set方法就省略了,具体查看下载包)
传统JDBC:当您进行增删改查时是不是拼写SQL到都想吐了?好不容易拼写完,想获取结果,还要再遍历封装,遇到一个字段上百的遗留表简直就疯了。
p4jorm:当使用p4jorm时,普通的CURD,也就是占据我们大部分工作的CURD就不需要再书写(真的是一行都不用写);当前端查询时我们只需要把相应数据放入formbean就可以了(如果你使用struts之类的框架formbean数据封装工作也不需要自己完成);你再多的字段也不用担心;更不会再因为忘了关闭数据库连接而被老大k了。
下面进入我们三十分钟学习时间:
(以MySQL数据库进行展示,目前也只支持了MySQL,如需要支持其他数据库,请邮件告知,会尽量添加)
首先创建一个web项目,如果你使用maven的话,请把压缩包的maven目录放入你本机(因为没有发布到公服),且加入maven依赖
<dependency> <groupId>partner4java</groupId> <artifactId>p4jorm</artifactId> <version>1.0.0</version> <exclusions> <exclusion> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> </exclusion> </exclusions> </dependency>如果没有使用maven,本架构的jar为p4jorm-1.0.0.jar,还需要依赖其他jar,你直接考入helloworld项目所有jar(p4jorm_jdbc_test\WebRoot\WEB-INF\lib)即可。
第一步:创建表
就和你平时一样创建表就ok了。
我们这里简单创建了一个user表
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `password` varchar(20) NOT NULL, `address` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;第二步:创建表对应的实体
换句话说,创建表数据的携带对象,这个也是我们平时所需要的。(你从数据库中取出了数据总要有地方存吧,总不能放到Map里吧?亲,我们可是面向对象啊)
public class User implements Serializable { private static final long serialVersionUID = -8804762279661495240L; private int id; private String username; private String password; private String address; ...
你也可以借助工具通过已创建的表,自动生成实体,详细查看文章
http://blog.csdn.net/partner4java/article/details/8560289
(我们这里是不需要JPA之类的注解,生成后,你需要删除)
第三步:添加实体注解
因为我需要对实体进行识别分析,这里您一般只需要添加两个注解
P4jEntity标注于类上、P4jId标注于对应的主键字段上
(具体注解详解,请参照附件文档doc/index.html,后面我们就不再说“请参照文档”之类的客套话,有不明白的,你第一时间就去找文档即可,文档中若解释不清晰,请邮件我)
@P4jEntity public class User implements Serializable { private static final long serialVersionUID = -8804762279661495240L; @P4jId private int id; private String username; private String password; private String address;我们说过p4jorm只需要两个注解就齐活了,也就是说现在你就可以对user表进行增删改查操作了。
第四步:整理测试环境书写测试用例
环境:
我们在第一步文章中提到过,p4jorm目前版本需要借助spring,如果对spring ioc不是很熟悉的同学,可参照文章
http://blog.csdn.net/p