SlideShare a Scribd company logo
1 of 9
ATHLONE IT
Java Project 4-2
Final report
Dmitrius ponomarenko
11-Mar-15
Athlone IT,NetworkManagement&CloudInfrastructure 4,Software Design4-2
Description
The program designedto presentmultifunctional interface forthe libraryusers.The programhasa
multiple windows.The firstwindowwill give the choice forusertologinasa normal user or as a staff
user.To loginas a registereduser,the userwillbe requiredenterusername and password. If userhas
not beenregisteredeat,itwill needcreate hisaccountandthenloginas a registereduser. Afterlogin
success,the usual userwill getaccessto the interface whichallow him/hersearchthe librarybya book
title orauthor name, checkthe numberof available copiesandtheylocation.The staff will cana search/
add/delete/updatethe booksinthe librarystock,handoutor take back the books.
Program architecture
Main frame
Welcome Frame
User login Frame
Usernames and
passwords
collection
Staff login Frame
Username and
password
collection
class
UserName
Password
Class
UserName
Password
Staff Frame
Books collection
Class Books
User Frame
Use book
collection
Using classes
GUI Frames
 Welcome Frame
 UserLoginFrame
 StaffLoginFrame
 UserFrame
 StaffFrame
Collectionclasses
 UserNamePassword
 Books
PopupWindows
 InfoFrame
 searchBooks
Functionality
1. WelcomeFrame (mainframe),give a
choice loginasa useror as a staff worker.To
loginasa libraryuserpress<user>button,to
loginasa staff press<staff>button.
The <user> buttonwill call UserLoginFrame
class,see codesbellow,the <staff>button
will call StaffLoginFrame class,see codes
bellow:
textField
textField_1
JButton
2. In staff loginframe, youneed enterusername in<textField>window andpasswordin
<textField_1>window andpress<Login>button. The buttonwill runthe search(string,string)
function,the <search>functionwill check<UserNamePassword>collectionformatchesandif it
foundthe match itwill call <StaffFrame>if there nomatchesthe userwill get warningmessage
that his/herusername orpassword isincorrectandwill be asked torepeatprocedure,see codes
above.
The user loginframe hasa similarfunctionality withone extrafunction.Thisfunctionallowfor
newusercreate hisaccount. The new usermust enterthe username that he/she willuse inthe
future andpasswordand press<New User> button.The <New User> buttonwill make actionto
add newusername andpassword intothe <UserNamePassword>collection,see codesbellow.
3. In the <StaffFrame>usercan searchlibrarystock bya booktitle orauthor name. To searchby
title orauthor name userhave enterthe booktitle or authorname to the <fieldText>window
and presssearchbutton. The search buttonwill call the searchfunctions,the firstwillcheckthe
librarybythe booktitle andif bookwill found displayAuthorname in<textField_1>, Title in
<textField_2>,total numbof copiesin<textField_3>,numbrof available copiesin<textField_4>
and booklocationin<textField_5>.If bookwasnot foundbya title thenthe programwill run
secondsearchfunctionwhichwill make asearchbyauthor name and if foundwill store each
bookof thisauthorin a List andthendisplayedinpopupwindow.
See codesbellow:
JMenuBarwhit
insert/delete/update
items
textField
textField_1
textField_2
textField_3
textField_4
textField_5
comboBox (1-10)
textField_6
Group of JRadioButtons
If the userwill needstoupdate the librarystock,forexampledelete orupdate existingbook,itswill
have firstsearchfor that bookand if successthenuser can delete thatbookbyclicking<delete>inthe
top rightcorner menu.The <update>functionallow foruserupdate existingbooknumberof copiesand
booklocation,Toupdate bookuserwill needsearchforthat bookand itwill foundthenchange number
of copiesbyselectingnewnumberfrom<comboBox>(1-10) andenternew locationtothe
<textField_6>andpress<update> inthe top rightcorner <CRUD> menu.To addnew bok into the
librarystockthe user will needenter Authorname in<textField_1>,title in<textField_2>, total numbof
copiesin<textField_3>,numberof availablecopiesin<textField_4>and booklocationin<textField_5>
and press<insert>inthe <CRUD> menu.
See codesbellow:
Delete:
Insert:
Update:
Alsothe staff workerwill be responsible forhandoutthe booksfor usersandtakingthemback. To hand
out the bookthe staff userwill needfirstsearchstockforthat book,if foundtickthe <take book>
RadioButton andpress<Take/Return>button.The programwill extractone fromnumberof available
booksand save itas a newavailable number.If there isnoavailablecopiesinthe stockthe programwill
displaywarningmessage.If the userwantreturnthe bookback to the library,the staff workerwill need
searchstock for that bookandthentick the <return book> RadioButtonandpress<Take/Return>
button.The program will addsone copyto the existingnumberof copiesandsave new value.Toclear
all entriesuserneedpress<clier>button,toexitpress<exit>button.
4. The UserFrame will allowforlibrarycustomersearchthe booksinthe stockby Authorname or
booktitle.The UserFrame will use existingBookHashSet.Afterpress<search>buttonthe
program will create newobjectof StaffFrame classwhichwill lettouse <search> and <display>
functionsfromStaffFrame class.
See codesbellow:
Other
In thisassignmentwere usedfew extrajavafurthersuch as,<DefaulListModel>thatisa implementation
of the ListModel thatextendsfromAbstractListModel. Thisallow store datatothe JList andthen display
it.AlsoI use the ButtonGroupfurtherof java .The ButtonGroupclassis responsible tomake sure only
one buttonis selected(bydeselectingothersinthe group).
Conclusion
OverthisassignmentIgota goodbasic knowledge of Javaprograming,whichwillactas a good
foundationforcontinuingforthe Javasubject.

