Presentation is loading. Please wait.

Presentation is loading. Please wait.

Distributed Systems Lab Lecture -1-.  It is extremely simplified application will be realized with the aid of various middleware technologies.  It allows.

Similar presentations


Presentation on theme: "Distributed Systems Lab Lecture -1-.  It is extremely simplified application will be realized with the aid of various middleware technologies.  It allows."— Presentation transcript:

1 Distributed Systems Lab Lecture -1-

2  It is extremely simplified application will be realized with the aid of various middleware technologies.  It allows the retrieval of information on market prices and exchange rate developments, as well as managing the stock deposit.  The application will also allows the user to play a game during observing the prices of the stock market. ▪ such Sudoku, Zuma or else. 1 October 20152Distributed Systems Lab

3  It will be MySQL database stores the companies prices in the market and users login and balance details.  The database tables will be:  CO_Name ▪ CO_ID (primary key): ID of the limited company and it is an integer. ▪ CO_NAME: String, name of the company.  CO_Data: ▪ ID (primary key): it is an integer. ▪ C_ID: ID of the company, which is integer also. ▪ DAY: we will assume that has taken place every working day trade and day as an integer number (1.. 31). ▪ SHARE_VALUE: Current share price that day and it is a double number (0.01 to 9999.99 EUR). 1 October 20153Distributed Systems Lab

4 Application Database Cont.  USER ▪ U_ID (primary key): ID of the limited company and it is an integer. ▪ U_NAME: String, name of the company. ▪ U_PSWD:  USER_TRANS: // user transaction history ▪ ID (primary key): it is an integer. ▪ C_ID: ID of the company, which is integer also. ▪ U_ID: ▪ DAY: we will assume that has taken place every working day trade and day as an integer number (1.. 31). ▪ TRANS_TYPE: ▪ AMOUNT: Current share price that day and it is a double number (0.01 to 9999.99 EUR). 1 October 20154Distributed Systems Lab

5  Application will be implemented as following:  ConnectDB Class  exchangeClient Class  GameClass  Note:  Interface or abstract class. Which one should you use on the project. 1 October 20155Distributed Systems Lab

6  / / Constructor, loads the DB driver public ConnectDB ()  MySql DB url: jdbc:mysql://host_name:port/dbname  MySql Driver: com.mysql.jdbc.Driver  Class.forName("com.mysql.jdbc.Driver").newInstance(); //load the driver  Connection dcon = DriverManager.getConnection(DB url, “username", “password");//start a connection  / / Opens a connection to the database public boolean OpenDB ()  if(!dcon.isClosed()) // check if the connection is open  / / Closes an existing connection to the database public boolean CloseDB ()  dcon.close(); 1 October 20156Distributed Systems Lab

7  / / Takes the SQL string from the open DB and return ResultSet. on error SQLException is thrown public ResultSet executeDB (String SQL) //define statement object to execute sql query Statement stat = dcon.createStatement(); //results of sql query returns in a ResultSet object ResultSet rs = stat.executeQuery("select * from table where “); if (!rs.next()) { //if no results found rs.close(); stat.close(); dcon.close(); } else { // action code }  / / Returns the error message of the last executed SQL command. if the command was successful, "OK" would be returned public String getStatus () 1 October 20157Distributed Systems Lab

8 exchangeClient Class  public String CreateUser(String name, String pwrd)  It returns string on success like “your account is created successfully ”, or if there is any problem during the creation such as the duplication of the user name, empty field it returns message of that problem.  public String Login (String name, String pwrd)  If there is any problem during the login process such as the name is not exist in the DB it returns message of it. Otherwise it returns welcoming message. 1 October 2015Distributed Systems Lab8

9 exchangeClient Class Cont.  public String [] GetAllCompanies ()  Returns a list of all Company names in an array of strings.  public double GetValue (int x, String Company)  It returns the price of the share of the Company on day X (1.. 31). When entering an invalid date and / or Company-name is not exist will return "-1.0". 1 October 2015Distributed Systems Lab9

10 exchangeClient Class Cont.  public double BigWinnerGain (int X, int Y)  Investigated the stock during the period between the 2 days X (1.. 30) and Y (X... 31) the largest percentage gain  With Y > X and K (X) = price at the date X has generated. The output is the percentage value of the price. 1 October 2015Distributed Systems Lab10

11 exchangeClient Class Cont.  public String BigWinnerCompany (int X, int Y) As the previous method, but the name of the concerned Company is returned. 1 October 2015Distributed Systems Lab11

12  These guides to help you implementing your project.  You can add or edit if you think it convenient to your project in which you will mention it in your report. 1 October 201512Distributed Systems Lab

13  http://www.roseindia.net/jdbc/jdbc.shtml  http://www.stardeveloper.com/articles/displa y.html?article=2003090401&page=1 1 October 201513Distributed Systems Lab


Download ppt "Distributed Systems Lab Lecture -1-.  It is extremely simplified application will be realized with the aid of various middleware technologies.  It allows."

Similar presentations


Ads by Google