下载本文示例代码
JDBC控件是Beehive1.0中提供的访问JDBC数据源的Java控件。通过继承JDBC控件,我们根本无须关注访问数据库资源的通讯细节,只需要定义自己的业务方法,增加相应的注释来描述该继承子类,我们就可以非常轻松的实现企业应用中JDBC数据源的访问。 JDBC控件的所有注释在org.apache.beehive.controls.system.jdbc.JdbcControl接口中定义,Beehive编译器在编译时将检查这些注释是否使用正确。 本节中首先将通过一个简单的例子来演示如何通过继承JDBC控件来访问JDBC数据源,完成一个数据表的增加、删除、修改、查询等业务逻辑,随后将介绍如何使用JDBC控件访问JDBC数据源的更多技巧。 本文中所有例子的源代码可以通过下载资源区的链接下载。 本节中所有演示例子对应的JDBC数据源均为MySQL数据库。 第一个JDBC控件的例子 接下来的这段例子将演示如何通过继承JDBC控件来完成JDBC数据源的访问,实现JDBC数据源中一个数据表中记录增加、删除、修改和查询的业务逻辑。 在演示例子中,为了保证演示的简洁,我们使用JDBC直接连接到数据库,而没有使用通常访问数据库所采用的DataSource技术。 建立数据表 在本地MySQL数据库的Demo数据库实例中按照如下DDL建立相应的数据表。
create table demo( id int(5) primary key auto_increment, name varchar(20) not null default '', value varchar(20) not null default ''); 建立表征Demo对象的JavaBean 创建新的应用目录,然后创建表征Demo对象的JavaBean 清单1 src\org\vivianj\beehive\controls\examples\controls\beans\ Demo.java
1. package org.vivianj.beehive.controls.examples.beans;2.3.4. /**5. * Demo 用于表征Beehive JDBC控件例子中的Demo对象6. */7. public class Demo implements java.io.Serializable{8. private int id;9.10. private String name;11.12. private String value;13.14. public int getId() {15. return id;16. }17.18. public void setId(int id) {19. this.id = id;20. }21.22. public String getName() {23. return name;24. }25.26. public void setName(String name) {27. this.name = name;28. }29.30. public String getValue() {31. return value;32. }33.34. public void setValue(String value) {35. this.value = value;36. }37.38. } 继承JDBC控件,增加自己的业务方法 清单2 src\org\vivianj\beehive\controls\examples\controls\ DemoMySQLControl.java
1. package org.vivianj.beehive.controls.examples.controls;2.3. import org.apache.beehive.controls.api.bean.ControlExtension;4. import org.apache.beehive.controls.system.jdbc.JdbcControl;5. import org.vivianj.beehive.controls.examples.beans.Demo;6.7. /**8. * DemoMySQLControl 用于封装访问MySQL数据库中的Demo数据9. 表的所有业务逻辑10. * 包括新增、删除、修改、根据id查找对应的记录、查找所有Demo11. 数据表中的记录、根据条件查找所有数据表中的记录12. * 数据库访问时根据参数从DriverManager中获取数据库连接13. */14.15. @ControlExtension16. @JdbcControl.ConnectionDriver(17. databaseDriverClass = "org.gjt.mm.mysql.Driver",18. databaseURL = "jdbc:mysql://localhost/estore ",19. userName = “root”, password = “root”)20. public interface DemoMySQLControl extends JdbcControl {21. /**22. * 向数据表demo中增加新的记录23. *24. * @param demo25. * 新增加的Demo对象26. */27. @SQL(statement = "insert into demo(name,value)28. values({demo.name},{demo.value})")29. public void createDemo(Demo demo);30.31. /**32. * 修改数据表demo中demo.id对应记录的name和value信息33. *34. * @param demo35. * 被修改的Demo对象36. */37. @SQL(statement = "update demo set name={demo.name},38. value={demo.value} where id={demo.id}")39. public void updateDemo(Demo demo);40.41. /**42. * 删除数据表demo中demoId对应的记录43. *44. * @param demoId45. * 被删除的Demo对象的id属性46. */47. @SQL(statement = "delete from demo where id={demoId}")48. public void deleteDemo(int demoId);49.50. /**51. * 根据demoId查找Demo数据库中对应的记录,返回对应的52. Demo对象53. *54. * @param demoId55. * 查找Demo对象的id属性56. * @return id属性为demoId的记录57. */58. @SQL(statement = "select id,name,value from demo59. where id={demoId}")60. public Demo getDemoById(int demoId);61.62. /**63. * 返回Demo数据表中所有记录集合64. *65. * @return Demo数据表中所有记录集合66. */67. @SQL(statement = "select id,name,value from demo")68. public Demo[] getDemos();69.70. /**71. *72. * @param name73. * @return74. */75. @SQL(statement = "select id,name,value from demo76. where name like {sql: name}")77. public Demo[] getDemosFilterByName(String name);78. }共5页。 1 2 3 4 5 :
JDBC控件是Beehive1.0中提供的访问JDBC数据源的Java控件。通过继承JDBC控件,我们根本无须关注访问数据库资源的通讯细节,只需要定义自己的业务方法,增加相应的注释来描述该继承子类,我们就可以非常轻松的实现企业应用中JDBC数据源的访问。 JDBC控件的所有注释在org.apache.beehive.controls.system.jdbc.JdbcControl接口中定义,Beehive编译器在编译时将检查这些注释是否使用正确。 本节中首先将通过一个简单的例子来演示如何通过继承JDBC控件来访问JDBC数据源,完成一个数据表的增加、删除、修改、查询等业务逻辑,随后将介绍如何使用JDBC控件访问JDBC数据源的更多技巧。 本文中所有例子的源代码可以通过下载资源区的链接下载。 本节中所有演示例子对应的JDBC数据源均为MySQL数据库。 第一个JDBC控件的例子 接下来的这段例子将演示如何通过继承JDBC控件来完成JDBC数据源的访问,实现JDBC数据源中一个数据表中记录增加、删除、修改和查询的业务逻辑。 在演示例子中,为了保证演示的简洁,我们使用JDBC直接连接到数据库,而没有使用通常访问数据库所采用的DataSource技术。 建立数据表 在本地MySQL数据库的Demo数据库实例中按照如下DDL建立相应的数据表。
create table demo( id int(5) primary key auto_increment, name varchar(20) not null default '', value varchar(20) not null default ''); 建立表征Demo对象的JavaBean 创建新的应用目录,然后创建表征Demo对象的JavaBean 清单1 src\org\vivianj\beehive\controls\examples\controls\beans\ Demo.java
1. package org.vivianj.beehive.controls.examples.beans;2.3.4. /**5. * Demo 用于表征Beehive JDBC控件例子中的Demo对象6. */7. public class Demo implements java.io.Serializable{8. private int id;9.10. private String name;11.12. private String value;13.14. public int getId() {15. return id;16. }17.18. public void setId(int id) {19. this.id = id;20. }21.22. public String getName() {23. return name;24. }25.26. public void setName(String name) {27. this.name = name;28. }29.30. public String getValue() {31. return value;32. }33.34. public void setValue(String value) {35. this.value = value;36. }37.38. } 继承JDBC控件,增加自己的业务方法 清单2 src\org\vivianj\beehive\controls\examples\controls\ DemoMySQLControl.java
1. package org.vivianj.beehive.controls.examples.controls;2.3. import org.apache.beehive.controls.api.bean.ControlExtension;4. import org.apache.beehive.controls.system.jdbc.JdbcControl;5. import org.vivianj.beehive.controls.examples.beans.Demo;6.7. /**8. * DemoMySQLControl 用于封装访问MySQL数据库中的Demo数据9. 表的所有业务逻辑10. * 包括新增、删除、修改、根据id查找对应的记录、查找所有Demo11. 数据表中的记录、根据条件查找所有数据表中的记录12. * 数据库访问时根据参数从DriverManager中获取数据库连接13. */14.15. @ControlExtension16. @JdbcControl.ConnectionDriver(17. databaseDriverClass = "org.gjt.mm.mysql.Driver",18. databaseURL = "jdbc:mysql://localhost/estore ",19. userName = “root”, password = “root”)20. public interface DemoMySQLControl extends JdbcControl {21. /**22. * 向数据表demo中增加新的记录23. *24. * @param demo25. * 新增加的Demo对象26. */27. @SQL(statement = "insert into demo(name,value)28. values({demo.name},{demo.value})")29. public void createDemo(Demo demo);30.31. /**32. * 修改数据表demo中demo.id对应记录的name和value信息33. *34. * @param demo35. * 被修改的Demo对象36. */37. @SQL(statement = "update demo set name={demo.name},38. value={demo.value} where id={demo.id}")39. public void updateDemo(Demo demo);40.41. /**42. * 删除数据表demo中demoId对应的记录43. *44. * @param demoId45. * 被删除的Demo对象的id属性46. */47. @SQL(statement = "delete from demo where id={demoId}")48. public void deleteDemo(int demoId);49.50. /**51. * 根据demoId查找Demo数据库中对应的记录,返回对应的52. Demo对象53. *54. * @param demoId55. * 查找Demo对象的id属性56. * @return id属性为demoId的记录57. */58. @SQL(statement = "select id,name,value from demo59. where id={demoId}")60. public Demo getDemoById(int demoId);61.62. /**63. * 返回Demo数据表中所有记录集合64. *65. * @return Demo数据表中所有记录集合66. */67. @SQL(statement = "select id,name,value from demo")68. public Demo[] getDemos();69.70. /**71. *72. * @param name73. * @return74. */75. @SQL(statement = "select id,name,value from demo76. where name like {sql: name}")77. public Demo[] getDemosFilterByName(String name);78. }共5页。 1 2 3 4 5 :
下载本文示例代码
快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源快速应用JDBC控件访问数据库资源
阅读(435) | 评论(0) | 转发(0) |