More Related Content

Similar to Java project

Ejb3 Struts Tutorial En
Ejb3 Struts Tutorial EnEjb3 Struts Tutorial En
Ejb3 Struts Tutorial EnAnkur Dongre
 
Must be similar to screenshotsI must be able to run the projects.docx
Must be similar to screenshotsI must be able to run the projects.docxMust be similar to screenshotsI must be able to run the projects.docx
Must be similar to screenshotsI must be able to run the projects.docxherthaweston
 
Automator Ben Waldie
Automator Ben WaldieAutomator Ben Waldie
Automator Ben Waldiegasport
 
Working with Dictionaries and ListsSets Modules you can use.pdf
Working with Dictionaries and ListsSets Modules you can use.pdfWorking with Dictionaries and ListsSets Modules you can use.pdf
Working with Dictionaries and ListsSets Modules you can use.pdfadvancesystem
 
User interface introduction openbravo
User interface introduction   openbravoUser interface introduction   openbravo
User interface introduction openbravoAbul Khayer
 
a guide to install rasa and rasa x | Nitor Infotech
a guide to install rasa and rasa x | Nitor Infotecha guide to install rasa and rasa x | Nitor Infotech
a guide to install rasa and rasa x | Nitor InfotechservicesNitor
 
Storybook4 0r3 manual
Storybook4 0r3 manualStorybook4 0r3 manual
Storybook4 0r3 manualWellcomHaiti
 
Tagging For Community of Practice
Tagging For Community of PracticeTagging For Community of Practice
Tagging For Community of PracticePeter Rawsthorne
 
CSO Laboratory Manual
CSO Laboratory ManualCSO Laboratory Manual
CSO Laboratory ManualDwight Sabio
 
I need some help creating Psuedocode for a project using Java. Basic.pdf
I need some help creating Psuedocode for a project using Java. Basic.pdfI need some help creating Psuedocode for a project using Java. Basic.pdf
I need some help creating Psuedocode for a project using Java. Basic.pdffashionfootwear1
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfJeff Smith
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfJeff Smith
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfJeff Smith
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfJeff Smith
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfJeff Smith
 
Fantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_librariesFantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_librariesAegis Software Canada
 

Similar to Java project (20)

