CustomerDAOImpl.java
上传用户:hgs128
上传日期:2007-02-03
资源大小:166k
文件大小:6k
源码类别:

百货/超市行业

开发平台:

WINDOWS

  1. /*
  2.  * Created on 2004-4-1
  3.  *
  4.  * To change the template for this generated file go to
  5.  * Window - Preferences - Java - Code Generation - Code and Comments
  6.  */
  7. package dao;
  8. import javax.ejb.CreateException;
  9. import javax.ejb.EJBException;
  10. import javax.ejb.FinderException;
  11. import javax.ejb.RemoveException;
  12. import bmp.CustomerBean;
  13. import bmp.CustomerPK;
  14. import javax.naming.InitialContext;
  15. import javax.sql.DataSource;
  16. import java.sql.Connection;
  17. import java.sql.PreparedStatement;
  18. import java.sql.ResultSet;
  19. import java.sql.SQLException;
  20. /**
  21.  * @author 28-9
  22.  *
  23.  * To change the template for this generated type comment go to
  24.  * Window - Preferences - Java - Code Generation - Code and Comments
  25.  */
  26. public class CustomerDAOImpl implements CustomerDAO{
  27. private DataSource jdbcFactory;
  28. public CustomerDAOImpl(){
  29. super();
  30. }
  31. /* (non-Javadoc)
  32.  * @see bmp.CustomerDAO#init()
  33.  */
  34. public void init() {
  35. System.out.println("Entering CustomerDAOImpl.Init()");
  36. InitialContext c=null;
  37. if(this.jdbcFactory==null){
  38. try {
  39. c=new InitialContext();
  40. this.jdbcFactory=(DataSource)c.lookup("java:comp/env/jdbc/OracleDS");
  41. } catch (Exception e) {
  42. System.out.println("Error in CustomerDAOImpl.Init()");
  43. }
  44. }
  45. System.out.println("Leaving CustomerDAOImple.Init()");
  46. }
  47. /* (non-Javadoc)
  48.  * @see bmp.CustomerDAO#load(bmp.CustomerPK, bmp.CustomerBean)
  49.  */
  50. public void load(CustomerPK pk, CustomerBean ejb) throws EJBException {
  51. System.out.println("Entering CustomerDAOImpl.load()");
  52. Connection conn=null;
  53. PreparedStatement ps=null;
  54. ResultSet rs=null;
  55. try {
  56. conn=jdbcFactory.getConnection();
  57. String queryString="select customerid,userid,firstname,lastname,address,phone,"+
  58. "shareholder_stat from customer where customerid=?";
  59. ps=conn.prepareStatement(queryString);
  60. ps.setString(1, pk.getCustomerID());
  61. rs=ps.executeQuery();
  62. System.out.println("QueryString is "+queryString);
  63. if(rs.next()){
  64. int count=1;
  65. ejb.setCustomerID((rs.getString(count++)).trim());
  66. ejb.setUserID((rs.getString(count++)).trim());
  67. ejb.setFirstName((rs.getString(count++)).trim());
  68. ejb.setLastName((rs.getString(count++)).trim());
  69. ejb.setAddress((rs.getString(count++)).trim());
  70. ejb.setPhone((rs.getString(count++)).trim());
  71. ejb.setShareholderStatus((rs.getString(count++)).trim());
  72. }
  73. } catch (SQLException e) {
  74. throw new EJBException("Row for id "+pk.getCustomerID()+"not found in database"+e);
  75. }finally{
  76. try{
  77. rs.close();
  78. ps.close();
  79. conn.close();
  80. }catch(Exception e){
  81. }
  82. }
  83. System.out.println("Leaving CustomerDAOImpl.load()");
  84. }
  85. /* (non-Javadoc)
  86.  * @see bmp.CustomerDAO#store(bmp.CustomerBean)
  87.  */
  88. public void store(CustomerBean ejb) throws EJBException {
  89. System.out.println("Entering CustomerDAOImpl.store()");
  90. Connection conn=null;
  91. PreparedStatement ps=null;
  92. ResultSet rs=null;
  93. try {
  94. conn=jdbcFactory.getConnection();
  95. String updateString="update customer set userid=?,firstname=?,lastname=?,"+
  96. "address=?,phone=?,shareholder_stat=? where customerid=?";
  97. ps=conn.prepareStatement(updateString);
  98. ps.setString(1, ejb.getUserID().trim());
  99. ps.setString(2, ejb.getFirstName().trim());
  100. ps.setString(3, ejb.getLastName().trim());
  101. ps.setString(4, ejb.getAddress().trim());
  102. ps.setString(5, ejb.getPhone().trim());
  103. ps.setString(6, ejb.getShareholderStatus().trim());
  104. int count=ps.executeUpdate();
  105. System.out.println("Update String is "+updateString);
  106. } catch (Exception e) {
  107. e.printStackTrace();
  108. }finally{
  109. try {
  110. ps.close();
  111. rs.close();
  112. conn.close();
  113. } catch (Exception e) {
  114. }
  115. }
  116. System.out.println("Leaving CustomerDAOImpl.store()");
  117. }
  118. /* (non-Javadoc)
  119.  * @see bmp.CustomerDAO#remove(bmp.CustomerPK)
  120.  */
  121. public void remove(CustomerPK pk) throws RemoveException, EJBException {
  122. }
  123. /* (non-Javadoc)
  124.  * @see bmp.CustomerDAO#create(bmp.CustomerBean)
  125.  */
  126. public CustomerPK create(CustomerBean ejb) throws CreateException, EJBException {
  127. return null;
  128. }
  129. /* (non-Javadoc)
  130.  * @see bmp.CustomerDAO#findByPrimaryKey(bmp.CustomerPK)
  131.  */
  132. public CustomerPK findByPrimaryKey(CustomerPK pk) throws FinderException {
  133. System.out.println("Entering CustomerDAOImpl.findByPrimaryKey()");
  134. Connection conn=null;
  135. PreparedStatement ps=null;
  136. ResultSet rs=null;
  137. try {
  138. conn=jdbcFactory.getConnection();
  139. String queryString="select customerid from customer where customerid=?";
  140. ps=conn.prepareStatement(queryString);
  141. String key=pk.getCustomerID();
  142. ps.setString(1, key);
  143. rs=ps.executeQuery();
  144. boolean result=rs.next();
  145. if(result){
  146. System.out.println("Primary Key found.");
  147. }
  148. } catch (Exception e) {
  149. e.printStackTrace();
  150. throw new FinderException("Inside CustomerDAOImpl.findByPrimaryKey()"+
  151. "following primarykey "+pk.getCustomerID()+" not found.");
  152. }finally{
  153. try {
  154. rs.close();
  155. ps.close();
  156. conn.close();
  157. } catch (Exception e) {
  158. }
  159. }
  160. System.out.println("Leaving CustomerDAOImpl.findByPrimaryKey()"+pk.getCustomerID());
  161. return pk;
  162. }
  163. /* (non-Javadoc)
  164.  * @see bmp.CustomerDAO#findByUserID(java.lang.String)
  165.  */
  166. public CustomerPK findByUserID(String userID) throws FinderException {
  167. System.out.println("Entering CustomerDAOImpl.findByUserID()");
  168. Connection conn=null;
  169. PreparedStatement ps=null;
  170. ResultSet rs=null;
  171. CustomerPK pk=new CustomerPK();
  172. try {
  173. conn=jdbcFactory.getConnection();
  174. String queryString="select customerid from customer where userid=?";
  175. ps=conn.prepareStatement(queryString);
  176. ps.setString(1, userID);
  177. rs=ps.executeQuery();
  178. boolean result=rs.next();
  179. if(result){
  180. pk.setCustomerID(rs.getString(1));
  181. System.out.println("Primary Key found: "+pk.getCustomerID());
  182. }
  183. } catch (Exception e) {
  184. e.printStackTrace();
  185. throw new FinderException("Inside CustomerDAOImpl.findbyUserID()");
  186. }finally{
  187. try {
  188. rs.close();
  189. ps.close();
  190. conn.close();
  191. } catch (Exception e) {
  192. }
  193. }
  194. System.out.println("Leaving CustomerDAOImpl.findByUserID() with key "+pk.getCustomerID());
  195. return pk;
  196. }
  197. }