JSP динамикалық Web бет технологиясы
РЕФЕРАТ
Бітіру жұмыстың тақырыбы:
“DB2 деректер қорында web программалау”
Бітіру жұмысы 42 беттен, теориялық және практикалық жұмыстардан
кіріспеден, қорытындыдан, әдебиеттер тізімінен тұрады. Ол үш тарауға
бөлінген.
Бірінші тарауда серверде динамикалық веб беттерін құрушы сервлеттер(Java
кдастары) қарстырылған. Сервлеттің класының құрлымы, шамалары мен әдістері
жазылған. JSP беттерінің бағдарламалық қасиеттері мен мүмкіндіктері толық
көрсетілген. Осы тарауда JSP бетінің сервлетке түрлендіру мұмкіндігі
JavaBean кластарын құру мен пайдалану ерекшеліктеріде жазылған.
Екінші тарауда DB2деректер қорын басқару жұйесінде жұмыс істеу жолдары
қарастырылған. Деректер қорын өңдеудің SQL сұрау тілінің қолдану
мүмкіндіктері жазылған.
Үшінші тарауда дипломдық жоба ретінде кітапхана деректер қорын
ұйымдастыру көрсетілген
Кілтті сөздер: HTML - web парақтар, JavaServer Pages, Servlet, Java,
Enterprise Java Beans (EJB), Apache Tomcat сервері, сервер мен клиент,
интернет, деректер қоры, DB2.
Берілген жұмыс Java технологиясын қолданып динамикалы веб бет құруға
арналған. Бұл жобаны іске асыру үшін: Java J2EE технологиясы, веб беттің
статикалық бөлімін жасау үшін: HTML, динамикалық бөлігін құру үшін: JSP
және Servlet технологиялары, деректер қорын өндеу үшін: DB2, деректер
қорымен байланыс орнату үшін: JDBC драйвері және осы барлық істерді
орындау үшін Apache Tomcat сервері қолданыды.
Бітіру жұмыстың негізгі мақсаты: динамикалық веб бет құру жолдарын
талдап және де оларға қолданылатын технологиялар түрлерін қарастырып,
зерттеу болып табылады.
мазмұны
кірсрпе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 2
1. Web беттерін құрудың JAVA технологиясы 5
1.1 Tomcat web сервері ... ... ... ... ... ... ... ... ... ... ... ... .. ... ... ... 5
1.2 Java servlet-тің 8
функциялары ... ... ... ... ... ... ... . ... ... ... ... ... .
1.3 JAVA Servlet-тың жұмыс барысы ... ... ... ... ... ... ... ... ... ... . 9
1.4 JSP ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 10
1.5 JSP технологиясының артықшылығы мен кемшілігі ... .. 11
1.6 JSP беттерінде Web-қосымшаларын 14
құру ... ... ... ... ... ... ... ..
1.7 JSP динамикалық Web бет технологиясы ... ... ... ... ... ... 13
1.8 JSP ның технологиялық тәсілдері ... ... ... ... ... ... ... .. 14
2 DB2 деректер қорын өңдеу жолдары ... ... ... ... ... ... ... 17
2.1 DB2- ның ерекшеліктері ... ... ... ... ... ... ... ... ... ... .. 18
2.2 SQL сұрау тілі 19
2.3 Адам мен компютер арасындағы өзара байланыстыру1... 22
2.4 Адам мен компютер арасындағы өзара байланыстыру2... 27
3 Кітапхана деректер қорын 30
құрастыру ... ... ... ... ... ... ... . ... ...
Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..3 3
Пайдаланған әдебиеттер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .35
Қосымша
Кіріспе
Жұмыста деректер қорын динамикалық Web-бетімен байланыстырудың жолдары
қарастырылған.
Бітіру жұмысындағы таңдаған тақырыбым сіздер үшін көп көмегін тигізеді.
Бұның барлығы адамзат баласының ой өрістеріңіздің даму сатыларынан,
біліммен ғылымның даму барысында пайда болған ғылыми сала. Кімде кім осы
мәліметтермен таныс болса сол интернеттегі жаңа жетістіктерге бір қадам
болсада жақындай түсетіні анық. Заман талабына қарай технологияда өзгеріп
отыратыны кімгеде болсада анық. Әлбетте адамдарда сол технологиялармен
ілесіп дамып отыруы керек деп ойлаймын. Жалпы алғанда Java –технологиясы
жаңа технология болып табылады оның ішінде интернет парақтарын жасайтын
адамдар үшінде JSP-беттері тамаша нәтижесін беруде, сонымен қатар бұл
технология үсті-үстіне дамып жатыр. Өздеріңіз көріп отырғандай интернетпен
қатар телекоммуникацияда көрсеткен нәтиженің өзі ғажайып көрініс екенін
бәрімізге аян. Жалпы айта кететін жайт осы Java –технологиясының тамаша
жетістігінің бірі телекоммуникация болып табылады, сонымен қатар
итернеттегі JSP-беттерінің қосқан үлесінің өзі қаншама. Сонымен қатар менің
тағы айта кететін үлесім Web – программистерге осы JSP-беттерінде өз
мүмкіндіктеріңізді бірет жүзеге асырып көрсеңіздер болғаны әрі қарай өз
дегеніңізге жететініңізге мен кәміл сенемін.
1 Web беттерін құрудың JAVA технологиясы
Tomcat server-і ол тегін код ашатын Web қолданылмалы server-і қазыргі
кездегі ең жаңа нұсқасы 6.0.14.Tomcat ол Apache қолданбалы
программа(Software) компаниясының (Apache Software Foundation) Jakarta
объектісінің негіздік бөлімі, оны Apache, Sun және басқа компания мен
жекелердің бірлесіп ашқан. Sun компанясының қатысуы мен қолдауының
арқасында Jsp мен Servlet-тің ең жаңа стандарты Tomcat арқылы жүзеге асып
отырды, Tomcat5 жаңадан шыққан Servlet2.4 пен Jsp2.0 стандартын қолдайды.
Tomcat технологиясы алғабасар, орнықты және тегін болғандықтан
қызығушылармен қолданбалы программа кампнияларының зор қызығушылығы мен
қолдауына ие болып, бүгінгі таңда кең көлемде қолданылып отырған Web
қолданылмалы server-іне айналды.
Tomcat көп бөлім программисттердің қолдауына ие болды өйткені оның іске
қосылған кездігі жүйе ресурстарынан алатын орны аз, кеңейтіліуі жақсы,
қызмет көрсету салмағы тұрақты және почта қызметін қолдау сияқты жүйелердің
қолданылуын арттыратын қасиеттерге(функцияларға) ие, оның үстіне ол
үздіксіз жаңарып және өзгеріп отырады, кез келген прогрпммист оған жаңа
функциялар қоса алады.
Tomcat кіші тұрпатты жеңіл қолданылмалы server, ол кіші, орта жүйелермен
клиенті көп болмаған жағдайда кең көлемде қолданылады, Jsp технолагиясын
кеңейту мен қолданудың бірінші талғамы. Алғаш үйренушілер былай деп қараса
болады:белгілі бір дербес компютерге Apache server-ін орнатқан соң оны
қолданып сәйкес HTML бетке сұраныс жасауға болады. Іс жүзінде Tomcat бөлігі
Apache server-інің кеңейтілуі, бірақ ол дербес атқарылады, сондықтан Tomcat
ты іске қосқанда ол Apache дан тәуелсіз дербес атқарылады.
Мүндағы маңыздысы дұрыс орнатылған Apache HTML парақтары үшін қызмет
атқарады, Tomcat Jsp мен Servlet үшін қызмет атқарады. Бұдан сырт Tomcat
Apache және IIS қатарлы Web server лерімен қатар HTML парақтары үшін қызмет
атқарады. бұдан сырт ол Jsp мен Servlet-ң контейнері, дербес Servlet-ң
контейнерін Tomcat үнсіз келісім арқылы таниды дегенмен, Tomcat тың
статикалы (static) HTML парақтарын біржақтылы ету қызметі Apache server-іне
жетпейді.
1.1 Tomcat web сервері
Сәйкесінше:
Servlet JSP Spec Apache Tomcat version
2.52.1 6.0.14
2.42.0 5.5.25
2.31.2 4.1.36
2.21.1 3.3.2
Tomcat ол Apache қолданбалы программа(Software) компаниясының (Apache
Software Foundation) Jakarta обиектісінің негіздік бөлімі, оны Apache, Sun
және басқа компаниялар мен жекелердің бірлесіп ашқан. Sun компанясының
қатысуы мен қолдауының арқасында Jsp мен Servlet-тің ең жаңа стандарты
Tomcat арқылы жүзеге асып отырды.
Tomcat 2001- жылы JavaWorld журналы жағынан жасампаздыққа ие Java-ң
өнімі ретінде таңдалды, бұдан оның маңызының қаншалықты зор екенін көруге
болады.
Tomcat4.0x –тың жаңа Servlt кантейнері Catalina, Servlet2.3 пен Jsp1.2
стандарттарын толықтай қолдады. Tomcat әр түрлі жүйелердің оны түсіріп
алуына қолайлылық жаратты, интернеттен кодын болмаса екілік кодын түсіріп
алуына болады. Java жүйе талдамайтын болғандықтан java-ға негізділген
Tomcat-та жүйе талдамайды. Дәстүрлі жүмыс столы қолданбалы
программасының(application) ұқсамайтын болғандықтан Tomcat-тағы қолданбалы
программа ол WAR(Web Archive) файылы. WAR ол Sun Web қолданбалы
программасының форматы, ол JAR мен ұқсас, яғни ол да, көптеген
құжаттардың(файылдардың) қысылыуы, бүл қоржындағы(пакеттегі) құжаттар
белгілі бір заңдылық бойынша топталған. әдетте оның мазмұнында HTML мен Jsp
құжаты немесе осы екі құжатты қамтыған мазмұн болады, бұдан сырт тағы WEB-
INF мазмұны бар, бұл мазмұн өте маңызды, өйткені онда web.xml құжаты мен
classes мазмұны бар, web.xml бұл қолданбалы программның құрылымдық файлы,
ал classes мазмұнында компилацияланған Servlet класы мен jsp немесе Servlet
иек артатын басқа кластар (мысалы JavaBean), әдетте мұндай иек артатын
кыластарды қоржынға салып JAR етіп сақтап WEB-INF астындағы libмазмұнына
қояды, әрине жүйенің CLASSPATH мазмұнына қоюғада болады, дегенмен олай
етсек басқаруға және көшіруге ыңғайсыз болады.
Tomcat-та қолданбалы программаның орналасуы өте қарапайым, тек WAR ды
Tomcat-тағы webapp мазмұнының ішіне қойса болғаны, Tomcat мұны автоматты
түрде оны тексереді және оны ашады. Егер browser де осы қолданылған jsp-ге
сұраныс жасасақ әдетте бірінші рет өте қарапайым болады,өйткені Tomcat, jsp-
ны servlet-ке айналдырады соңынан кампилациялайды, кампилацияланған соң
сұраныс жасау тез болады. Бұдан сырыт Tomcat тың тағы бір қолданылмалы
программасы бар, ол manager бұл программаға сұраныс жасау үшін қолданушының
аты және құпия цифр керек, қолданушының аты мен құпя цифр xml құжатында
сақталады. Бұл кезде Ftp ның көмегімен web арқылы алыстан басқаруға не
күшінен қалтыруға мұмкіндік береді, әрине, жергілікті желедеде басқаруға
болады.
Tomcat Servltt-ң кантинері болып қана қалмастан онда тағы дәстүрлі web
server-лерінің фунукциялары да бар мысалы: HTML парақтарын біржақтылы
ететін, бірақ Apache мен салыстырғанда оның статикалы HTML парақтарын
біржақтылы етеу қаблеті төмен. Біз былай істеуімізге болады Tomcat пен
Apache ды біріктіріп статикалы HTML парақтарын Apacheмен, ал Tomcat арқылы
Jsp мен Servlet-ты басқаруымызға болады, бұл үшін Tomcat пен Apache-дың
құрлымдық файылдарын өзгертсек болғаны.
Бұдан сырт Tomcat тағы Realm-ды қолдайды, Realm ол UNIX тағы group қа
ұқсайды.
UNIX тағы group ол жүйенің бір ресурсын береді, мәлім бір өзіне тисті
емес ресурсты танымайды, Tomcat, Realm-ды қолдау арқылы әртүрлі
қолдануларды(мысалы жұйе ресурстары) әр түрлі қолданушыларға(мысалы group )
жүктейді, құқығы жоқ қолданушы бұл қолдануды істете алмайды.
Tomcat 3 түрлі Realm ды ұсынады:
1. JDBCRealm: бұл Realm қолданушының информациясын деректер қорында
сақтап JDBC жетектеуші программсы(driver) арқылы тексеріс
жүргізеді.
2. JNDIRealm: қолданушының информациясын LDAP ке негізделген Server де
сақтайды, JNDI арқылы информацияны алады.
3. MemoryRealm: қолданушының информациясын xml құжатында сақтайды,
жоғарда айтылған maneger қолданылымы қолданушыны тексерген кезде
осы Realm ды қолданадану арқылы біздің қолданыстағы қолданушылармен
сұраныс жасауымыз қолайлы болады.
Tomcat4-те тағы Servlet2.3 тың ерекше жағдайды бақылау функциясын
қолдануға болады, яғни ол арқылы өзіңнің қолданыстағыларыңды немесе Session
ға тексерыс жұргызуге болады. Tomcat та бұдан басқада ерекшеліктер бар
мысала ол SSL мен бірігіп хауыпсыз тасымалдауды жүргізеді. Tomcat, JNDI ды
қолдайды, бұл J2EE Server-ң қызметімен ұқсас. Бұл арада әдетте көп
айтылатын қолданылмалы Server(мысалы WebLogic) мен. Tomcat тың
айырмашылығын айта кету керек, қолданылмалы Server J2EE-дың көптеген
ерекшеліктерімен қамдайды мысалы: JASS, JMS, EJB сонымен қатар JSP мен
SERVLET ты де қолдайды, ал Tomcat-ң фунукциялары мұндай күшті емес, ол EJB
ны қолдамайды бірақ JBOSS( бұрынғы қолданылмылы сервер) пен біріксе J2EE
ның барлық функцияларын қолдайды.Бұл жерде мынадай сұрақ туады қолданылмалы
Server де
Tomcat тың барлық фунукциялары бар екен ендеше Tomcat тың қажаты бар ма?
Іс жұзінде біз әдетте қолданылып жұрген кіші, орта
қолданылым(Application) EJB технологиясын қажет етпейді, олар үшін JSP мен
SERVLET жеткілікті бұл жерде біз қолданылмалы Server-ды қолдансақ онда біз
ысапшылық жасаған боламыз, ал Tomcat сыйымдылығы аз, орнатылуы қолайлы
біздің талабымызды қанағаттандырады, мұндай жағдайда біз әрине Tomcat ты
талдаймыз.
Tomcat-ң басты мақсаты JSP мен SERVLET ты қолдау, бұл өте қарапайым
әдеттегі текстк редакторды не IDE ды пайдаланып сосын оларды WAR қоржынында
сақтасақ болады.
java servlet тың қасиеттері
Servlet ол JavaServlet қолданбалы программасының интерфейсы(API) және
кластар мен әдістерді қамтыған java программсы, JavaServletAPI, ден басқа
Servlet APIге кеңейтілген және қосылған Java класының қоржындарын(пакеттер)
қолдана алады. Servlet, java ның Web Server-ін қолданылса немесе қолданбалы
серверде қолданылса осы сервердың қаблетін арттарады. JavaServlet тың web
Server арасындағы байланыс JavaApplet пен Web browser арасыныдағы
байланысқа ұқсас. Servlet, WebServer-іне орнатылған оның үстіне WebServer-
інң ішінде іске қосылады, ал Applet Web browser іне орнатылған Web browser
інің ішінде іске қосылады. JavaServlet Servlet пен Java арасындағы
стандартты интерфейсты белгіледі, бұл Servlet, қолданылмалы сервер және
жүйе арасындағы ұқсамастықтан туылатын қайшылықты шешып берді.
Servlet рамка құру арқылы сервердың қабылетін арттырды, яғни Web тегі
сұраныстарға сәйкесінше жауап береді. Клиент серверге сұраныс жіберген
кезде сервер сұраныс информациясын Servlet ке жібереді және Servlet Sevгer
дың клиентке берген жауабын қайтарады. Web серверін іске қосқан кезде
жалғасты жүріліп бұл барыс басқа клиенттер сұраныс жасағанға дейін
жалғасады.
1.2 java servlet тың функциялары
Servlet тың қамтыйтын көлемі өте кең мысалы оның төмендегідей
функциялары бар:
1. клиенттың сұранысы сипатына ие динамикалық мазмұндағы толық HTML бетін
құрады және қайтарады.
2. HTML бетінің бөліктерін бұнын болған HTML бетінде кіргізу
3. басқа серверлік русурстармен қатынас жасау( деректер қоры және java га
негізделген программалар)
4. көптеген клиенттермен байланысуды біржақтылы ету, көптеген
клиенттердің сұраныстарын қабылдау және нәтижені көптеген клиенттерде
жарялау(мысалы Servlet көптеген қатысушылары бар ойнның серверы бола
алады.)
5. біржақтылы жалғану тәсілімен деректерді тасымалдағанда, browser де
серверді ашып Applet ты жаңадан қосқанда осы байланыс ашық түрде
сақталады. Клиент пен сервер арасындағы қарапайым, жоғыры сапалы
сұраныс барысында Applet клиент browser мнен сервер арасыдағы
байланысуды жүзеге асырады. Байланысуды жүзеге асырады, белгіленген
заңдылықтар бойынша (мысалы IIOP)
6. еркеше жақадайдағы деректерді біржақтылы ету мысалы MIME типтегі
деректер( мысалы графиктерді алмастыру мен қызмет көрсету
порттары(SSI))
7. барлық Server лердің стандартты программсының біржақтылы етілгендермен
қамдайды.
1.3 Servlet-тың жұмыс барысы
Servlet интерфейсі javaх.servlet пакетіндегі сервлеттердің негізгі
программалауы болып табылады. Servlet – Java сервлеттер технологиясының
орталық абстракциясы. Әрбір құрылған сервлеттер айқын немесе айқын емес
javaх.servlet интерфейсін айқындау керек. Сервлеттің өмірлік циклі келесі
үш әдістермен анықталады: init, service, destroy.
Init( ) әдісі.
Init әдісі сервлеттер класының экземплярын құрғаннан кейін сервлеттер
контейнері арқылы шақырылады. Сервлеттер контейнері сервлеттерді тек бір
рет сервлеттерді көрсету үшін ғана шақырады. Сервлет қандайда бір сұраныс
алмай тұрып, бұл әдіс сәтті орындалуы керек.
Әдіс келесі сигнатурамен сипатталады:
public void init(ServletConfig config) throws ServletException
Сонымен қатар Init әдісінің бір маңыздылығы - сервлет контейнері web.xml
файлында осы приложение үшін жарияланған конфигурациялық мәнндерден тұратын
ServletConfig объектісін береді. Бұл әдіс ServletException исключениесін
туындатуы мүмкін
Service( ) әдісі.
Service әдісі init әдісінен кейін сервлетке сұраныстарға жауап беруге
мүмкіндік тудыру үшін, сервлет крнтейнері арқылы шақырылады.
Әдетте сервлеттер бір уақытта сұраныстар жиынын өңдей алатын
сервлеттердің көпағынды контейнерлері ішінде орындалады.
Бұл әдіс келесі сигнатурадан тұрады:
public void service(ServletRequest request, ServletResponse response)
throws ServletException, java.io.IOException
Сервлеттер контейнерлері ServletRecuest, ServletResponse объектілерін
береді. ServletRecuest объектісі клиент сұранысынан, ал ServletResponse
объектісі сервлет жауабын береді. Осы екі объектілер сервлеттің клиенттік
сұранысты қалай орындайтынын анықтайтын кодын жазуға мүмкіндік береді.
Бұл әдіс егер ServletException-да сервлеттің қалыпты жұмысына әсер ететін
исключениелер пайда болса, сол исключениелерді бақылайды.
Destroy( ) әдісі.
Сервлеттер контейнері destroy әдісін сервлет көшірмесін қызметтен өшірген
кезде шақырады. Бұл әдеттегідей сервлеттер контейнері өшірілген кезде
немесе сервлеттер контейнеріне қосымша еске сақтау орны керек болған
жағдайда жүзеге асырылады. Destroy әдісі сервлеттің service әдісіндегі
барлық ағындар орындалуы аяқталғанда, немесе күту периоды аяқталған соң
шақырылады. Осы destroy әдісін шақырғаннан кейін сервлеттер контейнері осы
сервлеттің service әдісін қайтадан шақырмайды.
Destroy әдісі сервлеттерге барлық қолданыстағы ресурстарды (мысалы, еске
сақтау, файлдар дискрипторы, ағындар орындалуы ) тазалауға мүмкіндік
береді.
Destroy әдісінің сигнатурасы:
public void destroy()
Сервлетті қосымшалардың қосымшалары
Жалпы сервлет java-ың классы болып табылады, яғни динамикалық
түрде жазылған (тіркелгнен) программа Web- серверде орындалады. Бұны
орындауға көмек тесетін сервлет контейнер деп аталады (Servlet
Container). Ең алғаш сервлет периодтарында ол оны процесті сервлет
деп атаған болатын (Servlet Engine). Сервлет клиентпен ықпалын
сұрау-жауаб моделі бойынша HTTP базасында жалғастырады. Көптеген
сервлеттр HTTP-мен жоғары дәрежеде орындайды. Клиентке жауапты
беру және сервер жауабын беру үшін контейнер сервлет протокол
ретінде HTTP-ы сүйемелдеу (подднрживать) керек.
Бірақ контейнер сервлет басқада протоколдарды сүйемелдеуі
мүмкін HTTPS (HTTP поверх SSL) қорғаныстағы транзакция үшін.
Төмендегі суреттен көріп отырғанымыздай сервлет қосымшаларының
архитектурасы екентін тани аласыздар.
JSP- қосымшаларында контейнер сервлет контейнер JSP-мен орын
алмасуы мүмкін . Жалпы барлық контейнерлер сервлет және JSP Web-
контейнерлер немесе контейнерлердің сервлеті JSP-деп жиі айтамыз.
Осы аталғандар әсіресе Web-қосымшаларын сервлет және JSP беттерінен
тұрады.
1.4 JSP негіздері
Интернет желісі әлі жас және толық жетілмеген. Тарихы қысқа.
Алғашында бұл Торда барлығы статистикалық беттерде болғанды. Егер сол
уақытты еске түсірсек, web-сайт тек HTML беттерінен тұрған. Web-сайт
максимум бір ғана парақтан құрылған, күні-бүгінге дейін “home page” деп
аталады.
Динамикалық мазмұндар шықаннан кейін “интернет-қосымша” мен “web-
қосымша” терминдері пайда болды. Web- қосымшасын Java тілінде құрғанда екі
негізгі архитектура қолданылады. Клиенттерге қызмет көрсету және бизнес-
логиканы өңдеуін бірінші архитектура JSP және сервлеттерді орта деңгейде
қолданылады. Бұл архитектура 1-ші суретте көрсетілген.
1-сурет. Сервлеттердің және JSP қосымшаларының архитектурасы
Бұл модельді кішігірім қосымшалар және орта деңгейлі қосымшалар
қолданады.
Екінші архитектурада J2EE сервері және Enterprise JavaBeans (EJB)
қолданылады, ол масштабты, қолданысты деңгейдегі үлкен қосымша құру үшін
тиімді. Бұл архитектура 2-ші суретте көрсетілген.
2-сурет. J2EE қосымшасының архитектурасы
Java серверлік беті өзімен тағы бір web- қосымшасын өңдеу үшін Java
технологиясын ұсынып отыр. Сервлеттер технологиясының web- технологиясында
ең жетілген және кең ауқымды қолданыс уақытында JSP іске қосылған. Бірақ
JSP сервлеттер орнын толықтара алмайды. JSP сервлеттер технологиясының
жетілген түрі болып саналады.
• JSP туралы қысқаша түсінік
• JSP технологиясының артықшылығы
• JSP технологиясының кемшлігі
• JSP ның 6 түрлі өзіндік обекті
• JSP динамикалық Web бет технологиясы
JSP туралы қысқаша түсінік
JSP (Java Server Page) ол Sun Microsystems компаниясының бастауымен және
басқа көптеген компанияларыдң қатысуымен бірлесіп жасаған динамикалы Web
бет жасау технологияы. JSP технологиясы ASP технологиясына біраз ұқсайды,
ол дәстүрлі HTML құжатына(*.htm, *html) java программасының бөлігі
(Scriptlet) мен jsp тегі(tag) ын қыстыру арқылы келіп шыққан JSP
құжаты(*.jsp). JSP де жасалған Web программасы жұйе талдамайды, ол LINUX те
және басқа жұйелерде де жүріле береді. JSP технологиясы java программалық
тілін қолданып XML класының tag мен scriptlet ын құру арқылы динамикалы web
бетты біржақтылы ету логикасы. Веб бет теғы tag мен scriptlet арқылы
интерфейстегі ресурстарға сұраныс жасау логикасы. JSP веб беттік логикасы
мен дизайынын бөліп қарайды, маңызды компаненттерге жобалау жасауды
қуаттайды, Web ке негізделген қолданбалы программаларды ашуды тездетті және
оңайлатты.
Web севері JSP ге жасалған сұранысты қабалдағанда, алдымен оның ішіндегі
программаны орындайды, онан соң соңғы нәтижені JSP ның HTML кодымен қосып
клиентке қайтарып береді. Қыстырылған java программасы деректер қорымен
жұмыс жасауға, қайтадан веб бетке қайтып келу секілді динамикалы веб бет
талабын қанағаттандырады.
JSP мен JavaServlet ұқсас екеуіде бірдей сервер бөлігінде жүріледі,
әдетте клиенттке қайтаратыны HTML құжаты, сондықтан сервер тек браузер
болса болғаны көруге болады.
JSPның 1.0 стандартының соңғы нұсқасы 1999 жылы 9 айда жариялады, 12
айдатағы 1.1 стандартын жариялады, бүгінгі таңда біраз жаңа нұсқасы
JSP1.2стандарты, JSP2.0 стандарның нұсқасының аңыс бақылау нұсқасы да
жарыққы шықты.
JSP беті HTML содынаjava ны қыстырудан келіп шыққан. Сервер клиенттен
сұраныс келіп түскен соң осы java программларын біржақтылы етеді, соңынан
келіп шыққан HTML бетін клиенттегі браузерге қайтарады. JavaServlet JSP
технологиясының негізі, оның үстіне ірі көлемдегі Web қолданбалы
программасын құру JavaServlet мен JSP бірккенде ғана іске асады. JSP java
программасның қарапайым, қолдануға ыңғайлы, бүтіндей обектіге
бағтталғандық, жүйеге байланыссыздық , хауыпсыздық сынды ерекшеліктерін ала
білді, маңыздысы интернет тың барлқ ерекшелігін ала білді.
1.5 JSP технологиясының артықшылығы мен кемшлігі
1. бір рет компилацияланған, соң кез-келген жерде атқарыла береді. Бұл
жағынан Java PHP ег салыстарғана әлде қайда мықты, жүйеден басқа соддарды
өзгертудің қажеті жоқ.
2. жүйе талдамайтындығы. Негізінен барлық жүйелердің кез-келген ортасында
іске қосыла береді, кез-келген ортада орналастыруға, кеңейтуге мүмкіндік
бар. ASPPHP шектемелігімен салыстырғанда әлде қайда жеңіл.
3. ірі көлемдегі серппелігі. Бір кішкене jar пакеті арқылы ServletJSP ты
іске қосуға болады, көп клиентті серверлер шоғырында да бір қалыпты жұмыс
жасай алады, көп дербес компютерлдерде Application арқылы бірақтылы ету,
информацияларды біжақтылы ету, бір сервер, көп серверлер үшін java өзінің
өмір шеңдігін көрсете білді.
4. вниверсалдылықпен қуатты инструменнтерді қолдау.Бұл жағынан ASP ге қатты
ұқсайды, java да көптеген үздік инструменнтер бар, оның үстінен олардың
көпшілігін тегін алуға болады, енді бір жағынан олардың көп бөлімі жұйе
талдамайды.
JSP технологиясының кемшлігі
1. ASP сяқты JAVA ның бірсыпра артықшылықтары оның кемшіліктерінің
келу қайнары. Жүйе талдамау, серіппелік секілді еркешеліктері оның
күрделілігін артырды.
2. JAVA ның жұмыс барысы class тың ұзақ уақыт ішкі жадыда сақталып
тұруы арқасында атқырылады. Сондықатан ол кейбір ржайғадайда
қолданған ішкі жадыда алатын орны онық қолданушыларымен
салыстырғанда әлде қайда аз. Енді бір жағынан, ол тағы қатты
дисктегі(hard disk) біраз орын алып оған бірсыпрыа. java құжаттары
мен class құжаттарын сақтайды.
JSP ның 6 түрлі өзіндік обекті
Request, response, out, session, application, confing, pagecontext, page,
exception.
1-обект request:
Бұ обект қолданушының жіберген информациясын қораптайды. Бұл обектке сәйкес
әдісті қолдану арқылы қораптағы информацияларды алуға болады.
2-обект response:
Қолданушының сұранысына динамикалы түрде жауап береді, клиенттік
интерфейске мәліметтер жібіреді.
3-обект session:
1. session дегеніміз не: session обекті JSP ның өзіндік обекті, ол JSP
ның бірінші бетімен бірге автоматты түрде құрылады, диалогтык
басқаруды біржақтылы етеді.
Белгілі бір клиенттың браузерді ашып серверге қасылғаннан бастап,
оның браузерді өшіріп осы сервердің жұмысын тоқтатқанға дейі, бір диалог
аталады. Белгілі бір қолданушы серверге сұраныс жасаған кезде, осы
сервердің бірнеше бетінде қайталанған жалғануладрды сұрауы мұмкін, бір
бетті бірнеше рет қайталай жаңартулары мұмкін, сервер міндетті түрде
белгілі бір тәсілді қолданып мұның бір қолданушы екенін таба білуі керек,
міне бұл session обектінің міндеті.
2. session обектінің ID: бір клиент серверге алғаш JSPбетіне сұраныс
жасаған кезде JSP маторы session обектыін құрады, сонымен бірге String
типіндегі ID ды бөледі, JSP маторы осы ID ды клиент бөлігіне жіберіп
Cookie де сақтайды, осылай істегенде session обекті мен клиент
арасында бір-біріне сәйкес байланыс қалыптасты деген сөз. Клиент осы
сервердің басқа беттеріне сұраныс жасаған кезде, оған тағы жаңа бір
session ды бөлудің қажеті жоқ, тек клиент браузерды өшірген кезде ғана
сервер осы клиенттың серверін өшіреді, оның үстіне клиенттің диалог
сәйкестігі жоғалады. Клиент қайтадан брауздерді іске қосып сервермен
байланысса, сервер осы клиент үшін session обектін қайта құрады.
4. application обекті:
1. application деген не
сервер іске қосыла салысымен-ақ application обекті құрылады, клиент
сұраныс жасаған Web беттерінің әр парақтарын қарағанда, осы обекті тек
біреуғана болады, сервер өшкенге дейін.Дегенмен session мен ұқсамайтыны,
барлық қолданушылардың application ны бәріне ортақ тек біреуғана болады,
барлық қолданушылар өзінде орнатылған application ге жол ашықты болсада.
2.application обектінің үнемі қолданатын әдістері:
( 1) public void setAttribute(String key, Object obj): Object
параметрі белгіліген obj обектін application обектіне салады, сонымен
бірге қосылған обектіге тіркелген кілттік сөзін белгілейді.
(2) public Object getAttribute(String key): application обектінің
ішіндегі кілттік сөзі бар обектілерді алады.
5. out обекті:
Out обекті ол ағын, клиентке деректерді шығару үшін қолданады. Out
обекті әртүрлі обектілерді шығару үшін керек.
6.Cookie:
1. Cookie деген не:
Cookie ол Web серверінің қолданушының қатты диксінде сақталған бір
текст. Cookie Web сайттың қолданушының компютеріде информациялар
сақтауына және оларды алуына мүмкіндік береді. Мысалы белгілі бір Web
сайт әрбір қолданушы үшін бір ID құруы мүмкін, соңынан оны Cookie
формасына әрбір қолданушының компютерінде сақтайды.
Еген сіз IE браузерін қолданып Webке сұраныс жасасаңыз, онда сіз өз
қатты дискіңізде сақталған барлық Cookie ды көре аласыз. Олардың үнемі
сақталатын орны: c\widows\cookies(егерWindows2000 болса c:\Documents and
Settings\ қолданушы аты\Cookies)
Cookie” кілттік сөз key=value мәні” форматы ретінде естелікке алынад.
3.Cookie обектін құру, Cookie обектінің структурасын қолданып Cookie ды
құруға болады. Cookie обектінің структурасының char типіндегі екі
параметірі бар: Cookie аты мен Cookie мәні.
Cookie c=new Cookie(“user name”, “john”);
3.JSP де қорапталған Cookie обектісін клиентке жіберу керек болса
response тың add Cookie( ) әдісі қолданылаы.
Форматы: response.add Cookie(c)
3. клиенттік интерфейсте сақталған Cookie ды оқыу үшін, request обектінің
getCookie( ) әдісі қолданылады. Қолдану барысында барлық клиенттер
жіберген Cookie обектісін бір массмвке сақтайды, егер талапқа сай
Cookie ды тапса, циклде массивтың кілттік сөздерін салыстырады.
1.6 JSP беттерінде Web-қосымшаларын құру
JSP –негіздері. (Java Server Page) JPS- бұл серверлі Java беттері
Web-қосымшаларын өңдеуге тағы бір Java технологиясын ұсынады. JPS - өзінің
ерекшелігімен жер әлемге таралғанда Web – технологияларына өзі ғана рухсат
және Web – технологияларын өзі ғана бағындыратын технологияны бірі болған
кезде қолданысқа кеңінен енген . Бірақ JSP сервлетпен ауыспады нақты
айтқанда JSP кең етек алған сервлеттердің бірі болып табылады . Сервлетпен
Web-қосымшалардың жалпы негізгі қолданысы құрамы болады. JSP беттері
қарапайым болып татылғандығы сондай API мәләметтері секілді секілді үлкен
болмайды . Бірақ сонда да жоғары дәрежелі программист Java программалау
тілін қалай тамаша білетін болса JSP – серлетінде сондай дәрежеде керемет
білуі қажет. Тіпті керек десеңіз Web-қосымшаларында Java қабылданса , онда
сервлеттіңде маңызы зор екенін естен шығармаған жөн . Біз бұны алдағы
бөлімдерде мысалмен көрсететін боламыз. JSP – беттерінде HTTP протоколдары
жұмыс істейді , сол себепті де HTTP сұрауларды қабылдап HTTP жауаптарын
қайтарады . HTTP сұраулары параметрлермен , сұрау атрибуттарымен ,сеансты
басқару құралымен cookie , URL – гі қайта жазылуымен орындвлады. Бұл
бөлімде JSP және сервлет қарым қатынасын анықтайтын боламыз. Мын жерде біз
JSP – технологиясын карастырып көрейік және орындап көру үшін біраз
мысалдар көрсете кеткенді жөн көріп отырмыз. Ол үшін біз JSP беттерін жасап
, оны *.jsp файл ретінде сақтап оны іске сырамыз ( әрбір жазылған
программаны *.jsp файл ретінде сақтау кере екенін ұмытпаған жөн ). Ол үшін
біз Томкат (Tomcat) деп аталатын сервер орнатып оның ішінде webapps –
MyJSP катологының ішіне сақтаймыз . Оны браузерден көру үшін бізге тек
http:localhost:800MyJSP ... .*.j sp деп оны қолданысқа жібереміз. Мысалы
жай қарапайым мысал :
HTML
TITLE The page of JSPTITLE
BODY
HELLO I am a JSP!!!
BODY
HTML
а)- мысал
Сондай ақ бұдан басқа мысалдардыда келтіруге болады . Әрине
жоғарыдағы келтіпілген мысал жанжақты программист үшін тиімсіз,
пайдасы жоқ дер айтуымызға болады.
Әйтседе бұдан біз мынадай көре аламыз нәтиже көре аламыз .
Төмендегі 1.0- суретте көрсетілген.
3-сурет
Біз жоғарыда көрсеткен мысалымыз нақтырақ болсын деп тағы бір
мысал көрсете кеткенді жөн деп отырмыз.
HTML
TITLE The page of JSPTITLE
BODY
%
out.println (“HELLO I am a JSP!!! “);
%
BODY
HTML
b)- мысал
Бұдан көретіндеріңіз дәл 3-сурет, а)-мысалына қарағанда b)- мысалы
анағұрлым тиімдірек.Әйтседе бұл жоғарыда көрсеткен фактілерді
үйлестіреді, яғни JSP барлық кодтарға бірдей келе бермейді , сонда
да оны HTML тегтерімен үйлестіріп арасына қойып жазуға болады.
JSP-қосымшаларында JSP – деген атауы болмаса , оның кодттары
программистерге таныс Java кодттарын қолданамыз. Бірақ оны мыны
тегтің ішіне жаза аламыз % java коды %
b)- мысалында біз тегтің ішіне жазылған өзімізге таныс out.println
функциясын көріп отырмыз, егер шынайы программист оның не істегенін
аңғаратын болса оны түсіну қиын емес , яғни өздеріңізге белгілі
java кодында қолданылатын текстерді жіберу шығару үшін көбірек
қолданылатын функция.
Java – тіліндегі сервлет беттері (JSP) өзімен бірге керемет ғажайып
икемді қолдану үшін стандартты интернет клданбалы Java-сервлет (Java
Servlet API) функционалды мүмкіндіктерін кеңейтеді. HTML – беттерінде
Java-ны құрал ретінде ұсына алады.
Java- сервлет, Java-аплет бұлар серверде сұраушылардың көмегімен
орындалады. Сервлет функционалды мүмкіндіктерді Web-серверде тар әрі
қысқа жолмен ұлғаяды. CGI- келісімімен рұхсатт етілсе және алдыңғы
ең үлкен дәрежелі мобильдік құралмен сервлет атауы келіп қосылатын
сервлет және аплет терминдерін білімдірек жасайды.
Java-аплет Java тілінде жазылатын шағынғана программа. Web-серверде
мобильдік Java байт коды сақталып тұрады. Аплетті шақыру HTML –
беттерінде арнайы тіл белгісімен орындайды және шақырылған кезде
кленттік Web-броузерде , кленттік машинада орындалады. Аплетті
орындау виртуалды Java-машина құралында жүзеге асырылады.
CGI (Common Gateway Interface , Общий Межсетевой Интерфейс) Жалпы
Жүйеаралық Интерфейс- стандарт IETF Web-сервер сервер жағында ішкі
программаның орындалуының, Web-сервер қатынасы болып табылады.
HTML –форманың көмегімен клиентке жүйедегі рұхсат жекленген
орындалуы үшін JSP- беттері Web-беттеріндегі Java коды динамикалық
қалыптасудан қолданушының графикалық интерфейсті айыра алады яғни
мәліметтерді басқаруға және атқаруға қосымша бет жасайды. Web-
беттеріндегі үлке басым өңдеуді JSP – беттіндегі өңдеу деп атайды.
Мысал: JSP бетіде ағымдағы уақыт және күн мерзімі.
Date.jsp - файлы
% @ page language = “java” errorPage=“errorpage.jsp”
import = “java.util.*” contentType=“texthtml”
%
HTML
HEAD
TITLEHello World – %= new Date() %TITLE
HEAD
BODY
H1How are you today?H1
It is now
%
Date myDate = new Date();
String[] Dow = new String[] {“”, “Sunday”,“Monday”,“Tuesday”,
“Wednesday”,“Thursday”, “Friday”,“Saturday”
};
String[] Ap = new String[] {“AM”, “PM”};
out.print(myDate);
Calendar cal = Calendar.getInstance();
cal.setTime(myDate);
out.print(“BRIt’s currently day” +
cal.get(Calendar.DAY_OF_YEAR) + “of this year.”);
out.print(“BRIt’s day”+cal.get(Calendar.DAY_OF_WEEK) +
“(”+Dow[cal.get(Calendar.DAY_OF_WEE K)]+“) of the week.”);
out.print(“BRIt's now”+Ap[cal.get(Calendar.AM_PM)]+“” .Good“);
if (cal.get(Calendar.AM_PM) == 0)
out.print(“Morning.”);
else
out.print(“Afternoon.”);
out.print(“BRTo be precise”+cal.get(Calendar.MILLISECO ND)+
“milliseconds have passed today”);
out.print(“BRIt’s currently week”+
cal.get(Calendar.WEEK_OF_YEAR) + “of this year.”);
%
BODY
HTML
___________________________________ __________
Біз осы код нәтижесінде төмендегі суретті Web-броузерден көре
аламыз!!!
3)-сурет
6. JSP динамикалық Web бет технологиясы
Ертеректе динамикалы Web беттерінде CGI-BIN интерфейсі
қолданылатын, программист интерфейспен қатысты болған дербес програма
мен Web ке негізделген программаны өзі жазады. Соңғысы Web серверін
қолдану арқылы алдыңғысын қолданады.Бнұдай технолагияда кеңейтілудің
үлкен проблеммасы бар, яғыни әрбір жаңа CGI пограммасы серверде жаңа
барысты құруды талап етеді. Көптеген қаолданушылар жергілікті
сұраныстарды жіберсе, бұл барыс Web серверінің барлық ресурысын
қолданып бітеді, бұл оның бүлініуін келтіріп шығарады.Осы қыйыншылықты
шешу үшін қолданбалы программакомпаниясы Activ Servere Page(ASP)
технологиясын ұсынды, бұл технология “қыстырыу” мен API ды қолданып
Web қолданбалы программасын қарапайымдастырды.ASP, CGI мен
салыстырғанда артықшылығы ол HTML тектерін қамтығандығы, деректер қоры
мен есепсіз толықтырылған ActiveX кампанентын тікелей сақтауға болады,
сондықтан пограмма компиляция жағынын икемділігі өте күшті. Дегенмен
бұл технология осы программаны шығарғн компания шығарған жүйелермен
шектелетіндіктен, яғныи негізінен IIS қолданбалы программасының
құрлымында ғана қолданылады, сондықтан ASP Webсерверінің жүйе
талдамайтын талабын қанағаттандыра алмады.
Hypertext Preprocessor және PHP динамикалық Web бет технологиясы
ASP секілді олда HTML файылының серверлік сценарий тілі, оның
грамматикасы C, Java, Perl қатарлы тілдерге ұқсайды, дегенмен өзіндік
дербес ерекшелігі де бар, бұл тілді Web программистер қолданып
деинамикалық веб бетті оңай құра алыд. PHP көбінесе Unix жүйесінде
GUMLinux жіне Windows жүйелерінде жүріледі. PHP дың ерекшеллігі:
орнату қолайлы, үйренуге жеңіл, деректер қорымен байланысу ыңғайлы,
кіріктірілуі күшті, кеңейтілуі күшті; обектіге бағытталғар пограммны
жазуға болады. Бірақ PHP де де кемшіліктер бар, ол бастысы
интерпритацияланатын тіл, ол көп сызызтылықты қолдамайды, қолдайтын
жүйелер мен деректер қоры шектеулі, әсіресе қолдайтын стандарты
ежелден жетіскен емес еді, кейбір электронды коммерциялар үшін PHP
ыңғайсыз.
Тағы бірнеше технологиялар бар мысалы: JavaServlets бұл
технологияны қолданып интерационды сервер кодын оңай жазуға болады,
бір JavaServlets программасы ол Java ға негізделген серверлік ортада
жүрілетін программа(Applet ке ұқсамайды, соңғысы брауздерде жүріледі),
программист осындай бір программа жазу арқылы Web браузерінен келген
HTTP сұраныстарын қабылдап динамикалы сәйкестік құрады(мұндай
сұранысты деректер қорын тексеру арқылы ондауы мұмкін), соңынан HTML
немесе XMLды қамтыған құжатты сәйкес браузерге жеткізп береді. Бұл
технологияны қарапайым бет жобалаушылар үшін игеру қыйынға соғады. Бұл
тәсілді қолдану үшін бүкіл веб сайт бүтіндей JavaServlets те құрылыуы
керек. Егер программист немесе Web басқарушы беттің көрунуін
реттемекші болса онда бүкіл программаны қайтадан жазуы керек.
Sun Microsystems Inc компанясы және басқа комерциялармен бірлесіп Web
сервер, қолданылмалы сервер, жүйені сату, инструменттерді ашыу
барысында бұрыннан болған Java программасын(Java Server мен JavaBeans)
тұрақтанырып оған бір қатар толықтырулар мен жаңартулар енгізді, Web
қолданбалы программасына негізделген әдіс JavaServerPage
технологиясы(JSP) бұндай динамикалы веб бет технологиясының
төмендегідей ерекшілігі бар:
• кез-келген Web қолданбалы программасы мен серверде атқарыла
береді.
• Қолданбалы прграмманың логикасы мен беттік дизайынын бөліп
қарады.
• Атқырылыуы жылдым.
• Web ге негізделген ... жалғасы
Бітіру жұмыстың тақырыбы:
“DB2 деректер қорында web программалау”
Бітіру жұмысы 42 беттен, теориялық және практикалық жұмыстардан
кіріспеден, қорытындыдан, әдебиеттер тізімінен тұрады. Ол үш тарауға
бөлінген.
Бірінші тарауда серверде динамикалық веб беттерін құрушы сервлеттер(Java
кдастары) қарстырылған. Сервлеттің класының құрлымы, шамалары мен әдістері
жазылған. JSP беттерінің бағдарламалық қасиеттері мен мүмкіндіктері толық
көрсетілген. Осы тарауда JSP бетінің сервлетке түрлендіру мұмкіндігі
JavaBean кластарын құру мен пайдалану ерекшеліктеріде жазылған.
Екінші тарауда DB2деректер қорын басқару жұйесінде жұмыс істеу жолдары
қарастырылған. Деректер қорын өңдеудің SQL сұрау тілінің қолдану
мүмкіндіктері жазылған.
Үшінші тарауда дипломдық жоба ретінде кітапхана деректер қорын
ұйымдастыру көрсетілген
Кілтті сөздер: HTML - web парақтар, JavaServer Pages, Servlet, Java,
Enterprise Java Beans (EJB), Apache Tomcat сервері, сервер мен клиент,
интернет, деректер қоры, DB2.
Берілген жұмыс Java технологиясын қолданып динамикалы веб бет құруға
арналған. Бұл жобаны іске асыру үшін: Java J2EE технологиясы, веб беттің
статикалық бөлімін жасау үшін: HTML, динамикалық бөлігін құру үшін: JSP
және Servlet технологиялары, деректер қорын өндеу үшін: DB2, деректер
қорымен байланыс орнату үшін: JDBC драйвері және осы барлық істерді
орындау үшін Apache Tomcat сервері қолданыды.
Бітіру жұмыстың негізгі мақсаты: динамикалық веб бет құру жолдарын
талдап және де оларға қолданылатын технологиялар түрлерін қарастырып,
зерттеу болып табылады.
мазмұны
кірсрпе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 2
1. Web беттерін құрудың JAVA технологиясы 5
1.1 Tomcat web сервері ... ... ... ... ... ... ... ... ... ... ... ... .. ... ... ... 5
1.2 Java servlet-тің 8
функциялары ... ... ... ... ... ... ... . ... ... ... ... ... .
1.3 JAVA Servlet-тың жұмыс барысы ... ... ... ... ... ... ... ... ... ... . 9
1.4 JSP ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 10
1.5 JSP технологиясының артықшылығы мен кемшілігі ... .. 11
1.6 JSP беттерінде Web-қосымшаларын 14
құру ... ... ... ... ... ... ... ..
1.7 JSP динамикалық Web бет технологиясы ... ... ... ... ... ... 13
1.8 JSP ның технологиялық тәсілдері ... ... ... ... ... ... ... .. 14
2 DB2 деректер қорын өңдеу жолдары ... ... ... ... ... ... ... 17
2.1 DB2- ның ерекшеліктері ... ... ... ... ... ... ... ... ... ... .. 18
2.2 SQL сұрау тілі 19
2.3 Адам мен компютер арасындағы өзара байланыстыру1... 22
2.4 Адам мен компютер арасындағы өзара байланыстыру2... 27
3 Кітапхана деректер қорын 30
құрастыру ... ... ... ... ... ... ... . ... ...
Қортынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..3 3
Пайдаланған әдебиеттер ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .35
Қосымша
Кіріспе
Жұмыста деректер қорын динамикалық Web-бетімен байланыстырудың жолдары
қарастырылған.
Бітіру жұмысындағы таңдаған тақырыбым сіздер үшін көп көмегін тигізеді.
Бұның барлығы адамзат баласының ой өрістеріңіздің даму сатыларынан,
біліммен ғылымның даму барысында пайда болған ғылыми сала. Кімде кім осы
мәліметтермен таныс болса сол интернеттегі жаңа жетістіктерге бір қадам
болсада жақындай түсетіні анық. Заман талабына қарай технологияда өзгеріп
отыратыны кімгеде болсада анық. Әлбетте адамдарда сол технологиялармен
ілесіп дамып отыруы керек деп ойлаймын. Жалпы алғанда Java –технологиясы
жаңа технология болып табылады оның ішінде интернет парақтарын жасайтын
адамдар үшінде JSP-беттері тамаша нәтижесін беруде, сонымен қатар бұл
технология үсті-үстіне дамып жатыр. Өздеріңіз көріп отырғандай интернетпен
қатар телекоммуникацияда көрсеткен нәтиженің өзі ғажайып көрініс екенін
бәрімізге аян. Жалпы айта кететін жайт осы Java –технологиясының тамаша
жетістігінің бірі телекоммуникация болып табылады, сонымен қатар
итернеттегі JSP-беттерінің қосқан үлесінің өзі қаншама. Сонымен қатар менің
тағы айта кететін үлесім Web – программистерге осы JSP-беттерінде өз
мүмкіндіктеріңізді бірет жүзеге асырып көрсеңіздер болғаны әрі қарай өз
дегеніңізге жететініңізге мен кәміл сенемін.
1 Web беттерін құрудың JAVA технологиясы
Tomcat server-і ол тегін код ашатын Web қолданылмалы server-і қазыргі
кездегі ең жаңа нұсқасы 6.0.14.Tomcat ол Apache қолданбалы
программа(Software) компаниясының (Apache Software Foundation) Jakarta
объектісінің негіздік бөлімі, оны Apache, Sun және басқа компания мен
жекелердің бірлесіп ашқан. Sun компанясының қатысуы мен қолдауының
арқасында Jsp мен Servlet-тің ең жаңа стандарты Tomcat арқылы жүзеге асып
отырды, Tomcat5 жаңадан шыққан Servlet2.4 пен Jsp2.0 стандартын қолдайды.
Tomcat технологиясы алғабасар, орнықты және тегін болғандықтан
қызығушылармен қолданбалы программа кампнияларының зор қызығушылығы мен
қолдауына ие болып, бүгінгі таңда кең көлемде қолданылып отырған Web
қолданылмалы server-іне айналды.
Tomcat көп бөлім программисттердің қолдауына ие болды өйткені оның іске
қосылған кездігі жүйе ресурстарынан алатын орны аз, кеңейтіліуі жақсы,
қызмет көрсету салмағы тұрақты және почта қызметін қолдау сияқты жүйелердің
қолданылуын арттыратын қасиеттерге(функцияларға) ие, оның үстіне ол
үздіксіз жаңарып және өзгеріп отырады, кез келген прогрпммист оған жаңа
функциялар қоса алады.
Tomcat кіші тұрпатты жеңіл қолданылмалы server, ол кіші, орта жүйелермен
клиенті көп болмаған жағдайда кең көлемде қолданылады, Jsp технолагиясын
кеңейту мен қолданудың бірінші талғамы. Алғаш үйренушілер былай деп қараса
болады:белгілі бір дербес компютерге Apache server-ін орнатқан соң оны
қолданып сәйкес HTML бетке сұраныс жасауға болады. Іс жүзінде Tomcat бөлігі
Apache server-інің кеңейтілуі, бірақ ол дербес атқарылады, сондықтан Tomcat
ты іске қосқанда ол Apache дан тәуелсіз дербес атқарылады.
Мүндағы маңыздысы дұрыс орнатылған Apache HTML парақтары үшін қызмет
атқарады, Tomcat Jsp мен Servlet үшін қызмет атқарады. Бұдан сырт Tomcat
Apache және IIS қатарлы Web server лерімен қатар HTML парақтары үшін қызмет
атқарады. бұдан сырт ол Jsp мен Servlet-ң контейнері, дербес Servlet-ң
контейнерін Tomcat үнсіз келісім арқылы таниды дегенмен, Tomcat тың
статикалы (static) HTML парақтарын біржақтылы ету қызметі Apache server-іне
жетпейді.
1.1 Tomcat web сервері
Сәйкесінше:
Servlet JSP Spec Apache Tomcat version
2.52.1 6.0.14
2.42.0 5.5.25
2.31.2 4.1.36
2.21.1 3.3.2
Tomcat ол Apache қолданбалы программа(Software) компаниясының (Apache
Software Foundation) Jakarta обиектісінің негіздік бөлімі, оны Apache, Sun
және басқа компаниялар мен жекелердің бірлесіп ашқан. Sun компанясының
қатысуы мен қолдауының арқасында Jsp мен Servlet-тің ең жаңа стандарты
Tomcat арқылы жүзеге асып отырды.
Tomcat 2001- жылы JavaWorld журналы жағынан жасампаздыққа ие Java-ң
өнімі ретінде таңдалды, бұдан оның маңызының қаншалықты зор екенін көруге
болады.
Tomcat4.0x –тың жаңа Servlt кантейнері Catalina, Servlet2.3 пен Jsp1.2
стандарттарын толықтай қолдады. Tomcat әр түрлі жүйелердің оны түсіріп
алуына қолайлылық жаратты, интернеттен кодын болмаса екілік кодын түсіріп
алуына болады. Java жүйе талдамайтын болғандықтан java-ға негізділген
Tomcat-та жүйе талдамайды. Дәстүрлі жүмыс столы қолданбалы
программасының(application) ұқсамайтын болғандықтан Tomcat-тағы қолданбалы
программа ол WAR(Web Archive) файылы. WAR ол Sun Web қолданбалы
программасының форматы, ол JAR мен ұқсас, яғни ол да, көптеген
құжаттардың(файылдардың) қысылыуы, бүл қоржындағы(пакеттегі) құжаттар
белгілі бір заңдылық бойынша топталған. әдетте оның мазмұнында HTML мен Jsp
құжаты немесе осы екі құжатты қамтыған мазмұн болады, бұдан сырт тағы WEB-
INF мазмұны бар, бұл мазмұн өте маңызды, өйткені онда web.xml құжаты мен
classes мазмұны бар, web.xml бұл қолданбалы программның құрылымдық файлы,
ал classes мазмұнында компилацияланған Servlet класы мен jsp немесе Servlet
иек артатын басқа кластар (мысалы JavaBean), әдетте мұндай иек артатын
кыластарды қоржынға салып JAR етіп сақтап WEB-INF астындағы libмазмұнына
қояды, әрине жүйенің CLASSPATH мазмұнына қоюғада болады, дегенмен олай
етсек басқаруға және көшіруге ыңғайсыз болады.
Tomcat-та қолданбалы программаның орналасуы өте қарапайым, тек WAR ды
Tomcat-тағы webapp мазмұнының ішіне қойса болғаны, Tomcat мұны автоматты
түрде оны тексереді және оны ашады. Егер browser де осы қолданылған jsp-ге
сұраныс жасасақ әдетте бірінші рет өте қарапайым болады,өйткені Tomcat, jsp-
ны servlet-ке айналдырады соңынан кампилациялайды, кампилацияланған соң
сұраныс жасау тез болады. Бұдан сырыт Tomcat тың тағы бір қолданылмалы
программасы бар, ол manager бұл программаға сұраныс жасау үшін қолданушының
аты және құпия цифр керек, қолданушының аты мен құпя цифр xml құжатында
сақталады. Бұл кезде Ftp ның көмегімен web арқылы алыстан басқаруға не
күшінен қалтыруға мұмкіндік береді, әрине, жергілікті желедеде басқаруға
болады.
Tomcat Servltt-ң кантинері болып қана қалмастан онда тағы дәстүрлі web
server-лерінің фунукциялары да бар мысалы: HTML парақтарын біржақтылы
ететін, бірақ Apache мен салыстырғанда оның статикалы HTML парақтарын
біржақтылы етеу қаблеті төмен. Біз былай істеуімізге болады Tomcat пен
Apache ды біріктіріп статикалы HTML парақтарын Apacheмен, ал Tomcat арқылы
Jsp мен Servlet-ты басқаруымызға болады, бұл үшін Tomcat пен Apache-дың
құрлымдық файылдарын өзгертсек болғаны.
Бұдан сырт Tomcat тағы Realm-ды қолдайды, Realm ол UNIX тағы group қа
ұқсайды.
UNIX тағы group ол жүйенің бір ресурсын береді, мәлім бір өзіне тисті
емес ресурсты танымайды, Tomcat, Realm-ды қолдау арқылы әртүрлі
қолдануларды(мысалы жұйе ресурстары) әр түрлі қолданушыларға(мысалы group )
жүктейді, құқығы жоқ қолданушы бұл қолдануды істете алмайды.
Tomcat 3 түрлі Realm ды ұсынады:
1. JDBCRealm: бұл Realm қолданушының информациясын деректер қорында
сақтап JDBC жетектеуші программсы(driver) арқылы тексеріс
жүргізеді.
2. JNDIRealm: қолданушының информациясын LDAP ке негізделген Server де
сақтайды, JNDI арқылы информацияны алады.
3. MemoryRealm: қолданушының информациясын xml құжатында сақтайды,
жоғарда айтылған maneger қолданылымы қолданушыны тексерген кезде
осы Realm ды қолданадану арқылы біздің қолданыстағы қолданушылармен
сұраныс жасауымыз қолайлы болады.
Tomcat4-те тағы Servlet2.3 тың ерекше жағдайды бақылау функциясын
қолдануға болады, яғни ол арқылы өзіңнің қолданыстағыларыңды немесе Session
ға тексерыс жұргызуге болады. Tomcat та бұдан басқада ерекшеліктер бар
мысала ол SSL мен бірігіп хауыпсыз тасымалдауды жүргізеді. Tomcat, JNDI ды
қолдайды, бұл J2EE Server-ң қызметімен ұқсас. Бұл арада әдетте көп
айтылатын қолданылмалы Server(мысалы WebLogic) мен. Tomcat тың
айырмашылығын айта кету керек, қолданылмалы Server J2EE-дың көптеген
ерекшеліктерімен қамдайды мысалы: JASS, JMS, EJB сонымен қатар JSP мен
SERVLET ты де қолдайды, ал Tomcat-ң фунукциялары мұндай күшті емес, ол EJB
ны қолдамайды бірақ JBOSS( бұрынғы қолданылмылы сервер) пен біріксе J2EE
ның барлық функцияларын қолдайды.Бұл жерде мынадай сұрақ туады қолданылмалы
Server де
Tomcat тың барлық фунукциялары бар екен ендеше Tomcat тың қажаты бар ма?
Іс жұзінде біз әдетте қолданылып жұрген кіші, орта
қолданылым(Application) EJB технологиясын қажет етпейді, олар үшін JSP мен
SERVLET жеткілікті бұл жерде біз қолданылмалы Server-ды қолдансақ онда біз
ысапшылық жасаған боламыз, ал Tomcat сыйымдылығы аз, орнатылуы қолайлы
біздің талабымызды қанағаттандырады, мұндай жағдайда біз әрине Tomcat ты
талдаймыз.
Tomcat-ң басты мақсаты JSP мен SERVLET ты қолдау, бұл өте қарапайым
әдеттегі текстк редакторды не IDE ды пайдаланып сосын оларды WAR қоржынында
сақтасақ болады.
java servlet тың қасиеттері
Servlet ол JavaServlet қолданбалы программасының интерфейсы(API) және
кластар мен әдістерді қамтыған java программсы, JavaServletAPI, ден басқа
Servlet APIге кеңейтілген және қосылған Java класының қоржындарын(пакеттер)
қолдана алады. Servlet, java ның Web Server-ін қолданылса немесе қолданбалы
серверде қолданылса осы сервердың қаблетін арттарады. JavaServlet тың web
Server арасындағы байланыс JavaApplet пен Web browser арасыныдағы
байланысқа ұқсас. Servlet, WebServer-іне орнатылған оның үстіне WebServer-
інң ішінде іске қосылады, ал Applet Web browser іне орнатылған Web browser
інің ішінде іске қосылады. JavaServlet Servlet пен Java арасындағы
стандартты интерфейсты белгіледі, бұл Servlet, қолданылмалы сервер және
жүйе арасындағы ұқсамастықтан туылатын қайшылықты шешып берді.
Servlet рамка құру арқылы сервердың қабылетін арттырды, яғни Web тегі
сұраныстарға сәйкесінше жауап береді. Клиент серверге сұраныс жіберген
кезде сервер сұраныс информациясын Servlet ке жібереді және Servlet Sevгer
дың клиентке берген жауабын қайтарады. Web серверін іске қосқан кезде
жалғасты жүріліп бұл барыс басқа клиенттер сұраныс жасағанға дейін
жалғасады.
1.2 java servlet тың функциялары
Servlet тың қамтыйтын көлемі өте кең мысалы оның төмендегідей
функциялары бар:
1. клиенттың сұранысы сипатына ие динамикалық мазмұндағы толық HTML бетін
құрады және қайтарады.
2. HTML бетінің бөліктерін бұнын болған HTML бетінде кіргізу
3. басқа серверлік русурстармен қатынас жасау( деректер қоры және java га
негізделген программалар)
4. көптеген клиенттермен байланысуды біржақтылы ету, көптеген
клиенттердің сұраныстарын қабылдау және нәтижені көптеген клиенттерде
жарялау(мысалы Servlet көптеген қатысушылары бар ойнның серверы бола
алады.)
5. біржақтылы жалғану тәсілімен деректерді тасымалдағанда, browser де
серверді ашып Applet ты жаңадан қосқанда осы байланыс ашық түрде
сақталады. Клиент пен сервер арасындағы қарапайым, жоғыры сапалы
сұраныс барысында Applet клиент browser мнен сервер арасыдағы
байланысуды жүзеге асырады. Байланысуды жүзеге асырады, белгіленген
заңдылықтар бойынша (мысалы IIOP)
6. еркеше жақадайдағы деректерді біржақтылы ету мысалы MIME типтегі
деректер( мысалы графиктерді алмастыру мен қызмет көрсету
порттары(SSI))
7. барлық Server лердің стандартты программсының біржақтылы етілгендермен
қамдайды.
1.3 Servlet-тың жұмыс барысы
Servlet интерфейсі javaх.servlet пакетіндегі сервлеттердің негізгі
программалауы болып табылады. Servlet – Java сервлеттер технологиясының
орталық абстракциясы. Әрбір құрылған сервлеттер айқын немесе айқын емес
javaх.servlet интерфейсін айқындау керек. Сервлеттің өмірлік циклі келесі
үш әдістермен анықталады: init, service, destroy.
Init( ) әдісі.
Init әдісі сервлеттер класының экземплярын құрғаннан кейін сервлеттер
контейнері арқылы шақырылады. Сервлеттер контейнері сервлеттерді тек бір
рет сервлеттерді көрсету үшін ғана шақырады. Сервлет қандайда бір сұраныс
алмай тұрып, бұл әдіс сәтті орындалуы керек.
Әдіс келесі сигнатурамен сипатталады:
public void init(ServletConfig config) throws ServletException
Сонымен қатар Init әдісінің бір маңыздылығы - сервлет контейнері web.xml
файлында осы приложение үшін жарияланған конфигурациялық мәнндерден тұратын
ServletConfig объектісін береді. Бұл әдіс ServletException исключениесін
туындатуы мүмкін
Service( ) әдісі.
Service әдісі init әдісінен кейін сервлетке сұраныстарға жауап беруге
мүмкіндік тудыру үшін, сервлет крнтейнері арқылы шақырылады.
Әдетте сервлеттер бір уақытта сұраныстар жиынын өңдей алатын
сервлеттердің көпағынды контейнерлері ішінде орындалады.
Бұл әдіс келесі сигнатурадан тұрады:
public void service(ServletRequest request, ServletResponse response)
throws ServletException, java.io.IOException
Сервлеттер контейнерлері ServletRecuest, ServletResponse объектілерін
береді. ServletRecuest объектісі клиент сұранысынан, ал ServletResponse
объектісі сервлет жауабын береді. Осы екі объектілер сервлеттің клиенттік
сұранысты қалай орындайтынын анықтайтын кодын жазуға мүмкіндік береді.
Бұл әдіс егер ServletException-да сервлеттің қалыпты жұмысына әсер ететін
исключениелер пайда болса, сол исключениелерді бақылайды.
Destroy( ) әдісі.
Сервлеттер контейнері destroy әдісін сервлет көшірмесін қызметтен өшірген
кезде шақырады. Бұл әдеттегідей сервлеттер контейнері өшірілген кезде
немесе сервлеттер контейнеріне қосымша еске сақтау орны керек болған
жағдайда жүзеге асырылады. Destroy әдісі сервлеттің service әдісіндегі
барлық ағындар орындалуы аяқталғанда, немесе күту периоды аяқталған соң
шақырылады. Осы destroy әдісін шақырғаннан кейін сервлеттер контейнері осы
сервлеттің service әдісін қайтадан шақырмайды.
Destroy әдісі сервлеттерге барлық қолданыстағы ресурстарды (мысалы, еске
сақтау, файлдар дискрипторы, ағындар орындалуы ) тазалауға мүмкіндік
береді.
Destroy әдісінің сигнатурасы:
public void destroy()
Сервлетті қосымшалардың қосымшалары
Жалпы сервлет java-ың классы болып табылады, яғни динамикалық
түрде жазылған (тіркелгнен) программа Web- серверде орындалады. Бұны
орындауға көмек тесетін сервлет контейнер деп аталады (Servlet
Container). Ең алғаш сервлет периодтарында ол оны процесті сервлет
деп атаған болатын (Servlet Engine). Сервлет клиентпен ықпалын
сұрау-жауаб моделі бойынша HTTP базасында жалғастырады. Көптеген
сервлеттр HTTP-мен жоғары дәрежеде орындайды. Клиентке жауапты
беру және сервер жауабын беру үшін контейнер сервлет протокол
ретінде HTTP-ы сүйемелдеу (подднрживать) керек.
Бірақ контейнер сервлет басқада протоколдарды сүйемелдеуі
мүмкін HTTPS (HTTP поверх SSL) қорғаныстағы транзакция үшін.
Төмендегі суреттен көріп отырғанымыздай сервлет қосымшаларының
архитектурасы екентін тани аласыздар.
JSP- қосымшаларында контейнер сервлет контейнер JSP-мен орын
алмасуы мүмкін . Жалпы барлық контейнерлер сервлет және JSP Web-
контейнерлер немесе контейнерлердің сервлеті JSP-деп жиі айтамыз.
Осы аталғандар әсіресе Web-қосымшаларын сервлет және JSP беттерінен
тұрады.
1.4 JSP негіздері
Интернет желісі әлі жас және толық жетілмеген. Тарихы қысқа.
Алғашында бұл Торда барлығы статистикалық беттерде болғанды. Егер сол
уақытты еске түсірсек, web-сайт тек HTML беттерінен тұрған. Web-сайт
максимум бір ғана парақтан құрылған, күні-бүгінге дейін “home page” деп
аталады.
Динамикалық мазмұндар шықаннан кейін “интернет-қосымша” мен “web-
қосымша” терминдері пайда болды. Web- қосымшасын Java тілінде құрғанда екі
негізгі архитектура қолданылады. Клиенттерге қызмет көрсету және бизнес-
логиканы өңдеуін бірінші архитектура JSP және сервлеттерді орта деңгейде
қолданылады. Бұл архитектура 1-ші суретте көрсетілген.
1-сурет. Сервлеттердің және JSP қосымшаларының архитектурасы
Бұл модельді кішігірім қосымшалар және орта деңгейлі қосымшалар
қолданады.
Екінші архитектурада J2EE сервері және Enterprise JavaBeans (EJB)
қолданылады, ол масштабты, қолданысты деңгейдегі үлкен қосымша құру үшін
тиімді. Бұл архитектура 2-ші суретте көрсетілген.
2-сурет. J2EE қосымшасының архитектурасы
Java серверлік беті өзімен тағы бір web- қосымшасын өңдеу үшін Java
технологиясын ұсынып отыр. Сервлеттер технологиясының web- технологиясында
ең жетілген және кең ауқымды қолданыс уақытында JSP іске қосылған. Бірақ
JSP сервлеттер орнын толықтара алмайды. JSP сервлеттер технологиясының
жетілген түрі болып саналады.
• JSP туралы қысқаша түсінік
• JSP технологиясының артықшылығы
• JSP технологиясының кемшлігі
• JSP ның 6 түрлі өзіндік обекті
• JSP динамикалық Web бет технологиясы
JSP туралы қысқаша түсінік
JSP (Java Server Page) ол Sun Microsystems компаниясының бастауымен және
басқа көптеген компанияларыдң қатысуымен бірлесіп жасаған динамикалы Web
бет жасау технологияы. JSP технологиясы ASP технологиясына біраз ұқсайды,
ол дәстүрлі HTML құжатына(*.htm, *html) java программасының бөлігі
(Scriptlet) мен jsp тегі(tag) ын қыстыру арқылы келіп шыққан JSP
құжаты(*.jsp). JSP де жасалған Web программасы жұйе талдамайды, ол LINUX те
және басқа жұйелерде де жүріле береді. JSP технологиясы java программалық
тілін қолданып XML класының tag мен scriptlet ын құру арқылы динамикалы web
бетты біржақтылы ету логикасы. Веб бет теғы tag мен scriptlet арқылы
интерфейстегі ресурстарға сұраныс жасау логикасы. JSP веб беттік логикасы
мен дизайынын бөліп қарайды, маңызды компаненттерге жобалау жасауды
қуаттайды, Web ке негізделген қолданбалы программаларды ашуды тездетті және
оңайлатты.
Web севері JSP ге жасалған сұранысты қабалдағанда, алдымен оның ішіндегі
программаны орындайды, онан соң соңғы нәтижені JSP ның HTML кодымен қосып
клиентке қайтарып береді. Қыстырылған java программасы деректер қорымен
жұмыс жасауға, қайтадан веб бетке қайтып келу секілді динамикалы веб бет
талабын қанағаттандырады.
JSP мен JavaServlet ұқсас екеуіде бірдей сервер бөлігінде жүріледі,
әдетте клиенттке қайтаратыны HTML құжаты, сондықтан сервер тек браузер
болса болғаны көруге болады.
JSPның 1.0 стандартының соңғы нұсқасы 1999 жылы 9 айда жариялады, 12
айдатағы 1.1 стандартын жариялады, бүгінгі таңда біраз жаңа нұсқасы
JSP1.2стандарты, JSP2.0 стандарның нұсқасының аңыс бақылау нұсқасы да
жарыққы шықты.
JSP беті HTML содынаjava ны қыстырудан келіп шыққан. Сервер клиенттен
сұраныс келіп түскен соң осы java программларын біржақтылы етеді, соңынан
келіп шыққан HTML бетін клиенттегі браузерге қайтарады. JavaServlet JSP
технологиясының негізі, оның үстіне ірі көлемдегі Web қолданбалы
программасын құру JavaServlet мен JSP бірккенде ғана іске асады. JSP java
программасның қарапайым, қолдануға ыңғайлы, бүтіндей обектіге
бағтталғандық, жүйеге байланыссыздық , хауыпсыздық сынды ерекшеліктерін ала
білді, маңыздысы интернет тың барлқ ерекшелігін ала білді.
1.5 JSP технологиясының артықшылығы мен кемшлігі
1. бір рет компилацияланған, соң кез-келген жерде атқарыла береді. Бұл
жағынан Java PHP ег салыстарғана әлде қайда мықты, жүйеден басқа соддарды
өзгертудің қажеті жоқ.
2. жүйе талдамайтындығы. Негізінен барлық жүйелердің кез-келген ортасында
іске қосыла береді, кез-келген ортада орналастыруға, кеңейтуге мүмкіндік
бар. ASPPHP шектемелігімен салыстырғанда әлде қайда жеңіл.
3. ірі көлемдегі серппелігі. Бір кішкене jar пакеті арқылы ServletJSP ты
іске қосуға болады, көп клиентті серверлер шоғырында да бір қалыпты жұмыс
жасай алады, көп дербес компютерлдерде Application арқылы бірақтылы ету,
информацияларды біжақтылы ету, бір сервер, көп серверлер үшін java өзінің
өмір шеңдігін көрсете білді.
4. вниверсалдылықпен қуатты инструменнтерді қолдау.Бұл жағынан ASP ге қатты
ұқсайды, java да көптеген үздік инструменнтер бар, оның үстінен олардың
көпшілігін тегін алуға болады, енді бір жағынан олардың көп бөлімі жұйе
талдамайды.
JSP технологиясының кемшлігі
1. ASP сяқты JAVA ның бірсыпра артықшылықтары оның кемшіліктерінің
келу қайнары. Жүйе талдамау, серіппелік секілді еркешеліктері оның
күрделілігін артырды.
2. JAVA ның жұмыс барысы class тың ұзақ уақыт ішкі жадыда сақталып
тұруы арқасында атқырылады. Сондықатан ол кейбір ржайғадайда
қолданған ішкі жадыда алатын орны онық қолданушыларымен
салыстырғанда әлде қайда аз. Енді бір жағынан, ол тағы қатты
дисктегі(hard disk) біраз орын алып оған бірсыпрыа. java құжаттары
мен class құжаттарын сақтайды.
JSP ның 6 түрлі өзіндік обекті
Request, response, out, session, application, confing, pagecontext, page,
exception.
1-обект request:
Бұ обект қолданушының жіберген информациясын қораптайды. Бұл обектке сәйкес
әдісті қолдану арқылы қораптағы информацияларды алуға болады.
2-обект response:
Қолданушының сұранысына динамикалы түрде жауап береді, клиенттік
интерфейске мәліметтер жібіреді.
3-обект session:
1. session дегеніміз не: session обекті JSP ның өзіндік обекті, ол JSP
ның бірінші бетімен бірге автоматты түрде құрылады, диалогтык
басқаруды біржақтылы етеді.
Белгілі бір клиенттың браузерді ашып серверге қасылғаннан бастап,
оның браузерді өшіріп осы сервердің жұмысын тоқтатқанға дейі, бір диалог
аталады. Белгілі бір қолданушы серверге сұраныс жасаған кезде, осы
сервердің бірнеше бетінде қайталанған жалғануладрды сұрауы мұмкін, бір
бетті бірнеше рет қайталай жаңартулары мұмкін, сервер міндетті түрде
белгілі бір тәсілді қолданып мұның бір қолданушы екенін таба білуі керек,
міне бұл session обектінің міндеті.
2. session обектінің ID: бір клиент серверге алғаш JSPбетіне сұраныс
жасаған кезде JSP маторы session обектыін құрады, сонымен бірге String
типіндегі ID ды бөледі, JSP маторы осы ID ды клиент бөлігіне жіберіп
Cookie де сақтайды, осылай істегенде session обекті мен клиент
арасында бір-біріне сәйкес байланыс қалыптасты деген сөз. Клиент осы
сервердің басқа беттеріне сұраныс жасаған кезде, оған тағы жаңа бір
session ды бөлудің қажеті жоқ, тек клиент браузерды өшірген кезде ғана
сервер осы клиенттың серверін өшіреді, оның үстіне клиенттің диалог
сәйкестігі жоғалады. Клиент қайтадан брауздерді іске қосып сервермен
байланысса, сервер осы клиент үшін session обектін қайта құрады.
4. application обекті:
1. application деген не
сервер іске қосыла салысымен-ақ application обекті құрылады, клиент
сұраныс жасаған Web беттерінің әр парақтарын қарағанда, осы обекті тек
біреуғана болады, сервер өшкенге дейін.Дегенмен session мен ұқсамайтыны,
барлық қолданушылардың application ны бәріне ортақ тек біреуғана болады,
барлық қолданушылар өзінде орнатылған application ге жол ашықты болсада.
2.application обектінің үнемі қолданатын әдістері:
( 1) public void setAttribute(String key, Object obj): Object
параметрі белгіліген obj обектін application обектіне салады, сонымен
бірге қосылған обектіге тіркелген кілттік сөзін белгілейді.
(2) public Object getAttribute(String key): application обектінің
ішіндегі кілттік сөзі бар обектілерді алады.
5. out обекті:
Out обекті ол ағын, клиентке деректерді шығару үшін қолданады. Out
обекті әртүрлі обектілерді шығару үшін керек.
6.Cookie:
1. Cookie деген не:
Cookie ол Web серверінің қолданушының қатты диксінде сақталған бір
текст. Cookie Web сайттың қолданушының компютеріде информациялар
сақтауына және оларды алуына мүмкіндік береді. Мысалы белгілі бір Web
сайт әрбір қолданушы үшін бір ID құруы мүмкін, соңынан оны Cookie
формасына әрбір қолданушының компютерінде сақтайды.
Еген сіз IE браузерін қолданып Webке сұраныс жасасаңыз, онда сіз өз
қатты дискіңізде сақталған барлық Cookie ды көре аласыз. Олардың үнемі
сақталатын орны: c\widows\cookies(егерWindows2000 болса c:\Documents and
Settings\ қолданушы аты\Cookies)
Cookie” кілттік сөз key=value мәні” форматы ретінде естелікке алынад.
3.Cookie обектін құру, Cookie обектінің структурасын қолданып Cookie ды
құруға болады. Cookie обектінің структурасының char типіндегі екі
параметірі бар: Cookie аты мен Cookie мәні.
Cookie c=new Cookie(“user name”, “john”);
3.JSP де қорапталған Cookie обектісін клиентке жіберу керек болса
response тың add Cookie( ) әдісі қолданылаы.
Форматы: response.add Cookie(c)
3. клиенттік интерфейсте сақталған Cookie ды оқыу үшін, request обектінің
getCookie( ) әдісі қолданылады. Қолдану барысында барлық клиенттер
жіберген Cookie обектісін бір массмвке сақтайды, егер талапқа сай
Cookie ды тапса, циклде массивтың кілттік сөздерін салыстырады.
1.6 JSP беттерінде Web-қосымшаларын құру
JSP –негіздері. (Java Server Page) JPS- бұл серверлі Java беттері
Web-қосымшаларын өңдеуге тағы бір Java технологиясын ұсынады. JPS - өзінің
ерекшелігімен жер әлемге таралғанда Web – технологияларына өзі ғана рухсат
және Web – технологияларын өзі ғана бағындыратын технологияны бірі болған
кезде қолданысқа кеңінен енген . Бірақ JSP сервлетпен ауыспады нақты
айтқанда JSP кең етек алған сервлеттердің бірі болып табылады . Сервлетпен
Web-қосымшалардың жалпы негізгі қолданысы құрамы болады. JSP беттері
қарапайым болып татылғандығы сондай API мәләметтері секілді секілді үлкен
болмайды . Бірақ сонда да жоғары дәрежелі программист Java программалау
тілін қалай тамаша білетін болса JSP – серлетінде сондай дәрежеде керемет
білуі қажет. Тіпті керек десеңіз Web-қосымшаларында Java қабылданса , онда
сервлеттіңде маңызы зор екенін естен шығармаған жөн . Біз бұны алдағы
бөлімдерде мысалмен көрсететін боламыз. JSP – беттерінде HTTP протоколдары
жұмыс істейді , сол себепті де HTTP сұрауларды қабылдап HTTP жауаптарын
қайтарады . HTTP сұраулары параметрлермен , сұрау атрибуттарымен ,сеансты
басқару құралымен cookie , URL – гі қайта жазылуымен орындвлады. Бұл
бөлімде JSP және сервлет қарым қатынасын анықтайтын боламыз. Мын жерде біз
JSP – технологиясын карастырып көрейік және орындап көру үшін біраз
мысалдар көрсете кеткенді жөн көріп отырмыз. Ол үшін біз JSP беттерін жасап
, оны *.jsp файл ретінде сақтап оны іске сырамыз ( әрбір жазылған
программаны *.jsp файл ретінде сақтау кере екенін ұмытпаған жөн ). Ол үшін
біз Томкат (Tomcat) деп аталатын сервер орнатып оның ішінде webapps –
MyJSP катологының ішіне сақтаймыз . Оны браузерден көру үшін бізге тек
http:localhost:800MyJSP ... .*.j sp деп оны қолданысқа жібереміз. Мысалы
жай қарапайым мысал :
HTML
TITLE The page of JSPTITLE
BODY
HELLO I am a JSP!!!
BODY
HTML
а)- мысал
Сондай ақ бұдан басқа мысалдардыда келтіруге болады . Әрине
жоғарыдағы келтіпілген мысал жанжақты программист үшін тиімсіз,
пайдасы жоқ дер айтуымызға болады.
Әйтседе бұдан біз мынадай көре аламыз нәтиже көре аламыз .
Төмендегі 1.0- суретте көрсетілген.
3-сурет
Біз жоғарыда көрсеткен мысалымыз нақтырақ болсын деп тағы бір
мысал көрсете кеткенді жөн деп отырмыз.
HTML
TITLE The page of JSPTITLE
BODY
%
out.println (“HELLO I am a JSP!!! “);
%
BODY
HTML
b)- мысал
Бұдан көретіндеріңіз дәл 3-сурет, а)-мысалына қарағанда b)- мысалы
анағұрлым тиімдірек.Әйтседе бұл жоғарыда көрсеткен фактілерді
үйлестіреді, яғни JSP барлық кодтарға бірдей келе бермейді , сонда
да оны HTML тегтерімен үйлестіріп арасына қойып жазуға болады.
JSP-қосымшаларында JSP – деген атауы болмаса , оның кодттары
программистерге таныс Java кодттарын қолданамыз. Бірақ оны мыны
тегтің ішіне жаза аламыз % java коды %
b)- мысалында біз тегтің ішіне жазылған өзімізге таныс out.println
функциясын көріп отырмыз, егер шынайы программист оның не істегенін
аңғаратын болса оны түсіну қиын емес , яғни өздеріңізге белгілі
java кодында қолданылатын текстерді жіберу шығару үшін көбірек
қолданылатын функция.
Java – тіліндегі сервлет беттері (JSP) өзімен бірге керемет ғажайып
икемді қолдану үшін стандартты интернет клданбалы Java-сервлет (Java
Servlet API) функционалды мүмкіндіктерін кеңейтеді. HTML – беттерінде
Java-ны құрал ретінде ұсына алады.
Java- сервлет, Java-аплет бұлар серверде сұраушылардың көмегімен
орындалады. Сервлет функционалды мүмкіндіктерді Web-серверде тар әрі
қысқа жолмен ұлғаяды. CGI- келісімімен рұхсатт етілсе және алдыңғы
ең үлкен дәрежелі мобильдік құралмен сервлет атауы келіп қосылатын
сервлет және аплет терминдерін білімдірек жасайды.
Java-аплет Java тілінде жазылатын шағынғана программа. Web-серверде
мобильдік Java байт коды сақталып тұрады. Аплетті шақыру HTML –
беттерінде арнайы тіл белгісімен орындайды және шақырылған кезде
кленттік Web-броузерде , кленттік машинада орындалады. Аплетті
орындау виртуалды Java-машина құралында жүзеге асырылады.
CGI (Common Gateway Interface , Общий Межсетевой Интерфейс) Жалпы
Жүйеаралық Интерфейс- стандарт IETF Web-сервер сервер жағында ішкі
программаның орындалуының, Web-сервер қатынасы болып табылады.
HTML –форманың көмегімен клиентке жүйедегі рұхсат жекленген
орындалуы үшін JSP- беттері Web-беттеріндегі Java коды динамикалық
қалыптасудан қолданушының графикалық интерфейсті айыра алады яғни
мәліметтерді басқаруға және атқаруға қосымша бет жасайды. Web-
беттеріндегі үлке басым өңдеуді JSP – беттіндегі өңдеу деп атайды.
Мысал: JSP бетіде ағымдағы уақыт және күн мерзімі.
Date.jsp - файлы
% @ page language = “java” errorPage=“errorpage.jsp”
import = “java.util.*” contentType=“texthtml”
%
HTML
HEAD
TITLEHello World – %= new Date() %TITLE
HEAD
BODY
H1How are you today?H1
It is now
%
Date myDate = new Date();
String[] Dow = new String[] {“”, “Sunday”,“Monday”,“Tuesday”,
“Wednesday”,“Thursday”, “Friday”,“Saturday”
};
String[] Ap = new String[] {“AM”, “PM”};
out.print(myDate);
Calendar cal = Calendar.getInstance();
cal.setTime(myDate);
out.print(“BRIt’s currently day” +
cal.get(Calendar.DAY_OF_YEAR) + “of this year.”);
out.print(“BRIt’s day”+cal.get(Calendar.DAY_OF_WEEK) +
“(”+Dow[cal.get(Calendar.DAY_OF_WEE K)]+“) of the week.”);
out.print(“BRIt's now”+Ap[cal.get(Calendar.AM_PM)]+“” .Good“);
if (cal.get(Calendar.AM_PM) == 0)
out.print(“Morning.”);
else
out.print(“Afternoon.”);
out.print(“BRTo be precise”+cal.get(Calendar.MILLISECO ND)+
“milliseconds have passed today”);
out.print(“BRIt’s currently week”+
cal.get(Calendar.WEEK_OF_YEAR) + “of this year.”);
%
BODY
HTML
___________________________________ __________
Біз осы код нәтижесінде төмендегі суретті Web-броузерден көре
аламыз!!!
3)-сурет
6. JSP динамикалық Web бет технологиясы
Ертеректе динамикалы Web беттерінде CGI-BIN интерфейсі
қолданылатын, программист интерфейспен қатысты болған дербес програма
мен Web ке негізделген программаны өзі жазады. Соңғысы Web серверін
қолдану арқылы алдыңғысын қолданады.Бнұдай технолагияда кеңейтілудің
үлкен проблеммасы бар, яғыни әрбір жаңа CGI пограммасы серверде жаңа
барысты құруды талап етеді. Көптеген қаолданушылар жергілікті
сұраныстарды жіберсе, бұл барыс Web серверінің барлық ресурысын
қолданып бітеді, бұл оның бүлініуін келтіріп шығарады.Осы қыйыншылықты
шешу үшін қолданбалы программакомпаниясы Activ Servere Page(ASP)
технологиясын ұсынды, бұл технология “қыстырыу” мен API ды қолданып
Web қолданбалы программасын қарапайымдастырды.ASP, CGI мен
салыстырғанда артықшылығы ол HTML тектерін қамтығандығы, деректер қоры
мен есепсіз толықтырылған ActiveX кампанентын тікелей сақтауға болады,
сондықтан пограмма компиляция жағынын икемділігі өте күшті. Дегенмен
бұл технология осы программаны шығарғн компания шығарған жүйелермен
шектелетіндіктен, яғныи негізінен IIS қолданбалы программасының
құрлымында ғана қолданылады, сондықтан ASP Webсерверінің жүйе
талдамайтын талабын қанағаттандыра алмады.
Hypertext Preprocessor және PHP динамикалық Web бет технологиясы
ASP секілді олда HTML файылының серверлік сценарий тілі, оның
грамматикасы C, Java, Perl қатарлы тілдерге ұқсайды, дегенмен өзіндік
дербес ерекшелігі де бар, бұл тілді Web программистер қолданып
деинамикалық веб бетті оңай құра алыд. PHP көбінесе Unix жүйесінде
GUMLinux жіне Windows жүйелерінде жүріледі. PHP дың ерекшеллігі:
орнату қолайлы, үйренуге жеңіл, деректер қорымен байланысу ыңғайлы,
кіріктірілуі күшті, кеңейтілуі күшті; обектіге бағытталғар пограммны
жазуға болады. Бірақ PHP де де кемшіліктер бар, ол бастысы
интерпритацияланатын тіл, ол көп сызызтылықты қолдамайды, қолдайтын
жүйелер мен деректер қоры шектеулі, әсіресе қолдайтын стандарты
ежелден жетіскен емес еді, кейбір электронды коммерциялар үшін PHP
ыңғайсыз.
Тағы бірнеше технологиялар бар мысалы: JavaServlets бұл
технологияны қолданып интерационды сервер кодын оңай жазуға болады,
бір JavaServlets программасы ол Java ға негізделген серверлік ортада
жүрілетін программа(Applet ке ұқсамайды, соңғысы брауздерде жүріледі),
программист осындай бір программа жазу арқылы Web браузерінен келген
HTTP сұраныстарын қабылдап динамикалы сәйкестік құрады(мұндай
сұранысты деректер қорын тексеру арқылы ондауы мұмкін), соңынан HTML
немесе XMLды қамтыған құжатты сәйкес браузерге жеткізп береді. Бұл
технологияны қарапайым бет жобалаушылар үшін игеру қыйынға соғады. Бұл
тәсілді қолдану үшін бүкіл веб сайт бүтіндей JavaServlets те құрылыуы
керек. Егер программист немесе Web басқарушы беттің көрунуін
реттемекші болса онда бүкіл программаны қайтадан жазуы керек.
Sun Microsystems Inc компанясы және басқа комерциялармен бірлесіп Web
сервер, қолданылмалы сервер, жүйені сату, инструменттерді ашыу
барысында бұрыннан болған Java программасын(Java Server мен JavaBeans)
тұрақтанырып оған бір қатар толықтырулар мен жаңартулар енгізді, Web
қолданбалы программасына негізделген әдіс JavaServerPage
технологиясы(JSP) бұндай динамикалы веб бет технологиясының
төмендегідей ерекшілігі бар:
• кез-келген Web қолданбалы программасы мен серверде атқарыла
береді.
• Қолданбалы прграмманың логикасы мен беттік дизайынын бөліп
қарады.
• Атқырылыуы жылдым.
• Web ге негізделген ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz