It Last Project
It Last Project
P.HEMABHARATHI
In partial fulfillment of the
INFORMATION TECHNOLOGY
(802)
AT
TIRUVANNAMALAI 606603
2024-2025
ACKNOWLEDGEMENT
CONTENTS
INTRODUCTION
SOURCECODE
OUTPUT
REFERENCES
Currency Conversion System
Introduction
This program converts the given amount from one currency to
another .
1. **Operating System:**
- Choose an operating system based on the
preferences and compatibility with your
selected programming language and
frameworks. Common choices include Linux
distributions (such as Ubuntu, CentOS),
Windows Server, or macOS.
2. **Web Server:**
- If the Currency Conversion System is web-
based, you'll need a web server to handle HTTP
requests. Popular choices include Apache,
Nginx, or Microsoft Internet Information
Services (IIS).
8. **Server-Side Logic:**
- Develop server-side logic to handle currency
conversion calculations, user authentication,
and data validation. Utilize frameworks or
libraries depending on the chosen
programming language.
9. **Client-Side Logic:**
- Implement client-side logic using JavaScript
frameworks or libraries to enhance user
interactions and handle asynchronous requests.
1. **Server Infrastructure:**
- Depending on the scale and requirements of
the Currency Conversion System, you may need
servers to host the application. These servers
can be physical machines or virtual machines in
the cloud.
2. **Networking Equipment:**
- Ensure proper networking equipment to
facilitate communication between servers,
clients, and external APIs. This includes routers,
switches, and firewalls.
3. **Storage Solutions:**
- Choose appropriate storage solutions,
whether it's local storage on servers or cloud-
based storage services, to store and retrieve
data efficiently.
5. **Backup Systems:**
- Implement backup systems to regularly back
up critical data, ensuring data recovery in case
of system failures or data loss.
6. **Security Infrastructure:**
- Invest in security infrastructure, including
firewalls and intrusion detection/prevention
systems, to protect the system from potential
security threats.
8. **Monitoring Hardware:**
- Consider hardware components for
monitoring purposes, such as sensors and
monitoring tools, to keep track of server health
and performance.
package currencyConverter;
import java.util.ArrayList;
import java.util.HashMap;
public class Currency {
private String name;
private String shortName;
private HashMap<String, Double> exchangeValues = new HashMap<String, Double>();
// “Currency” Constructor
public Currency(String nameValue, String shortNameValue) {
this.name = nameValue;
this.shortName = shortNameValue;
}
// Getter for name
public String getName() {
return this.name;
}
// Setter for name
public void setName(String name) {
this.name = name;Java_Projects.md
}
// Getter for shortName
public String getShortName() {
return this.shortName;
}
// Setter for shortName
public void setShortName(String shortName) {
this.shortName = shortName;
}
// Getter for exchangeValues
public HashMap<String, Double> getExchangeValues() {
return this.exchangeValues;
}
// Setter for exchangeValues
public void setExchangeValues(String key, Double value) {
this.exchangeValues.put(key, value);
}
// Set default values for a currency
public void defaultValues() {
String currency = this.name;
switch (currency) {
case “US Dollar”:
this.exchangeValues.put(“USD”, 1.00);
this.exchangeValues.put(“EUR”, 0.93);
this.exchangeValues.put(“GBP”, 0.66);
this.exchangeValues.put(“CHF”, 1.01);
this.exchangeValues.put(“CNY”, 6.36);Java_Projects.md
this.exchangeValues.put(“JPY”, 123.54);
break;
case “Euro”:
this.exchangeValues.put(“USD”, 1.073);
this.exchangeValues.put(“EUR”, 1.00);
this.exchangeValues.put(“GBP”, 0.71);
this.exchangeValues.put(“CHF”, 1.08);
this.exchangeValues.put(“CNY”, 6.83);
this.exchangeValues.put(“JPY”, 132.57);
break;
case “British Pound”:
this.exchangeValues.put(“USD”, 1.51);
this.exchangeValues.put(“EUR”, 1.41);
this.exchangeValues.put(“GBP”, 1.00);
this.exchangeValues.put(“CHF”, 1.52);
this.exchangeValues.put(“CNY”, 9.60);
this.exchangeValues.put(“JPY”, 186.41);
break;
case “Swiss Franc”:
this.exchangeValues.put(“USD”, 0.99);
this.exchangeValues.put(“EUR”, 0.93);
this.exchangeValues.put(“GBP”, 0.66);
this.exchangeValues.put(“CHF”, 1.00);
this.exchangeValues.put(“CNY”, 6.33);
this.exchangeValues.put(“JPY”, 122.84);
break;
case “Chinese Yuan Renminbi”:Java_Projects.md
this.exchangeValues.put(“USD”, 0.16);
this.exchangeValues.put(“EUR”, 0.15);
this.exchangeValues.put(“GBP”, 0.11);
this.exchangeValues.put(“CHF”, 0.16);
this.exchangeValues.put(“CNY”, 1.00);
this.exchangeValues.put(“JPY”, 19.41);
break;
case “Japanese Yen”:
this.exchangeValues.put(“USD”, 0.008);
this.exchangeValues.put(“EUR”, 0.007);
this.exchangeValues.put(“GBP”, 0.005);
this.exchangeValues.put(“CHF”, 0.008);
this.exchangeValues.put(“CNY”, 0.051);
this.exchangeValues.put(“JPY”, 1.000);
break;
}
}
// Initialize currencies
public static ArrayList<Currency> init() {
ArrayList<Currency> currencies = new ArrayList<Currency>();
currencies.add( new Currency(“US Dollar”, “USD”) );
currencies.add( new Currency(“Euro”, “EUR”) );
currencies.add( new Currency(“British Pound”, “GBP”) );
currencies.add( new Currency(“Swiss Franc”, “CHF”) );
currencies.add( new Currency(“Chinese Yuan Renminbi”, “CNY”) );
currencies.add( new Currency(“Japanese Yen”, “JPY”) );
for (Integer i =0; i < currencies.size(); i++) {Java_Projects.md
currencies.get(i).defaultValues();
}
return currencies;
}
// Convert a currency to another
public static Double convert(Double amount, Double exchangeValue) {
Double price;
price = amount * exchangeValue;
price = Math.round(price * 100d) / 100d;
return price;
}
}
OUTPUT
MY SQL TABLES
To create a simple MySQL database for a
currency converter, you would typically need
at least two tables: one for storing currency
exchange rates and another for recording
conversion transactions. Here's an example
schema for these tables:
```sql
CREATE TABLE currency_rates (
id INT PRIMARY KEY AUTO_INCREMENT,
base_currency VARCHAR(3) NOT NULL,
target_currency VARCHAR(3) NOT NULL,
exchange_rate DECIMAL(10, 6) NOT NULL,
last_updated TIMESTAMP DEFAULT
CURRENT_TIMESTAMP ON UPDATE
CURRENT_TIMESTAMP
);
```
Explanation:
- `id`: Unique identifier for each record.
- `base_currency`: The currency you are
converting from (e.g., USD).
- `target_currency`: The currency you are
converting to (e.g., EUR).
- `exchange_rate`: The conversion rate from
the base to the target currency.
- `last_updated`: Timestamp to track when
the exchange rate was last updated.
```sql
CREATE TABLE conversion_history (
id INT PRIMARY KEY AUTO_INCREMENT,
from_currency VARCHAR(3) NOT NULL,
to_currency VARCHAR(3) NOT NULL,
amount DECIMAL(10, 2) NOT NULL,
converted_amount DECIMAL(10, 2) NOT
NULL,
conversion_rate DECIMAL(10, 6) NOT NULL,
transaction_date TIMESTAMP DEFAULT
CURRENT_TIMESTAMP
);
```
Explanation:
- `id`: Unique identifier for each conversion
transaction.
- `from_currency`: The currency being
converted from.
- `to_currency`: The currency being
converted to.
- `amount`: The original amount before
conversion.
- `converted_amount`: The resulting amount
after conversion.
- `conversion_rate`: The exchange rate used
for the conversion.
- `transaction_date`: Timestamp for when
the conversion occurred.
1. **Academic Journals:**
- Search academic databases like JSTOR,
PubMed, or IEEE Xplore for articles related to
currency conversion systems. Topics may
include financial technologies, international
finance, and software engineering.
2. **Books:**
- Explore books on financial technologies,
international finance, and database
management systems. Books by authors
specializing in financial systems and technology
may provide in-depth insights.
3. **Conference Proceedings:**
- Proceedings from conferences on financial
technology, database systems, and
international finance can provide information
on the latest research and developments in
currency conversion systems.
4. **Research Papers:**
- Look for research papers published by
universities, financial institutions, and
technology companies. Websites of institutions
like the World Bank or the International
Monetary Fund (IMF) may have valuable
research.
5. **Financial News and Magazines:**
- Follow reputable financial news sources and
magazines like The Wall Street Journal, The
Economist, or Forbes for articles on currency
conversion systems, market trends, and
innovations.
6. **Official Documentation:**
- Explore official documentation from
financial regulatory bodies and institutions. For
example, reports from the Bank for
International Settlements (BIS) or the European
Central Bank may provide insights into currency
systems.
7. **Online Platforms:**
- Websites of financial technology companies,
payment processors, and currency exchange
platforms often provide whitepapers, case
studies, and technical documentation on their
currency conversion systems.
8. **Government Reports:**
- Check reports and publications from
government agencies involved in finance and
trade. These reports might include information
on currency systems, regulations, and
economic trends.
9. **Online Courses:**
- Consider enrolling in online courses related
to financial technologies or international
finance. Platforms like Coursera, edX, or Khan
Academy may offer relevant courses.