Can someone give me pointers on what needs to be done to get these classes to
INSERT INTO acctData VALUES (99999999, '2000-7-3',30,'food',50);
a deploy.txt is included containing the following.
thanks
package creditcard;
import db.DBConnection;
import java.lang.Object.*;
import java.io.*;
import java.sql.*;
import java.util.Date;
import tio.*;
import java.io.File.*;
import java.io.IOException;
class CreditCard {
private long AccountNo;
private double CreditLimit;
public double TotalCharges;
public double TotalPayments;
private double Amount;
private int TransResult;
private String TransErr;
private String Description;
private String log=null;
private String date;
private FormattedWriter out;
private Statement stm = null;
private ResultSet rst = null;
private String tableName = "acctdata";
private String x;
private String query;
private DBConnection db;
public Connection conn = null;
public CreditCard( ) throws FileNotFoundException, IOException {
newAccount();
CreditLimit = 1000;
TotalCharges = 0;
TotalPayments =0;
}
public CreditCard(long AccountNo) throws FileNotFoundException, IOException {
this.AccountNo = AccountNo;
CreditLimit = 1000;
TotalCharges = 0;
TotalPayments =0;
//validate AccountNO
}
private void accountStatus() throws IOException{
String f = "CC_Num_status.txt";
File file = new File(f);
FormattedWriter fw=new FormattedWriter(f);
if(f!=null){
fw.printfln("Account: " + accountNumber());
fw.printfln("Credit Limit: " + creditLimit());
fw.printfln("Available Credit: " + Available());
fw.printfln("Outstanding Balance: " + Balance());
fw.printfln("Charge: " + Amount);
fw.printfln("Description; " + Description);
fw.printfln("payment: " + Amount);
fw.printfln("Total Charges: " + TotalCharges);
fw.printfln("Total Payments " + TotalPayments);
//fw.printfln("\n");
// fw.printfln("Transaction (0=Quit, +$=charge, -$=payment, 9999=Limit increase): ");
}
}
private void newAccount() throws FileNotFoundException, IOException {
double r = Math.random();
AccountNo = (long)(r * 100000000);
}
public long accountNumber() {
return AccountNo;
}
private void writeLog(double Amount, String Description) throws FileNotFoundException, IOException, SQLException {
this.AccountNo = AccountNo;
Date dt = new Date();
dt.getTime();
String f = "CC" + AccountNo + ".txt";
File log = new File(f);
FormattedWriter out = new FormattedWriter(new FileWriter(log,true));
out.printfln(AccountNo);
out.printfln(dt.toString());
out.printfln(Amount);
out.printfln(Description);
out.close();
}
public double creditLimit() {
return CreditLimit;
}
public void creditIncrease()throws FileNotFoundException, IOException{
TransResult = 0;
if (Math.random() > .25) {
CreditLimit += 100;
accountStatus();
} else {
System.out.println("Sorry, credit increase not possible at this time.");
TransResult = 1;
}
}
public double Available() {
double Available = CreditLimit - ( TotalCharges - TotalPayments );
return Available;
}
public double Balance() {
double Balance = ( TotalCharges - TotalPayments );
return Balance;
}
public void Transaction( double Amount, String Description ) throws FileNotFoundException, IOException, SQLException {
TransResult = 0;
if ( Amount == 0 ) {
TransResult = 1;
TransErr = "Transaction amount is 0.";
return;
}
if ( Amount > Available() ) {
TransResult = 1;
TransErr = "Transaction amount of $" + Amount + " has exceeded the available credit limit $" + Available();
return;
}
if ( Description == "" ) {
TransResult = 1;
TransErr = "No transaction description entered.";
return;
}
if ( Amount > 0 ) {
TotalCharges += Amount;
accountStatus();
writeLog(Amount, Description);
} else if ( Amount < 0 ) {
TotalPayments += -(Amount);
accountStatus();
writeLog(Amount, Description);
}
}
long getAccountNo() {
return 0;
}
String getDate() {
return null;
}
double getTotalCharges() {
return 0;
}
String getDescription() {
return null;
}
double getTotalPayments() {
return 0;
}
void setAccountNo(long l) {
throw new UnsupportedOperationException("Not yet implemented");
}
void setDate(String string) {
throw new UnsupportedOperationException("Not yet implemented");
}
void setTotalCharges(double d) {
throw new UnsupportedOperationException("Not yet implemented");
}
void setDescription(String string) {
throw new UnsupportedOperationException("Not yet implemented");
}
void setTotalPayments(double d) {
throw new UnsupportedOperationException("Not yet implemented");
}
}
package creditcard;
//Credit Card Test - tests CreditCard class
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.sql.SQLException;
import tio.*;
class CreditCardTest {
public static void main(String[] args) throws IOException, SQLException {
new CreditCardTest();
}
public CreditCardTest() throws IOException, SQLException{
int inval;
long AccountNo;
double tranval=-1;
String transdesc = null;
CreditCard cc;
String f = "CC_Num_status.txt";
File file = new File(f);
FormattedWriter fw=new FormattedWriter(f);
System.out.println("Welcome to the Credit Card simulator!");
System.out.println("Existing Account, New Account, or Exit? (Existing Account=1, New Account=2, Exit=0): ");
inval = Console.in.readInt();
if (inval == 0)
return;
if (inval == 1) {
System.out.println("Existing Account; enter Account #: ");
AccountNo = Console.in.readLong();
if (AccountNo == 0)
return;
cc = new CreditCard(AccountNo);
} else {
cc = new CreditCard();
}
while (tranval != 0) {
System.out.println("Account: " + cc.accountNumber());
System.out.println("Credit Limit: " + cc.creditLimit());
System.out.println("Available Credit: " + cc.Available());
System.out.println("Outstanding Balance: " + cc.Balance());
System.out.println("Charge: " + + tranval);
System.out.println("Description; " + transdesc);
System.out.println("payment: " + tranval);
System.out.println("Total Charges: " + cc.TotalCharges);
System.out.println("Total Payments " + cc.TotalPayments);
System.out.println("\n");
System.out.println("Transaction (0=Quit, +$=charge, -$=payment, 9999=Limit increase): ");
tranval = Console.in.readDouble();
if (tranval == 0)
break;
if (tranval == 9999)
cc.creditIncrease();
else {
if (tranval > 0) {
System.out.println("Transaction description: ");
transdesc = Console.in.readLine();
transdesc = Console.in.readLine();
} else
transdesc = "payment";
cc.Transaction(tranval, transdesc);
}
}
}
}
/*
* DBConnection.java
*
* Created on September 11, 2007, 11:50 AM
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package db;
import java.sql.*;
import java.sql.DriverManager;
import java.sql.Connection;
/**
*
* @author James
*/
public class DBConnection {
private String connURL="jdbc:mysql://localhost:3306";
private String dbusername="root";
private String dbpassword="ceyesuma";
private String dbdriver= "com.mysql.jdbc.Driver";;
private String dbname = "ccdb";
private static DBConnection connection=null;
/** Creates a new instance of DBConnection */
private DBConnection() {
}
public String getDbdriver(){
return dbdriver;
}
public String getConnURL(){
return connURL;
}
public String getDbusername(){
return dbusername;
}
public String getDbpassword(){
return dbpassword;
}
public void setDbdriver(String dbdriver){
this.dbdriver=dbdriver;
}
public void setConnURL(String url){
this.connURL=url;
}
public void setDbusername(String dbusername){
this.dbusername=dbusername;
}
public void setDbpassword(String dbpassword){
this.dbpassword=dbpassword;
}
public void setDbname(String dbname){
this.dbname = dbname;
}
public String getDbname(){
return dbname;
}
public static DBConnection getInstance(){
if(connection==null){
connection = new DBConnection();
}
return connection;
}
public Connection getConnection() throws Exception{
Connection connection = null;
Class.forName(dbdriver);
connection = DriverManager.getConnection(connURL +"/" + dbname, dbusername, dbpassword);
return connection;
}
public void setDriver(String driver) {
throw new UnsupportedOperationException("Not yet implemented");
}
public void setConnectionURL(String connectionURL) {
throw new UnsupportedOperationException("Not yet implemented");
}
public void setDbName(String dbName) {
throw new UnsupportedOperationException("Not yet implemented");
}
public void setPort(String port) {
throw new UnsupportedOperationException("Not yet implemented");
}
public void setDbUser(String userName) {
throw new UnsupportedOperationException("Not yet implemented");
}
public void setPassword(String password) {
throw new UnsupportedOperationException("Not yet implemented");
}
}
DROP DATABASE IF EXISTS ccdb;
CREATE DATABASE ccdb;
USE ccdb;
CREATE TABLE acctData
( AccountNo long Primary Key,
transdate char(20),
chrg double,
transdesc VARCHAR(100),
pymnt double) );
INSERT INTO acctData VALUES (99999999, '2000-7-3',30,'food',50);
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.41-community-nt MySQL Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> USE ccdb;
Database changed
mysql>
mysql> SELECT * FROM acctdata;
+----------+-----------+------+-----------+-------+
| acct_num | transdate | chrg | transdesc | pymnt |
+----------+-----------+------+-----------+-------+
| 11111111 | 2007 | 30 | food | 20 |
+----------+-----------+------+-----------+-------+
1 row in set (0.91 sec)
mysql>
C:\Program Files\MySQL\MySQL Server 5.0\bin\mysql.exe Ver 14.12 Distrib 5.0.41,
for Win32 (ia32)
Connection id: 1
Current database: ccdb
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.0.41-community-nt MySQL Community Edition (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
TCP port: 3306
Uptime: 1 hour 52 min 15 sec
Threads: 1 Questions: 7 Slow queries: 0 Opens: 13 Flush tables: 1 Open tabl
es: 1 Queries per second avg: 0.001
--------------
mysql>