College Management System CMS
College Management System CMS
net/publication/378862835
CITATIONS READS
0 586
1 author:
SEE PROFILE
All content following this page was uploaded by Nabil Abdallh A. Almotawkel on 11 March 2024.
Submitted to
Submitted by
2021
1|P age
ACKNOWLEDGEMENT
At the end of this trip, everything thanks to Allah Almighty, who gave me health
and strength, and everything is necessary to complete this work, which created
the appropriate conditions for me all the time.
I offer my thanks and appreciation to my parents who have always helped me,
and we are aware of the friendship and intellectual support of many people, as
well as my thanks to my friend Ibraheam Fadael, as well as to all the officials
who contributed directly and indirectly to the completion of this work.
DECLARATION
Date:
2021
2|P age
1. Introduction
1.1 Purpose
1.2 Scope
2. Overall Description
3. Specific Requirements
4.1. Abstract
5. System Analysis
6. System Design
6.2. Users
3|P age
7. Coding & Implementation
7.4. Portability
7.9. NetBeans
7.10. XAMPP
8. Snapshots
4|P age
Introduction
This project aims to deal with data of college students and also the fees that
they have to pay in the college.
1.1 Purpose
The purpose of the college management system is used to search and store
students' data, find out what fees are required of them, etc.
1.2 Scope
This is a system that contains both a student data component and a student's
paid or remaining fee component.
• NetBeans
• MySQL
5|P age
Overall Description
2.1. User Interface
6|P age
2.4. Program structure
LOGIN
details
Main Frame
Insert and
Query fees of Query data of
update data
student student
of student
Specific requirements
The specified requirement gives the expected behavior of the system, the
user can use any operating system, the user interface is implemented using the
graphic user interface.
Faculty members can, for example, inquire about students' financial status and
fees, as well as their data, and update them as well.
7|P age
• View the remaining fees
• MySQL
8|P age
College Management System
4.1. Abstract
As the college and information services community seeks to cope with new
patterns of information provision, new technology, and changing financial
circumstances, it is critical to gain new thinking across the profession. The
innovative theory, and best organizational practice are all presented in the College
Management System.
The college management system provides knowledge about all aspects related to
detailed information for students in order to follow them effectively.
The college management system is one of the most tedious processes, which
includes the regular updating of many files and records. When new students
register, the administration has to issue a unique code for that student. For this,
they have to keep track of many records like student details, address, phone
number etc. and keep many records. Doing this manually takes a lot of time and
effort. Hence, this can be facilitated by automation.
System Analysis
5.1. Existing System
The college is an ideal candidate for an IT solution, due to the vast amounts of
data that it has to deal with on a daily basis. If the administration wants to search
for a record of the student, they have to search for all records. If the administration
wants to add a new student to the database, they must search for the subject or
branch the student belongs to.
If students want to know the financial situation or what is related to the fees, they
must in the manual system come to the college to find out the status. The whole
9|P age
process is now controlled automatically. This contributes to the fact that records
of inquiries from students do not need to be kept on paper.
Maintaining the data in excel sheets and files is very hard to remember the file
names in which the required data is feed. No easy access to the required queries.
Data redundancy, inconsistency, a lot of human work need to be done to analyse
the details present in the excel sheets. It leads to wastage of time. No timely
response to the end-users.
The proposed system is the one that is going to be automated so that it is easy to
retrieve the responses from the system fastly and updating the details once the
response or services are provided to the end-users upon their request without any
difficulty and saves time.
• User friendly.
• Users can get Timely Information from the database without any delay
regarding the query.
• This reduces the delay of the response given to the Customer.
10 | P a g e
System Design
• User
o Add/Modify/Delete data of Student
o Add/Modify/Delete fees of student
o Search
o New Student
o Student stage
6.2. Users:
Has full access to all the modules of this system. Responsible for creating,
modifying, and deleting a student.
users can issue the student, search for a student, renew a data of student, delete a
student, and inquiry about fees of student.
11 | P a g e
Coding & Implementation
Technologies Used
Initially, the language was called “oak” but it was renamed “Java” in 1995. The
primary motivation of this language was the need for a platform-independent (i.e.,
architecture-neutral) language that could be used to create software to be
embedded in various consumer electronic devices.
12 | P a g e
7.3. Features of Java Security
Every time you download a “normal” program, you are risking a viral infection.
Before Java, most users did not download executable programs frequently, and
those who did scan them for viruses before execution. Most users are still worried
about the possibility of infecting their systems with a virus. Besides, another type
of malicious program exists that must be guarded against. This type of program
can gather private information, such as credit card numbers, bank account
balances, and passwords. Java answers both these concerns by providing a
“firewall” between a network application and your computer.
7.4. Portability
The key that allows Java to solve the security and portability problems is that the
output of the Java compiler is Byte code. Byte code is a highly optimized set of
instructions designed to be executed by the Java run-time system, which is called
the Java Virtual Machine (JVM). That is, in its standard form, the JVM is an
interpreter for byte code.
Translating a Java program into byte code helps makes it much easier to run a
program in a wide variety of environments. The reason is, once the run-time
package exists for a given system, any Java program can run on it.
13 | P a g e
Although Java was designed for interpretation, there is technically nothing about
Java that prevents on-the-fly compilation of byte code into native code. Sun has
just completed its Just In Time (JIT) compiler for byte code. When the JIT
compiler is a part of JVM, it compiles byte code into executable code in real-
time, on a piece-by-piece, demand basis. It is not possible to compile an entire
Java program into executable code all at once, because Java performs various run-
time checks that can be done only at run time. The JIT compiles code, as it is
needed, during execution.
When you compile the code, the Java compiler creates machine code (called byte
code) for a hypothetical machine called Java Virtual Machine (JVM). The JVM
is supposed to execute the byte code. The JVM is created for overcoming the
issue of portability. The code is written and compiled for one machine and
interpreted on all machines. This machine is called Java Virtual Machine.
What Is JDBC?
JDBC is a Java API for executing SQL statements. (As a point of interest, JDBC
is a trademarked name and is not an acronym; nevertheless, JDBC is often thought
of as standing for Java Database Connectivity. It consists of a set of classes and
interfaces written in the Java programming language. JDBC provides a standard
14 | P a g e
API for tool/database developers and makes it possible to write database
applications using a pure Java API.
7.9. NetBeans
NetBeans runs on Windows, mac OS, Linux and Solaris. In addition to Java
development, it has extensions for other languages
like PHP, C, C++, HTML5, and JavaScript. Applications based on NetBeans,
including the NetBeans IDE, can be extended by third party developers.
NetBeans began in 1996 as Xelfi (word play on Delphi), a Java IDE student
project under the guidance of the Faculty of Mathematics and Physics at Charles
University in Prague. In 1997, Roman Staněk formed a company around the
project and produced commercial versions of the NetBeans IDE until it was
bought by Sun Microsystems in 1999. Sun open-sourced the NetBeans IDE in
15 | P a g e
June of the following year. Since then, the NetBeans community has continued
to grow. In 2010, Sun (and thus NetBeans) was acquired by Oracle Corporation.
Under Oracle, NetBeans competed with JDeveloper, a freeware IDE that has
historically been a product of the company. In September 2016, Oracle submitted
a proposal to donate the NetBeans project to the Apache Software Foundation,
stating that it was "opening up the NetBeans governance model to give NetBeans
constituents a greater voice in the project's direction and future success through
the upcoming release of Java 9 and NetBeans 9 and beyond". The move was
endorsed by Java creator James Gosling. The project entered the Apache
Incubator in October 2016.
7.10. XAMPP
XAMPP is one of the widely used cross-platform web servers, which helps
developers to create and test their programs on a local webserver. It was
developed by the Apache Friends, and its native source code can be revised or
modified by the audience. It consists of Apache HTTP Server, Maria DB, and
interpreter for the different programming languages like PHP and Perl. It is
available in 11 languages and supported by different platforms such as the IA-32
package of Windows & x64 package of mac OS and Linux.
16 | P a g e
Snapshots
Admin Login
17 | P a g e
{
text1.setText(null);
password1.setText(null);
Info.setVisible(true);
text1.setText(null);
password1.setText(null);
Info.setVisible(true);
else {
JOptionPane.showMessageDialog(null,"login deatils","login
error",JOptionPane.ERROR_MESSAGE);
text1.setText(null);
password1.setText(null);
} }
18 | P a g e
if (c1.isSelected()){
password1.setEchoChar((char)0);
else
password1.setEchoChar('*');
} }
// this it will first ask “confirm if you want exit” before exiting, and the title
of the frame will be “customer billing system”
19 | P a g e
In the event that the username or password is wrong, the alert screen will appear
The main interface of the program and it contains entering student data,
inquiring about student data and inquiring about student fees
20 | P a g e
College management system frame
package packagestudent;
import java.awt.Dimension;
import java.awt.*;
import java.io.*;
import java.awt.Toolkit;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
21 | P a g e
import java.awt.print.PageFormat;
import java.awt.print.Paper;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.awt.FontMetric9;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.sql.*;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.JFrame;
Connection con=null;
Statement st=null;
PreparedStatement pre=null;
22 | P a g e
public framestudent() {
initComponents();
idtext.setText("");
nametext.setText("");
lastnametext.setText("");
birthtext.setText("");
departmenttext.setText("");
branchtext.setText("");
emailtext.setText("");
phonetext.setText("");
addresstext.setText("");
sem1text.setText("");
sem2text.setText("");
sem3text.setText("");
sem4text.setText("");
artext.setText("");
resstext.setText("");
sumtext.setText("");
23 | P a g e
Exit system button
System.exit(0);
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost/student2","root","");
+"'").executeUpdate();
JOptionPane.showMessageDialog(null,"deleted");
clear();
con.close();
24 | P a g e
The student photo preview in the typical size of the picture frame
imagelabel.getHeight(), Image.SCALE_SMOOTH);
return mypicture;
filec.setCurrentDirectory(new File(System.getProperty("user.home")));
("*.Image","jpg","png","gif");
filec.addChoosableFileFilter(fileFilter);
if(filestate == JFileChooser.APPROVE_OPTION){
imagelabel.setIcon(resizepic(path));
25 | P a g e
}
store the students' detailed data, as well as the calculations for the remaining
fees on the student and the installments that have been paid
int id=Integer.parseInt(idtext.getText());
int birth=Integer.parseInt(birthtext.getText());
int phone=Integer.parseInt(phonetext.getText());
int semm1tex=Integer.parseInt(sem1text.getText());
int semm2tex=Integer.parseInt(sem2text.getText());
int semm3tex=Integer.parseInt(sem3text.getText());
int semm4tex=Integer.parseInt(sem4text.getText());
int semm5tex=Integer.parseInt(sem4text.getText());
int semm6tex=Integer.parseInt(sem4text.getText());
26 | P a g e
// sumtext.setText(String.valueOf(summtex));
int ar=Integer.parseInt(artext.getText());
//resstext.setText(String.valueOf(ress));
try{
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost/student2","root","")
con.prepareStatement("insert into
student(id,name,lastname,birth,department,branch,email,phone,address,semm1t
ex,semm2tex,semm3tex,semm4tex,ar,summtex,ress)"
+ " values ('"+ id +"','"+ name +"','"+ lastname +"','"+ birth +"','"+
department +"','"+ branch +"','"+ email +"','"+ phone +"','"+ address +"','"+
+"')").executeUpdate();
clear();
JOptionPane.showMessageDialog(null,"record saved");
idtext.setFocusable(true);
con.close();
27 | P a g e
catch (Exception e){System.out.println(e);}
logf.setVisible(true);
logf.pack();
logf.setLocationRelativeTo(null);
logf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.dispose();
28 | P a g e
private void jToggleButton2ActionPerformed(java.awt.event.ActionEvent evt)
try{
Class.forName("com.mysql.jdbc.Driver");
con=
DriverManager.getConnection("jdbc:mysql://localhost/student2","root","");
st=con.createStatement();
+"'");
while(rs.next()) {
String id = rs.getString(1);
29 | P a g e
Object[] content = {id, firstname, lastname, birthyear, department,
model.addRow(content);
con.close();
System.exit(0);
logf.setVisible(true);
logf.pack();
logf.setLocationRelativeTo(null);
logf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.dispose();
30 | P a g e
A window for querying student fees via the table
try{
Class.forName("com.mysql.jdbc.Driver");
con=
DriverManager.getConnection("jdbc:mysql://localhost/student2","root","");
st=con.createStatement();
+"'");
while(rs.next()) {
31 | P a g e
String semester1 = rs.getString(10);
model.addRow(content);
con.close();
32 | P a g e
private void jLabel19MouseClicked(java.awt.event.MouseEvent evt) {
logf.setVisible(true);
logf.pack();
logf.setLocationRelativeTo(null);
logf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.dispose();
System.exit(0);
33 | P a g e
private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {
logf.setVisible(true);
logf.pack();
logf.setLocationRelativeTo(null);
logf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.dispose();
textarea1.append("*********************wellcome**************\n");
34 | P a g e
try {
textarea1.print();
Disable some text boxes // if you want some text boxes not working so user
textarea1.setEnabled(false);
textfield1.setEnabled(false); }
textarea1.setEnabled(null);
textfield1.setEnabled(“0”); }
35 | P a g e
application software was calculated successfully and was also tested successfully
by running "test cases". It is easy to use and has the required options, which the
user can use to perform the required operations.
36 | P a g e
Thank You!
ID No: 2018MCA034
Roll No: 1933939
Semester: 6
37 | P a g e