Ejb3 Struts Tutorial En
Ejb3 Struts Tutorial EnEjb3 Struts Tutorial En
Ejb3 Struts Tutorial En
 
Must be similar to screenshotsI must be able to run the projects.docx
Must be similar to screenshotsI must be able to run the projects.docxMust be similar to screenshotsI must be able to run the projects.docx
Must be similar to screenshotsI must be able to run the projects.docx
 
Automator Ben Waldie
Automator Ben WaldieAutomator Ben Waldie
Automator Ben Waldie
 
Working with Dictionaries and ListsSets Modules you can use.pdf
Working with Dictionaries and ListsSets Modules you can use.pdfWorking with Dictionaries and ListsSets Modules you can use.pdf
Working with Dictionaries and ListsSets Modules you can use.pdf
 
User interface introduction openbravo
User interface introduction   openbravoUser interface introduction   openbravo
User interface introduction openbravo
 
a guide to install rasa and rasa x | Nitor Infotech
a guide to install rasa and rasa x | Nitor Infotecha guide to install rasa and rasa x | Nitor Infotech
a guide to install rasa and rasa x | Nitor Infotech
 
Storybook4 0r3 manual
Storybook4 0r3 manualStorybook4 0r3 manual
Storybook4 0r3 manual
 
Python Namespace.pdf
Python Namespace.pdfPython Namespace.pdf
Python Namespace.pdf
 
VBA
VBAVBA
VBA
 
Unit 5
Unit 5Unit 5
Unit 5
 
Tagging For Community of Practice
Tagging For Community of PracticeTagging For Community of Practice
Tagging For Community of Practice
 
Class 1 blog
Class 1 blogClass 1 blog
Class 1 blog
 
CSO Laboratory Manual
CSO Laboratory ManualCSO Laboratory Manual
CSO Laboratory Manual
 
I need some help creating Psuedocode for a project using Java. Basic.pdf
I need some help creating Psuedocode for a project using Java. Basic.pdfI need some help creating Psuedocode for a project using Java. Basic.pdf
I need some help creating Psuedocode for a project using Java. Basic.pdf
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdf
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdf
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdf
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdf
 
Elements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdfElements_Content_Model_Overview.pdf
Elements_Content_Model_Overview.pdf
 
Fantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_librariesFantastic four machine_learning_java_libraries
Fantastic four machine_learning_java_libraries
 

Recently uploaded

How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 

Recently uploaded (20)

How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 

