1 /*** $Id: JDBCTester.java,v 1.1.1.1 2004/05/18 10:50:23 mochoa Exp $*/
2 package cmd_dao.sample.common.tester;
3
4 //sql
5 import java.sql.*;
6 //dao
7 import cmd_dao.sample.common.dao.employee.EmployeeTypes;
8 //dto
9 import cmd_dao.sample.common.dto.EmployeeTO;
10 import cmd_dao.sample.common.tester.CRUDTester;
11 import cmd_dao.sample.common.tester.DataSetter;
12
13 /***
14 * Last modified $Date: 2004/05/18 10:50:23 $
15 * @version $Revision: 1.1.1.1 $
16 * @author jvlio (jvlio@users.sourceforge.net) - 17/10/2002 - 02:42:53
17 */
18 public class JDBCTester implements CRUDTester {
19
20
21 public TuneData insert(Connection con, int count, DataSetter ds) throws SQLException {
22 PreparedStatement stmt = con.prepareStatement("INSERT INTO "+EmployeeTypes.TABLE_NAME+" ("+EmployeeTypes.FIELD_JOB+","+EmployeeTypes.FIELD_DEPTNO+","+EmployeeTypes.FIELD_MANAGER+","+EmployeeTypes.FIELD_NAME+","+EmployeeTypes.FIELD_HIREDATE+","+EmployeeTypes.FIELD_COMM+","+EmployeeTypes.FIELD_SALARY+","+EmployeeTypes.FIELD_NO+") VALUES (?,?,?,?,?,?,?,?)");
23 EmployeeTO emp = new EmployeeTO();
24 long begin = 0;
25 long time = 0;
26 long stime = 0;
27 for(int i=0; i<count; i++) {
28 emp = (EmployeeTO)ds.set(i,emp);
29 begin = System.currentTimeMillis();
30 stmt.setString(1,emp.getJob());
31 stmt.setObject(2,emp.getDeptNo());
32 stmt.setObject(3,emp.getManager());
33 stmt.setString(4,emp.getName());
34 stmt.setTimestamp(5,emp.getHireDate());
35 stmt.setObject(6,emp.getComm());
36 stmt.setObject(7,emp.getSalary());
37 stmt.setInt(8,emp.getNo().intValue());
38 stmt.executeUpdate();
39 time = System.currentTimeMillis()-begin;
40 stime += time;
41 }
42 stmt.close();
43
44 TuneData tunning = new TuneData();
45 tunning.setProcesedTime(stime);
46 return tunning;
47 }
48
49
50 public TuneData find(Connection con, int count, DataSetter ds) throws SQLException {
51 PreparedStatement stmt = con.prepareStatement("SELECT * FROM "+EmployeeTypes.TABLE_NAME+" WHERE "+EmployeeTypes.FIELD_NO+"=?");
52 EmployeeTO emp = new EmployeeTO();
53 String name = null;
54 long begin = 0;
55 long time = 0;
56 long stime = 0;
57 for(int i=0; i<count; i++) {
58 emp = (EmployeeTO)ds.set(i,emp);
59 begin = System.currentTimeMillis();
60 stmt.setInt(1,emp.getNo().intValue());
61 ResultSet rs = stmt.executeQuery();
62 if (!rs.next()) System.out.println("jdbc find error pk=("+i+")");
63 rs.close();
64 time = System.currentTimeMillis()-begin;
65 stime += time;
66 }
67 stmt.close();
68
69 TuneData tunning = new TuneData();
70 tunning.setProcesedTime(stime);
71 return tunning;
72 }
73
74
75 public TuneData update(Connection con, int count, DataSetter ds) throws SQLException {
76 long stime = 0;
77 PreparedStatement stmt = con.prepareStatement("UPDATE "+EmployeeTypes.TABLE_NAME+" SET "+EmployeeTypes.FIELD_JOB+"=?,"+EmployeeTypes.FIELD_DEPTNO+"=?,"+EmployeeTypes.FIELD_MANAGER+"=?,"+EmployeeTypes.FIELD_NAME+"=?,"+EmployeeTypes.FIELD_HIREDATE+"=?,"+EmployeeTypes.FIELD_COMM+"=?,"+EmployeeTypes.FIELD_SALARY+"=? WHERE "+EmployeeTypes.FIELD_NO+"=?");
78 EmployeeTO emp = new EmployeeTO();
79 long begin = 0;
80 long time = 0;
81 stime = 0;
82 for(int i=0; i<count; i++) {
83 emp = (EmployeeTO)ds.set(i,emp);
84 begin = System.currentTimeMillis();
85 stmt.setString(1,emp.getJob());
86 stmt.setObject(2,emp.getDeptNo());
87 stmt.setObject(3,emp.getManager());
88 stmt.setString(4,emp.getName());
89 stmt.setTimestamp(5,emp.getHireDate());
90 stmt.setObject(6,emp.getComm());
91 stmt.setObject(7,emp.getSalary());
92 stmt.setInt(8,emp.getNo().intValue());
93 stmt.executeUpdate();
94 time = System.currentTimeMillis()-begin;
95 stime += time;
96 }
97 stmt.close();
98
99 TuneData tunning = new TuneData();
100 tunning.setProcesedTime(stime);
101 return tunning;
102 }
103
104
105 public TuneData delete(Connection con, int count, DataSetter ds) throws SQLException {
106 long stime = 0;
107 PreparedStatement stmt = con.prepareStatement("DELETE FROM "+EmployeeTypes.TABLE_NAME+" WHERE "+EmployeeTypes.FIELD_NO+"=?");
108 EmployeeTO emp = new EmployeeTO();
109 long begin = 0;
110 long time = 0;
111 stime = 0;
112 for(int i=0; i<count; i++) {
113 emp = (EmployeeTO)ds.set(i,emp);
114 begin = System.currentTimeMillis();
115 stmt.setInt(1,emp.getNo().intValue());
116 stmt.executeUpdate();
117 time = System.currentTimeMillis()-begin;
118 stime += time;
119 }
120 stmt.close();
121
122 TuneData tunning = new TuneData();
123 tunning.setProcesedTime(stime);
124 return tunning;
125 }
126
127
128 /***
129 *
130 */
131 /*public static double[] doReadJDBCTest(Connection con, int count) throws SQLException {
132 }*/
133
134 }
This page was automatically generated by Maven