O ZBEKISTON RESPUBLIKASI ALOQA, AXBOROTLASHTIRISH VA TELEKOMMUNIKATSIYA TEXNOLOGIYALARI DAVLAT QO MITASI

Similar documents
O ZBEKISTON RESPUBLIKASI ALOQA, AXBOROTLASHTIRISH VA TELEKOMMUNIKATSIYA TEXNOLOGIYALARI DAVLAT QO MITASI

* To change this license header, choose License Headers in Project Properties.

O ZBEKISTONRESPUBLIKASIALOQAAXBOROTLASHTIRISHVATEL EKOMMUNIKATSIYATEXNOLOGIYALARIDAVLATQO MITASITOSH KENTAXBOROTTEXNOLOGIYALARIUNIVERSITETI

Answer on question #61311, Programming & Computer Science / Java

* To change this license header, choose License Headers in Project Properties.

/** Creates new form NewJFrame */ public NewJFrame() { initcomponents(); initblogsearch(); //initializes Index List box }

Java Programming Summer 2008 LAB. Thursday 8/21/2008

Travel Agency. Khateeb Engineering Classes. Mini Project. Khateeb Engineering Classes: / Technology to be used

O'zbekiston Respublikasi Aloqa,Axborotlashtirish va Telekommunikatsiya Texnologiyalari Davlat Qo'mitasi. Toshkent Axborot Texnologiyalari Universiteti

AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI FARG ONA FILIALI

O ZBЕKISTОN RЕSPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI

O ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI

O ZBEKISTON ALOQA, AXBOROTLASHTIRISH VA TELEKOMUNIKATSIYA TEXNOLOGIYALARI DAVLAT QO MITASI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI

AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI FARG ONA FILIALI

BITIRUV MALAKAVIY ISHI

O ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI

O ZBEKISTON RESPUBLIKASI ALOQA, AXBOROTLASHTIRISH VA TELEKOMMUNIKATSIYA TEXNOLOGIYALARI DAVLAT QO MITASI

BAKALAVR BITIRUV ISHI

MAXSUS EFFEKTLAR KOMPYUTER GRAFIKASI VA DIZAYN FANIDAN

I.1 Introduction Matisse GUI designer I.2 GroupLayout Basics Sequential and Parallel Arrangements sequential horizontal orientation

REJA KIRISH ASOSIY QISM I BOB Android operatsion tizimi 1.1 Android OT tarixi 1.2 Android OTning hayotimizda tutgan o rni 1.

1. Operatsion tizim (OT) tushunchasi 2. Operatsion tizimlarning rivojlanish bosqichlari. 3. Windows operatsion tizimi 4. Mobil operatsion tizimlar

O ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI

CHAPTER 8 INFERENCE. The concept of Inference would be explained in the following chapter, as the CTBN

Appendix I: Software Coding

JAVA CODE JAVA CODE: BINOMIAL TREES OPTION PRICING BINOMIALTREE CLASS PAGE 1

O ZBEKISTON RESPUBLIKASI OLIY VA O RTA-MAXSUS TA LIM VAZIRLIGI ALISHER NAVOIY NOMIDAGI SAMARQAND DAVLAT UNIVERSITETI MEXANIKA-MATEMATIKA FAKULTETI

BAKALAVR BITIRUV ISHI

Project Helpine Report BANQUET HALL BOOKING

O ZBEKISTON RESPUBLIKASI OLIY VA O RTA MAXSUS TA LIM VAZIRLIGI KASB-HUNAR SIRDARYO VILOYATI O RTA MAXSUS KASB- HUNAR TA LIMI BOSHQARMASI

YM. TIZIMLI DASTURIY TA'MINOT. M.M.Aliyev,E.T.Toxirov. Uslubiy qo'uanma. Toshl en ~---

MUNDARIJA. ANNOTATSIYA... 2 KIRISH... 4 I BOB. ANALITIK QISM... 7

DJURAYEV SHERZOD SOBIRJONOVICH

/* * MoraDrill.java * Version last updated 6 April 2010 * Written by John K. Estell * Created on November 30, 2008, 10:22 PM */

KURS ISHI. MFO'M fanidan. Mavzu: Internet tamoyillari fanini pedagogik va axborot texnologiyalari yordamida o`qitish metodikasi.

WEB DASTURLASH. fanidan MA RUZALAR MATNI

BAKALAVR BITIRUV MALAKAVIY ISHI

O`ZBEKISTON ALOQA VA AXBOROTLASHTIRISH AGENTLIGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI FARG`ONA FILIALI. Axborot texnologiyalari fakul`teti

Hanley s Survival Guide for Visual Applications with NetBeans 2.0 Last Updated: 5/20/2015 TABLE OF CONTENTS

TOSHKENT AXBROT TEXNALOGIYALARI UNIVERSITETI QARSHI FILIALI KOPYUTER INJINERINGI FAKULTETI

upakovkalari dizayni (Artel, Uztelecom, Roison) mahsulotlarini yaratish.

«Veb ilovalarni yaratish» fanidan tajriba ishlarini bajarish bo yicha

Chapter 8. Java continued. CS Hugh Anderson s notes. Page number: 264 ALERT. MCQ test next week. This time. This place.

CSC System Development with Java. Database Connection. Department of Statistics and Computer Science. Budditha Hettige

Java continued. Chapter 8 ALERT ALERT. Last week. MCQ test next week. This time. This place. Closed book. Assignment #2 is for groups of 3

jlabel14 = new javax.swing.jlabel(); jlabel15 = new javax.swing.jlabel(); jlabel16 = new javax.swing.jlabel(); jlabel17 = new javax.swing.

DAFTAR LAMPIRAN. Source Code Java Aplikasi Keyword to Image Renamer Split

JRadioButton account_type_radio_button2 = new JRadioButton("Current"); ButtonGroup account_type_button_group = new ButtonGroup();

Mundarija: Ошибка! Закладка не определена. Ошибка! Закладка не определена.

TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI AXBOROT TEXNOLOGIYALARI FAKULTETI MULTIMEDIA TEXNOLOGIYALARI KAFEDRASI

Sh.A. Nazirov, F.M. Nuraliev. DHTML yordamida Web-sahifa. Dasturlash II fanidan dasturlashga yo naltirilgan IKT tizimilari muttahasislari uchun

O ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI

O ZBEKISTON RESPUBLIKASI OLIY VA O RTA MAXSUS TA LIM VAZIRLIGI

O'rnatish menyusiga kirish

ERwin and JDBC. Mar. 6, 2007 Myoung Ho Kim

BITIRUV MALAKAVIY ISHI

O ZBEKISTON RESPUBLIKASI ALOQA, AXBOROTLASHTIRISH VA TELEKOMMUNIKATSIYA TEXNOLOGIYALARI DAVLAT QO`MITASI

O ZBEKISTON RESPUBLIKASI OLIY VA O RTA MAXSUS TA LIM VAZIRLIGI NIZOMIY NOMIDAGI TOSHKENT DAVLAT PEDAGOGIKA UNIVERSITETI MAGISTRATURA BO LIMI

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE CÓMPUTO

Amaliy matematika va informatika ta lim yo nalishi bo yicha bakalavr darajasini olish uchun. Oromov Akmal Ahmad o g lining

O zbekiston Respublikasi oliy va o rta maxsus ta`lim vazirligi. Buxoro oziq-ovqat va engil sanoat texnologiyasi instituti

O ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARNI RIVOJLANTIRISH VAZIRLIGI

O ZBЕKISTON RЕSPUBLIKASI ALOQA, AXBOROTLASHTIRISH VA TЕLЕKOMMUNIKATSIYA TЕXNOLOGIYALARI DAVLAT QO MITASI TOSHKЕNT AXBOROT TЕXNOLOGIYALARI UNIVЕRSITЕTI

МЕХАНИКА МАТЕМАТИКА ФАКУЛЬТЕТИ

COP4540 TUTORIAL PROFESSOR: DR SHU-CHING CHEN TA: H S IN-YU HA

Coleman Leviter, OCP IBM/NYC MTA/IOUG Oracle Database Developer

Basicsof. JavaGUI and SWING

A Reliable tool for Hospital Administration System

Accessing databases in Java using JDBC

Graphical User Interfaces in Java - SWING

Introduction to the JAVA UI classes Advanced HCI IAT351

Forte for Java (Community Edition) QuickStart Guide

O ZBEKISTON RESPUBLIKASI OLIY VA O RTA MAXSUS TA LIM VAZIRLIGI NIZOMIY NOMIDAGI TOSHKENT DAVLAT PEDAGOGIKAUNIVERSITETI

CHAPTER 1: A GENERAL INTRODUCTION TO PROGRAMMING 1

CS 251 Intermediate Programming GUIs: Components and Layout

China Jiliang University Java. Programming in Java. Java Swing Programming. Java Web Applications, Helmut Dispert

SampleApp.java. Page 1

Java, Swing, and Eclipse: The Calculator Lab.

Java Programming. Price $ (inc GST)

CONTENTS. Chapter 1 Getting Started with Java SE 6 1. Chapter 2 Exploring Variables, Data Types, Operators and Arrays 13

INFORMATIKA VA AXBOROT TEXNOLOGIYALARI yo nalishi

Internet tarmog ida taqiqlangan himoyalash (filtr) vositalarini ishlab chiqish

Java Graphical User Interfaces AWT (Abstract Window Toolkit) & Swing

Graphical User Interface (GUI) components in Java Applets. With Abstract Window Toolkit (AWT) we can build an applet that has the basic GUI

Introduction to Graphical Interface Programming in Java. Introduction to AWT and Swing

Java Database Connectivity (JDBC) 25.1 What is JDBC?

Introduction to Java. Nihar Ranjan Roy.

Java Graphical User Interfaces

We have several alternatives now, which we need to address. Here is a list of them: 1. How to get HTML interpreted correctly.

WEB SERVICES EXAMPLE 2

TABIIY FANLAR FAKULTETI KIMYO BO`LIMI

17 GUI API: Container 18 Hello world with a GUI 19 GUI API: JLabel 20 GUI API: Container: add() 21 Hello world with a GUI 22 GUI API: JFrame: setdefau

Graphics programming. COM6516 Object Oriented Programming and Design Adam Funk (originally Kirill Bogdanov & Mark Stevenson)

(listener)... MouseListener, ActionLister. (adapter)... MouseAdapter, ActionAdapter. java.awt AWT Abstract Window Toolkit GUI

MIT AITI Swing Event Model Lecture 17

"Charting the Course... Java Programming Language. Course Summary

Virtualians.ning.pk. 2 - Java program code is compiled into form called 1. Machine code 2. native Code 3. Byte Code (From Lectuer # 2) 4.

Graphical User Interface

Java.net - the Source for Java(tm) Technology Collaboration

O zbеkiston Rеspublikasi Oliy va o rta maxsus ta lim vazirligi. Namangan muhandislik pеdagogika instituti. Kasb ta`limi fakultеti

Transcription:

O ZBEKISTON RESPUBLIKASI ALOQA, AXBOROTLASHTIRISH VA TELEKOMMUNIKATSIYA TEXNOLOGIYALARI DAVLAT QO MITASI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI Dasturiy injiniring fakulteti KURS ISHI Mavzu: Supermarket axborot tizimini avtomatlashtirish Topshirdi: 215-12 guruh talabasi Sh. R. Biybolayev Qabul qildi: M. Z. Babamuhamedova Toshkent 2015

Kirish Yangi XXI - asrda axborot texnologiyalari hayotimizning turli jabhalariga kirib borishi axborotlashgan jamiyatning shakllantirishga zamin yaratib bermoqda. "Internet", "Elektron pochta", "Elektron ta'lim", "Elektron boshqaruv", "Elektron hukumat", "Masofaviy ta'lim", "Ochiq ta'lim", "Axborotlashgan iqtisod" kabi tushunchalar hayotimizga kirib kelishi jamiyatimizning axborotlashishiga intensiv ta'sir ko`rsatmoqda. Axborot - kommunikatsiya texnologiyalari orqali mamlakatlarning milliy iqtisodi globallashib, axborotlashgan iqtisod shakliga o'tmoqda, ya'ni milliy iqtisoddagi axborot va bilimlarning 90 % so'nggi 30 yil mobaynida yaratilgan bo'lib, ular hajmining ko'payib borishi axborotkommunikatsiya texnologiyalaridan samarali foydalanishni talab etmoqda. Bunday dasturiy taminotlarni yaratishda bizga dasturlash tillari yordam beradi. Misol uchun Java dasturash tili xozirgi kunda eng ommabob til xisoblanadi Demak ushbu tilda dastur yaratish Axborot kummunikatsiya texnologiyalari soxasidagi barcha dasturchilarini asosiy masalasidir. Chunki Java tilida istalgan dasturni yaratish mumkin. Shu maqsatda men xam Supermarket axborot tizimini avtomatlashtirish dasturini ishlab chiqishga qaror qildim. Dastur supermarketda ishlaydigan hadimlarni, Shuningdek supermarketga yangi kelgan mahsulotlar nomi, narxi, soni va boshqa bir qancha malumotlari bo yicha Malumotlar bazasiga kiritib boriladi. Ushbu vazifani bajarish uchun quyidagi vazifalar belgilandi: obyektga yo naltirilgan java dasturlash tilini o rganish, javada foydalanuvchi interfeyslarini(java Swing) yaratishni o rganish, malumotlar bazasi bilan ishlashni o rganish, supermarket axborot tizimini avtomatlashtirish 2

II. NAZARIY QISM 2.1 Java dasturlash tili xaqida umumiy tushuncha Tarixi: Java dasturlash tili eng yaxshi dasturlash tillaridan biri boʻ lib unda korporativ darajadagi mahsulotlarni(dasturlarni) yaratish mumkin.bu dasturlash tili Oak dasturlash tili asosida paydo boʻ ldi. Oak dasturlash tili 90-yillarning boshida Sun Microsystems tomonidan platformaga(operatsion tizimga) bogʻ liq boʻ lmagan holda ishlovchi yangi avlod aqlli qurilmalarini yaratishni maqsad qilib harakat boshlagan edi. Bunga erishish uchun Sun hodimlari C++ ni ishlatishni rejalashtirdilar, lekin baʼ zi sabablarga koʻ ra bu fikridan voz kechishdi.oak muvofaqiyatsiz chiqdi va 1995-yilda Sun uning nomini Java ga almashtirdi, va uni WWW rivojlanishiga hizmat qilishi uchun maʼ lum oʻ zgarishlar qilishdi. Java Obyektga Yoʻ naltirilgan Dasturlash(OOP-object oriented programming) tili va u C++ ga ancha oʻ xshash.eng koʻ p yoʻ l qoʻ yildigan xatolarga sabab boʻ luvchi qismalari olib tashlanib, Java dasturlash tili ancha soddalashtirildi. Java kod yozilgan fayllar(*.java bilan nihoyalanuvchi) kompilatsiyadan keyin bayt kod(bytecode) ga oʻ tadi va bu bayt kod interpretator tomonidan oʻ qib yurgizdiriladi. Imkoniyatlari: Bugungi kunga kelib kompyuter va Internetda ishlovchi ko plab foydalanuvchilar Java haqida bir oz bo lsada tushunchaga ega bo lganlar. Java dastirlash tilida C va C++ tilining konstruksiyalari, operatorlari va funksiyalaridan yetarlicha foydalanilgan bo lib, u yangicha uslubdagi ob yektga yo naltirilgan tamoyillar kiritilgan. Unda dastur tuzish va o rganishning osonligi, yaratilgan dasturlarning ixtiyoriy platformada ishlata olish, Internet uchun ixcham dasturlar tuzish, xotirani chiqindi lardan avtomatik tozalash, imkoniyatining mavjudligi uning ommabopligini oshirdi. Java dasturlari Java virtual mashinasi (JVM) deb ataluvchi mexanizmning bayt-kodlari orqali kompilyatsiya qilinganligi uchun ixtiyoriy operatsion tizimda ishlay oladi. Shu sababli, Java dasturlarining ishga tushirilishida vaqt ko proq talab qilinadi. Ko pchilik foydalanuvchilar uni shu tomonlama tanqid ostiga olishadi. 3

Java tilining asosiy yutuqlaridan biri uning tez o zgaruvchanligidir. Bu til dasturlash muhitiga va dasturlash yondashuvlariga tez moslasha oladi. Undan nafaqat ilovalar yaratishda, balki Internet uchun dasturlar yaratishda ham foydalanish mumkin. Xavfsizlik (ishonch yuq kodni xavfsiz ishga tushirish). Xotirani xavfsiz boshqarish (avtomat ravishda keraksiz ma lumotlarni yig adi) Tarmoqda dasturlash Ko p oqimli (Multi-thread) dasturlash Quyidagi farqlar bilan Java C/C++ dan ajralib turadi header fayllar yo q Preprocessorlar yo q Goto yo q Unicode belgilar Avtomat musorlarni yig adi Ko rsatkich (pointer) yo q Operatorlarni qayta yuklash qilish yo q Dasturda barcha vazifalar class tushunchasi bilan boshlanadi Global o zgaruvchi va funksiyalar yo q 2.3.Ma lumotlar bazasi tuzilmasi Relyatsion ma'lumotlar bazasini boshqarish tizimi - o`zining ma'lumotlar strukturasi oddiyligi bilan, foydalanuvchi uchun jadval ko`rinishida joylashtirilishi bilan va ma'lumotlar ustidan oson hisob-kitob amallarini bajarish imkoniyati mavjudligi bilan ajralib turadi. Hozirda relyatsion ma lumot bazalari o zining qulayligi tufayli keng miqyosda ishlatilmoqda. Relyatsion ma lumot bazalari ma lumotlarni jadvallarga joylashgan va jadvallar orasida mos bog liqliklarni, ya ni munosabatni (relyatsiyani) o rnatishga asoslangan. Ular jadvallar orasidagi turli bog liqliklarni o rnatish, 4

ma lumot kiritish shakllarini yaratish, hisobot shakllarini chiqarish, turli so rovlar (Zaprosi) tuzish imkonini beradi. Relatsion model ma'lumotlarni ikki o`lchamli jadvalda tartiblashga asoslangan. Har bir relatsion jadval ikki o`lchamli massivdan iborat bo`ladi va quyidagi hususiyatlarga ega: -Jadvalning bir ustunidagi barcha kataklar bir hil tipga mansub(misol uchun bir ustun barcha elementlari tipi simvolli yoki raqamli); -Jadvalda bir xil qatorlar mavjud emas; -Ustun va qatorlar ketmaketligi turlicha bo`lishi mumkin; Relatsion ma'lumotlar bazasi boshqarish tizimining asosiy tushunchalari bu: * Atribut; * Relation; * Kortej; 2.4 Java Swing xaqida Java/SWING nima JAVA uchun GUI Framework JAVA dasturlarini look and feel holatiga keltirish Java Foundation Classes (Sun Microsystems) bir qismi IFC (Netscape) va JFC (Sun Microsystems) qo shilgani Java Standard Edition 1.2 versiyasidan boshlab paket shaklida qo shilgan GUI controllar java dastur orqali generatsiya qilinadi Ko rinishi va funksionallkin jihatidan Windows, Mac va Linux OS laridaka Java Swing class iearxiyasi Swing API 18 ta public paketlardan iborat 5

javax.accessibility javax.swing.plaf javax.swing.text javax.swing javax.swing.border javax.swing.plaf.basic javax.swing.text.html javax.swing.plaf.metal javax.swing.text.html.parser javax.swing.colorchooser javax.swing.plaf.multi javax.swing.text.rtf javax.swing.event javax.swing.plaf.synth javax.swing.tree javax.swing.filechooser javax.swing.table javax.swing.undo Swing Layots AWT va Swing klaslarining layout manager lari: BorderLayout BoxLayout CardLayout FlowLayout GridBagLayout GridLayout GroupLayout SpringLayout Java/Swing BorderLayot BorderLayout Har bir content pane boshlang ichda BorderLayout inisalizatsiya qilinadi. BorderLayout componentlarni 5 ta maydonga qo yadi: top, bottom, left, right, va center. 6

III.AMALIY QISM 3.1. Dastur ma lumotlar bazasi tuzilmasi Mysql da yaratilgan Turli xil dasturlar yaratishda bazalar bilan ishlash juda qo`l keladi. Bazalar dastur kodini kamroq, dasturdan ma`lumotni oson qidirib topish uchun kerak bo`ladi. Dasturlarni yaratishda asosan MySQL, SQL, ORACLE, Acsess kabi ma lumotlar bazalaridan foydalaniladi. Bular orasida MySql ma lumotlar bazasi o zning soddaligi, ishlashga qulayligi va foydalanuvchilarining ko`pligi bilan ajralib turadi. Shu sababli, men ham dasturimda MySQL ma lumotlar bazasidan foydalanishga harakat qildim. Mа lumоtlаr bаzаsi o tа tez rivоjlаngаn hamdа MySQL vа NoSQL o zini ko rsаtgаn soha, Internet uchun dаsturlаr yarаtishdir. Internet uchun murаkkаb vа ishоnchli dаsturlаrgа ehtiyoj оshgаn sаri mа lumоtlаr bаzаsigа ehtiyoj ham оshib bоrmоqdа. Server mа lumоtlаr bаzаsi Internetdа ko p funksiyalаrni qo llаshi mumkin. Har qаndаy dasturlar mа lumоtlаr bаzаsi tоmоnidаn bоshqаrilishi mumkin. Supermarket mahsulotlarini ro yxatga olish jadvali 7

3.2 Java dasturlarini ma lumotlar bazasi bilan bog lash Java dasturlarini ma lumotlar bazasi bilan bog lash uchun bizga JDBC drayveri kerak bo ladi. JDBC Driver(Java Database Connectivity Javada ma lumotlar bazasi bilan bog lanish) platformaga bog liq bo lmagan, turli ma lumotlar bazalari bilan bog lanishga imkon beradigan, JavaSE da java.sql paketi tarkibiga kiritilgan standard drayver xisoblanadi. JDBC MBga bog lanish, unda SQL so rovlarini bajarishni ta minlaydi. 8

Buning uchun quyidagi manzillardan MBga tegishli drayverlarning.jar paketini ko chirib olamiz: MySQL http://dev.mysql.com/downloads/connector/j/ PostqreSLQ http://jdbc.postgresql.org/download.html Oracle http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html MySQLga ulanish: Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://hostname:port/dbname","username", "password"); conn.close(); PostgreSQLga ulanish: Class.forName("org.postgresql.Driver"); Connection connection = DriverManager.getConnection("jdbc:postgresql://hostname:port/dbname","username", "password"); connection.close(); ORACLEga ulanish: Class.forName("oracle.jdbc.driver.OracleDriver"); Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:mkyong","username","password"); connection.close(); 1-qatorlarda biz MBga ulanish uchun drayverni ko rsatyapmiz. 2-qatorlarda JDBC Manager bazaga bog lanishni bajaradi va undan keyinchalik foydalanishimizga imkon yaratadi. 3-qatorlar bog lanishni yopadi. Imkoni bo lsa JDBC drayverni try{ catch{ ichiga joylash kerak. Bu ish drayverning kompyuterimizda bor ekanligini va ishlashini nazorat qiladi. try { Class.forName("com.mysql.jdbc.Driver"); catch (ClassNotFoundException e) { System.out.println("Where is your MySQL JDBC Driver?"); e.printstacktrace(); return; Javada bazaga bog lanish uchun klass xosil qilib olamiz: 9

private static Connection getdbconnection() { Connection dbconnection = null; try { Class.forName(DB_DRIVER); catch (ClassNotFoundException e) { System.out.println(e.getMessage()); try { dbconnection = DriverManager.getConnection(DB_CONNECTION, DB_USER,DB_PASSWORD); return dbconnection; catch (SQLException e) { System.out.println(e.getMessage()); return dbconnection; Quyida mb ichida jadval xosil qilish metodini yaratamiz: private static void createdbusertable() throws SQLException { Connection dbconnection = null; Statement statement = null; String createtablesql = "CREATE TABLE DBUSER(" + "USER_ID NUMBER(5) NOT NULL, " + "USERNAME VARCHAR(20) NOT NULL, " + "CREATED_BY VARCHAR(20) NOT NULL, " + "CREATED_DATE DATE NOT NULL, " + "PRIMARY KEY (USER_ID) " + ")"; try { dbconnection = getdbconnection(); statement = dbconnection.createstatement(); // SQL so rovni bajarish statement.execute(createtablesql); System.out.println("Table \"dbuser\" is created!"); catch (SQLException e) { System.out.println(e.getMessage()); finally { if (statement!= null) { statement.close(); 10

if (dbconnection!= null) { dbconnection.close(); main funksiyasi ichida createdbtable() metodini chaqirish: public static void main(string[] argv) { try { createdbusertable(); catch (SQLException e) { System.out.println(e.getMessage()); MBga ma lumot kiritish: String inserttablesql = "INSERT INTO DBUSER" + "(USER_ID, USERNAME, CREATED_BY, CREATED_DATE) " + "VALUES" + "(1,'mkyong','system', " + "to_date('" + getcurrenttimestamp() + "', 'yyyy/mm/dd hh24:mi:ss'))"; private static String getcurrenttimestamp() { Date today = new Date(); return dateformat.format(today.gettime()); statement.executeupdate(inserttablesql); MB dan ma lumotlarni o qib olish: String selecttablesql = "SELECT USER_ID, USERNAME from DBUSER"; try { dbconnection = getdbconnection(); statement = dbconnection.createstatement(); ResultSet rs = statement.executequery(selecttablesql); // Ma lumot olingan bo lsa while sikli ishga tushadi. while (rs.next()) { String userid = rs.getstring("user_id"); String username = rs.getstring("username"); System.out.println("userid : " + userid); System.out.println("username : " + username); catch (SQLException e) { System.out.println(e.getMessage()); 11

3.3. UML sxemasi UML - bu yangi Unifikаtsiyalаngаn mоdellаshtirish tili (Unified Modeling Language) bo lib, Grаdi Buch, Аyvаr Yakоbsоn vа Djeyms Rаmbо (Grady Booch, Ivar Jacobson, James Rumbaugh) tоmоnidаn оb ektgа-yo nаltirilgаn loyihalаsh vа tахlilni хujjаtlаshning yangi stаndаrti sifаtidа tаklif qilingаn. class Login classmainmenu Mahsulotlar JpassworFieldtxtPassword JFiledtxtUsername Jbutton btn Cencil Jbutton btn OK JButton JButton 1 JButton JButton 2 JButton JButton 3 JButton JButton 4 JButton JButton 1 JButton JButton 2 JButton JButton 3 label jlabel1 LablejLable2 Metodlar Metodlar Metodlar voidbtncancelactionperformed() VoidbtnOkActionPerfomed() VoidtxtPasswordActionPerformed() VoidtxtUsernameActionPerfotrmed() Void int components() Voidjlabel2mouseCliced() voidjmenu5actionperformed() voidjmenu5mousecliced() VoidjmenuItem10ActionPerformed() VoidjmenuItem13ActionPerformed() VoidjmenuItem14ActionPerformed() VoidjmenuItem15ActionPerformed() VoidjmenuItem3ActionPerformed() VoidReset() voidbtndeleteactionperformed(action even) voidbtngetdateactionperformed(action even) voidbtnnewperformed(action even) voidbtndeleteactionperformed(action even) voidbtnsaveactionperformed(action even) voidbtnupdateactionperformed(action even) Xodimlar Yordam Chiqish Jbutton btn delete Jbutton btn Update Jbutton btn New Jbutton btn save Jlabel jlabel1 Jlabel jlabel2 Jlabel jlabel3 JButtonJBUtton1 JButtonJBUtton1 Metodlar Metodlar Metodlar 12

voidbtndeleteactionperformed(action even) voidbtngetdateactionperformed(action even) voidbtnnewperformed(action even) voidbtndeleteactionperformed(action even) Voidchange passwordactionperfomerd(action event) voidbtnchangepasswordmousecliced() void init componnents() void Get_data() 3.4. Dasturdan foydalanish Bu oynada swingni Jbutton, Jlabel, Jtextbox componentlaridan foydalanganman Ushbu oynada Jmenu componentasi ishlatilgan. 13

Maxsulotlar bo limi. Ushbu oynada Supermarketda xizmat ko rsatish uyishmasining ma lumotlari bazaga saqlanadi va bazadan o zgartiriladi, o chiriladi, kiritilgan malumot Jtable da foydalanuvchiga ko rinib turadi. 14

Xodimlar bo limi. Ushbu oynada ishchi xodimlar haqidagi malumotlar ma lumotlar bazaga saqlanadi va bazadan o zgartiriladi, o chiriladi. Supermarketda xizmat ko rsatish uyishmasining ro yxatga olish oynasi bu xaqda to liq malumot olish uchun [malumot olish] tugmasi bosiladi. U quydagicha ko rinishda bo ladi. 15

Bu oynada bazaga kiritilgan ma lumotlarni boshqa menularga chaqirib olish imkoniyati bor, yani istalgan qatordagi malumotlar tanlanadi va bu ma lumotlar ishchi oynasiga ko chadi Dastur haqida oynasi 16

IV. Xulosa Xulosa qilib shuni aytamanki bu dasturni yaratish davomida o z oldimga qo ygan maqsadlarimga qisman bo lsada erishdim. Dasturni tayyorlash davomida darslikdan tashqari qo shimcha adabiyotlar o qishga va ulardagi algaritmlardan o rganib va foydalanib ko rishga harakat qildim. Dasturni tuzish davomida java swingdan, javada obyektga yo naltirilgan dasturlash elementlaridan foydalanishni, ma lumotlar bazasidan foydalanishni o rgandim. Men qilgan dastur orqali supermarket ishchilari ishini oson va tezkor ishlashi uchun dasturga mahsulotlar haqida malumotlarni oson ro yxatga olish, ro yxatdan o chirish, o zgartirish amallarini kiritdim. 17

Ilovalar. import java.sql.*; import javax.swing.*; public class Connect { Connection con=null; Connection database public static Connection ConnectDB(){ try{ Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql://localhost/mysql","root",""); return con; catch(classnotfoundexception SQLException e){ JOptionPane.showMessageDialog(null, e); return null; import java.awt.*; import java.awt.event.keyevent; import java.sql.*; import javax.swing.*; public class Login extends javax.swing.jframe { Connection con=null; ResultSet rs=null; PreparedStatement pst=null; public Login() { initcomponents(); setlocationrelativeto(null); @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="generated Code"> private void initcomponents() { 18

jmenuitem1 = new javax.swing.jmenuitem(); filler1 = new javax.swing.box.filler(new java.awt.dimension(0, 0), new java.awt.dimension(0, 0), new java.awt.dimension(32767, 0)); jsplitpane1 = new javax.swing.jsplitpane(); jlabel1 = new javax.swing.jlabel(); jlabel2 = new javax.swing.jlabel(); txtusername = new javax.swing.jtextfield(); txtpassword = new javax.swing.jpasswordfield(); btnok = new javax.swing.jbutton(); btncancel = new javax.swing.jbutton(); filler2 = new javax.swing.box.filler(new java.awt.dimension(0, 0), new java.awt.dimension(0, 0), new java.awt.dimension(32767, 0)); jmenuitem1.settext("jmenuitem1"); setdefaultcloseoperation(javax.swing.windowconstants.exit_on_close); settitle("login "); setresizable(false); addmousewheellistener(new java.awt.event.mousewheellistener() { public void mousewheelmoved(java.awt.event.mousewheelevent evt) { formmousewheelmoved(evt); ); addwindowlistener(new java.awt.event.windowadapter() { public void windowopened(java.awt.event.windowevent evt) { formwindowopened(evt); ); jlabel1.settext("login"); jlabel2.settext("parol"); txtusername.addmouselistener(new java.awt.event.mouseadapter() { public void mouseclicked(java.awt.event.mouseevent evt) { txtusernamemouseclicked(evt); ); txtusername.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(java.awt.event.actionevent evt) { 19

txtusernameactionperformed(evt); ); txtpassword.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(java.awt.event.actionevent evt) { txtpasswordactionperformed(evt); ); txtpassword.addkeylistener(new java.awt.event.keyadapter() { public void keypressed(java.awt.event.keyevent evt) { txtpasswordkeypressed(evt); ); btnok.settext("ok"); btnok.addmouselistener(new java.awt.event.mouseadapter() { public void mouseclicked(java.awt.event.mouseevent evt) { btnokmouseclicked(evt); ); btnok.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(java.awt.event.actionevent evt) { btnokactionperformed(evt); ); btncancel.settext("bekor qilish"); btncancel.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(java.awt.event.actionevent evt) { btncancelactionperformed(evt); ); javax.swing.grouplayout layout = new javax.swing.grouplayout(getcontentpane()); getcontentpane().setlayout(layout); layout.sethorizontalgroup( layout.createparallelgroup(javax.swing.grouplayout.alignment.leading).addgroup(layout.createsequentialgroup() 20

.addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading).addgroup(layout.createsequentialgroup().addgap(89, 89, 89).addComponent(filler2, javax.swing.grouplayout.preferred_size, 86, javax.swing.grouplayout.preferred_size)).addgroup(layout.createsequentialgroup().addgap(32, 32, 32).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jLabel2).addComponent(jLabel1)).addGap(34, 34, 34).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(txtUserName, javax.swing.grouplayout.preferred_size, 166, javax.swing.grouplayout.preferred_size).addgroup(layout.createparallelgroup(javax.swing.grouplayout.alignment.leading, false).addgroup(javax.swing.grouplayout.alignment.trailing, layout.createsequentialgroup().addcomponent(btnok, javax.swing.grouplayout.default_size, javax.swing.grouplayout.default_size, Short.MAX_VALUE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(btnCancel)).addComponent(txtPassword, javax.swing.grouplayout.preferred_size, 166, javax.swing.grouplayout.preferred_size))))).addcontainergap(54, Short.MAX_VALUE)) ); layout.setverticalgroup( layout.createparallelgroup(javax.swing.grouplayout.alignment.leading).addgroup(layout.createsequentialgroup().addgap(35, 35, 35).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(jLabel1) 21

.addcomponent(txtusername, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)).addgap(26, 26, 26).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(jLabel2, javax.swing.grouplayout.preferred_size, 20, javax.swing.grouplayout.preferred_size).addcomponent(txtpassword)).addgap(26, 26, 26).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(btnOK).addComponent(btnCancel)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.grouplayout.default_size, Short.MAX_VALUE).addComponent(filler2, javax.swing.grouplayout.preferred_size, 11, javax.swing.grouplayout.preferred_size).addgap(20, 20, 20)) ); pack(); // </editor-fold> private void btnokmouseclicked(java.awt.event.mouseevent evt) { if (txtusername.gettext().equals("")) { JOptionPane.showMessageDialog( this, "Please enter user name","error", JOptionPane.ERROR_MESSAGE); return; String Password= String.valueOf(txtPassword.getPassword()); if (Password.equals("")) { JOptionPane.showMessageDialog( this, "Please enter password","error", JOptionPane.ERROR_MESSAGE); return; 22

con=connect.connectdb(); String sql= "select * from hms_db.users where UserName= '" + txtusername.gettext() + "' and user_password ='" + txtpassword.gettext() + "'"; try { pst=con.preparestatement(sql); rs= pst.executequery(); if (rs.next()){ this.hide(); MainMenu frm=new MainMenu(); frm.setvisible(true); else{ JOptionPane.showMessageDialog(null, "Login yoki parol xato!","access denied",joptionpane.error_message); catch(sqlexception HeadlessException e){ JOptionPane.showMessageDialog(null, e); private void btncancelactionperformed(java.awt.event.actionevent evt) { // TODO add your handling code here: System.exit(0); private void txtpasswordkeypressed(java.awt.event.keyevent evt) { if (evt.getkeycode()==keyevent.vk_enter){ con=connect.connectdb(); String sql= "select * from hms_db.users where UserName= '" + txtusername.gettext() + "' and user_password ='" + txtpassword.gettext() + "'"; try { pst=con.preparestatement(sql); rs= pst.executequery(); 23

if (rs.next()){ this.hide(); MainMenu frm=new MainMenu(); frm.setvisible(true); else{ JOptionPane.showMessageDialog(null, "Login yoki parol xato!","access denied",joptionpane.error_message); txtusername.settext(""); txtpassword.settext(""); txtusername.requestdefaultfocus(); catch(sqlexception HeadlessException e){ JOptionPane.showMessageDialog(null, e); java.awt.eventqueue.invokelater(new Runnable() { @Override public void run() { new Login().setVisible(true); ); // Variables declaration - do not modify private javax.swing.jbutton btncancel; private javax.swing.jbutton btnok; private javax.swing.box.filler filler1; private javax.swing.box.filler filler2; private javax.swing.jlabel jlabel1; private javax.swing.jlabel jlabel2; private javax.swing.jmenuitem jmenuitem1; private javax.swing.jsplitpane jsplitpane1; public javax.swing.jpasswordfield txtpassword; public javax.swing.jtextfield txtusername; 24