College Management System CMS
College Management System CMS
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|Page
7. Coding & Implementation
7.4. Portability
7.9. NetBeans
7.10. XAMPP
8. Snapshots
4|Page
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|Page
Overall Description
2.1. User Interface
6|Page
2.4. Program structure
LOGIN
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|Page
View the remaining fees
MySQL
8|Page
College Management System
4.1. Abstract
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|Page
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.
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
14 | P a g e
provides a standard
15 | 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
16 | 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.
17 | P a g e
Snapshots
Admin Login
String password =
password1.getText();
18 | P a g e
if ((username.contains("Nabil") && (password.contains("1982"))))
19 | P a g e
{
text1.setText(null);
password1.setText(null);
framestudent(); Info.setVisible(true);
text1.setText(null);
password1.setText(null);
framestudent(); Info.setVisible(true);
else {
JOptionPane.showMessageDialog(null,"login
deatils","login error",JOptionPane.ERROR_MESSAGE);
text1.setText(null);
password1.setText(null);
} }
20 | 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”
21 | 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
22 | 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;
23 | 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;
24 | P a g e
Connection con=null;
Statement st=null;
PreparedStatement pre=null;
25 | 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("");
26 | P a g e
Exit system button
System.exit(0);
try{
Class.forName("com.mysql.jdbc.Driver");
String name = (JOptionPane.showInputDialog(null,"Enter Name"));
con=DriverManager.getConnection("jdbc:mysql://localhost/student2","root","");
con.prepareStatement("delete from student where name='"+ name
+"'").executeUpdate();
JOptionPane.showMessageDialog(null,"deleted");
clear();
con.close();
27 | P a g e
The student photo preview in the typical size of the picture frame
Image img =
myImg.getImage().getScaledInstance(imagelabel.getWidth(),
imagelabel.getHeight(), Image.SCALE_SMOOTH);
return mypicture;
filec.setCurrentDirectory(new File(System.getProperty("user.home")));
FileNameExtensionFilter ("*.Image","jpg","png","gif");
filec.addChoosableFileFilter(fileFilter);
int filestate =
filec.showSaveDialog(null);
if(filestate == JFileChooser.APPROVE_OPTION)
imagelabel.setIcon(resizepic(path));
28 | P a g e
}else if (filestate == JFileChooser.CANCEL_OPTION){
29 | 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());
30 | P a g e
int summtex = semm1tex + semm2tex + semm3tex + semm4tex;
31 | 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();
32 | P a g e
}
33 | 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();
34 | 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","");
name"); st=con.createStatement();
+"'");
while(rs.next()) {
String id = rs.getString(1);
String department =
rs.getString(9);
35 | P a g e
Object[] content = {id, firstname, lastname, birthyear,
model.addRow(content);
con.close();
{ System.exit(0);
(); logf.setVisible(true);
logf.pack();
logf.setLocationRelativeTo(null);
logf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.dispose();
36 | 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","");
name"); st=con.createStatement();
+"'");
while(rs.next()) {
37 | P a g e
String semester1 =
= rs.getString(11); String
semester3 = rs.getString(12);
String semester4 =
= rs.getString(14); String
semester6 = rs.getString(15);
model.addRow(content);
con.close();
38 | 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);
39 | 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");
40 | 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”); }
42 | P a g e
Thank You!
ID No: 2018MCA034
Roll No: 1933939
Semester: 6
43 | P a g e
View publication
stats