Java project

  • 1. ATHLONE IT Java Project 4-2 Final report Dmitrius ponomarenko 11-Mar-15 Athlone IT,NetworkManagement&CloudInfrastructure 4,Software Design4-2
  • 2. Description The program designedto presentmultifunctional interface forthe libraryusers.The programhasa multiple windows.The firstwindowwill give the choice forusertologinasa normal user or as a staff user.To loginas a registereduser,the userwillbe requiredenterusername and password. If userhas not beenregisteredeat,itwill needcreate hisaccountandthenloginas a registereduser. Afterlogin success,the usual userwill getaccessto the interface whichallow him/hersearchthe librarybya book title orauthor name, checkthe numberof available copiesandtheylocation.The staff will cana search/ add/delete/updatethe booksinthe librarystock,handoutor take back the books. Program architecture Main frame Welcome Frame User login Frame Usernames and passwords collection Staff login Frame Username and password collection class UserName Password Class UserName Password Staff Frame Books collection Class Books User Frame Use book collection
  • 3. Using classes GUI Frames  Welcome Frame  UserLoginFrame  StaffLoginFrame  UserFrame  StaffFrame Collectionclasses  UserNamePassword  Books PopupWindows  InfoFrame  searchBooks Functionality 1. WelcomeFrame (mainframe),give a choice loginasa useror as a staff worker.To loginasa libraryuserpress<user>button,to loginasa staff press<staff>button. The <user> buttonwill call UserLoginFrame class,see codesbellow,the <staff>button will call StaffLoginFrame class,see codes bellow:
  • 4. textField textField_1 JButton 2. In staff loginframe, youneed enterusername in<textField>window andpasswordin <textField_1>window andpress<Login>button. The buttonwill runthe search(string,string) function,the <search>functionwill check<UserNamePassword>collectionformatchesandif it foundthe match itwill call <StaffFrame>if there nomatchesthe userwill get warningmessage that his/herusername orpassword isincorrectandwill be asked torepeatprocedure,see codes above. The user loginframe hasa similarfunctionality withone extrafunction.Thisfunctionallowfor newusercreate hisaccount. The new usermust enterthe username that he/she willuse inthe future andpasswordand press<New User> button.The <New User> buttonwill make actionto add newusername andpassword intothe <UserNamePassword>collection,see codesbellow.
  • 5. 3. In the <StaffFrame>usercan searchlibrarystock bya booktitle orauthor name. To searchby title orauthor name userhave enterthe booktitle or authorname to the <fieldText>window and presssearchbutton. The search buttonwill call the searchfunctions,the firstwillcheckthe librarybythe booktitle andif bookwill found displayAuthorname in<textField_1>, Title in <textField_2>,total numbof copiesin<textField_3>,numbrof available copiesin<textField_4> and booklocationin<textField_5>.If bookwasnot foundbya title thenthe programwill run secondsearchfunctionwhichwill make asearchbyauthor name and if foundwill store each bookof thisauthorin a List andthendisplayedinpopupwindow. See codesbellow:
  • 6. JMenuBarwhit insert/delete/update items textField textField_1 textField_2 textField_3 textField_4 textField_5 comboBox (1-10) textField_6 Group of JRadioButtons If the userwill needstoupdate the librarystock,forexampledelete orupdate existingbook,itswill have firstsearchfor that bookand if successthenuser can delete thatbookbyclicking<delete>inthe top rightcorner menu.The <update>functionallow foruserupdate existingbooknumberof copiesand booklocation,Toupdate bookuserwill needsearchforthat bookand itwill foundthenchange number of copiesbyselectingnewnumberfrom<comboBox>(1-10) andenternew locationtothe <textField_6>andpress<update> inthe top rightcorner <CRUD> menu.To addnew bok into the librarystockthe user will needenter Authorname in<textField_1>,title in<textField_2>, total numbof copiesin<textField_3>,numberof availablecopiesin<textField_4>and booklocationin<textField_5> and press<insert>inthe <CRUD> menu. See codesbellow:
  • 8. Alsothe staff workerwill be responsible forhandoutthe booksfor usersandtakingthemback. To hand out the bookthe staff userwill needfirstsearchstockforthat book,if foundtickthe <take book> RadioButton andpress<Take/Return>button.The programwill extractone fromnumberof available booksand save itas a newavailable number.If there isnoavailablecopiesinthe stockthe programwill displaywarningmessage.If the userwantreturnthe bookback to the library,the staff workerwill need searchstock for that bookandthentick the <return book> RadioButtonandpress<Take/Return> button.The program will addsone copyto the existingnumberof copiesandsave new value.Toclear all entriesuserneedpress<clier>button,toexitpress<exit>button. 4. The UserFrame will allowforlibrarycustomersearchthe booksinthe stockby Authorname or booktitle.The UserFrame will use existingBookHashSet.Afterpress<search>buttonthe program will create newobjectof StaffFrame classwhichwill lettouse <search> and <display> functionsfromStaffFrame class. See codesbellow:
  • 9. Other In thisassignmentwere usedfew extrajavafurthersuch as,<DefaulListModel>thatisa implementation of the ListModel thatextendsfromAbstractListModel. Thisallow store datatothe JList andthen display it.AlsoI use the ButtonGroupfurtherof java .The ButtonGroupclassis responsible tomake sure only one buttonis selected(bydeselectingothersinthe group). Conclusion OverthisassignmentIgota goodbasic knowledge of Javaprograming,whichwillactas a good foundationforcontinuingforthe Javasubject.