Java JSP Hello Date java import java util

  • Slides: 19
Download presentation
Язык Java. JSP.

Язык Java. JSP.

Пример программы // Hello. Date. java import java. util. *; public class Hello. Date

Пример программы // Hello. Date. java import java. util. *; public class Hello. Date { public static void main(String[] args) { System. out. println("Hello, it's: "); System. out. println(new Date()); }

Сервлеты import java. io. *; import javax. servlet. http. *; public class Hello extends

Сервлеты import java. io. *; import javax. servlet. http. *; public class Hello extends Http. Servlet { public void do. Get(Http. Servlet. Request request, Http. Servlet. Response response) throws IOException, Servlet. Exception { response. set. Content. Type("text/html"); Print. Writer out = response. get. Writer(); out. println("<html"); out. println( "<head><title>Hello!</title></head>"); out. println("<body><h 1>Hello!</h 1></body>"); out. println("</html>"); } }

Классы сервлетов Пакет javax. servlet: n Http. Servlet. Request n Http. Servlet. Response n

Классы сервлетов Пакет javax. servlet: n Http. Servlet. Request n Http. Servlet. Response n Cookie n Session n и т. д.

Предопределённые объекты n n n n page типа java. lang. Object config типа Servlet.

Предопределённые объекты n n n n page типа java. lang. Object config типа Servlet. Config out типа jsp. Jsp. Writer application типа Servlet. Context session типа http. Http. Session page. Context типа jsp. Page. Context response типа Http. Servlet. Response request типа Http. Servlet. Request

Типичное использование предопределённых объектов n n n n <%@ page import="java. util. *" %>

Типичное использование предопределённых объектов n n n n <%@ page import="java. util. *" %> <%@ page content. Type="text/html; charset=Windows-1251" %> <%@ page session="false" %> <% Cookie[] cs = request. get. Cookies(); %> <% Enumeration flds = request. get. Parameter. Names(); %> <% String str=request. get. Parameter("name"); %> <% response. add. Cookie(cookie); %> <% response. set. Content. Type("image/gif"); %> <% response. set. Header("Content-disposition", "attachment; filename=data. txt"); %> <% out. println(str); %> <% Session ses = session. get. Id() %> <% session. set. Attribute("My dog", new String("Ralph")); %> <% Str dog. Name = session. get. Attribute("My dog") %>

Рисование формы <%@ page import="java. util. *" %> <%@ page content. Type="text/html; charset=Windows-1251" %>

Рисование формы <%@ page import="java. util. *" %> <%@ page content. Type="text/html; charset=Windows-1251" %> <html><body> <H 2>Опрос: выборы в Госдуму</H 2> <%! String[] parties = {"Единая Россия", "Справедливая Россия", "КПРФ", "ЛДПР"}; %> <form method="GET" action="anketa. jsp"> <P>За какую партию Вы намерены голосовать: </P><BLOCKQUOTE> <% for(int i = 0; i < parties. length; i++) { %> <INPUT type="radio" id="party<%=i+1%>" name="party" value="<%=i+1%>"> <LABEL for="party<%=i+1%>"> <%=i+1%>. <%=parties[i]%></LABEL><BR> <% } %> </BLOCKQUOTE><P><INPUT TYPE=submit value="Проголосовать"></form> </H 3></body></html>

Обработка формы <%@ page import="java. util. *" %> <%@ page import="java. io. *" %>

Обработка формы <%@ page import="java. util. *" %> <%@ page import="java. io. *" %> <%@ page content. Type="text/html; charset=Windows-1251" %> <html><body> <H 2>Опрос: выборы в Госдуму</H 2> <%! String data. File = "data. txt"; %> <% if(request. get. Parameter("party") != null){ String vote=request. get. Parameter("party"); if(vote!=null){ Buffered. Writer save = new Buffered. Writer(new File. Writer(data. File, true)); save. write(vote+"n"); save. close(); %> <P>Ваше мнение учтено. </P> <% } } %> </H 3></body></html>

Показ результатов опроса <%@ page import="java. util. *" %> <%@ page import="java. io. *"

Показ результатов опроса <%@ page import="java. util. *" %> <%@ page import="java. io. *" content. Type="text/html; charset=Windows-1251" %> <html><body> <H 2>Опрос: выборы в Госдуму</H 2> <%! String data. File = "data. txt"; %> <% if(request. get. Parameter("display") != null){ int[] votes = new int[parties. length+1]; Buffered. Reader data = new Buffered. Reader(new File. Reader(data. File)); String str; while( (str=data. read. Line()) != null ){ int n = Integer. parse. Int(str); if((n>0) && (n<=parties. length)){ votes[n]++; } } data. close(); %> <H 3>Результаты опроса: </H 3><OL> <% for(int i = 0; i < parties. length; i++) { %> <LI><%=parties[i]%>: <%=votes[i]%> голосов <% } } %> </H 3></body></html>

Полный текст <%@ page import="java. util. *" %> <%@ page import="java. io. *" %>

Полный текст <%@ page import="java. util. *" %> <%@ page import="java. io. *" %> <%@ page content. Type="text/html; charset=Windows-1251" page. Encoding="Windows-1251" %> <html><body><H 2>Опрос: выборы в Госдуму</H 2> <%! String data. File = "data. txt"; String[] parties = {"Единая Россия", "Справедливая Россия", "КПРФ", "ЛДПР"}; %> <% Enumeration flds = request. get. Parameter. Names(); if(!flds. has. More. Elements()) { // No fields %> <form method="GET" action="anketa. jsp"> <P>За какую партию Вы намерены голосовать: </P><BLOCKQUOTE> <% for(int i = 0; i < parties. length; i++) { %> <INPUT type="radio" id="party<%=i+1%>" name="party" value="<%=i+1%>"> <LABEL for="party<%=i+1%>"> <%=i+1%>. <%=parties[i]%></LABEL><BR> <% } %> </BLOCKQUOTE><P><INPUT TYPE=submit value="Проголосовать"></form> <% } else { if(request. get. Parameter("party") != null){ String vote=request. get. Parameter("party"); if(vote!=null){ Buffered. Writer save = new Buffered. Writer(new File. Writer(data. File, true)); save. write(vote+"n"); save. close(); %> <P>Ваше мнение учтено. </P> <% } } if(request. get. Parameter("display") != null){ int[] votes = new int[parties. length+1]; Buffered. Reader data = new Buffered. Reader(new File. Reader(data. File)); String str; while( (str=data. read. Line()) != null ){ int n = Integer. parse. Int(str); if((n>0) && (n<=parties. length)){ votes[n-1]++; } } data. close(); %> <H 3>Результаты опроса: </H 3><OL> <% for(int i = 0; i < parties. length; i++) { %> <LI><%=parties[i]%>: <%=votes[i]%> голосов <% } } } %> </H 3></body></html>

Добавляем проверку повторного голосования. Рисование. <%@ page import="java. util. *" content. Type="text/html; charset=Windows-1251" %>

Добавляем проверку повторного голосования. Рисование. <%@ page import="java. util. *" content. Type="text/html; charset=Windows-1251" %> <html><body> <H 2>Опрос: выборы в Госдуму</H 2> <%! String[] parties = {"Единая Россия", "Справедливая Россия", "КПРФ", "ЛДПР"}; %> <% Cookie[] cookies = request. get. Cookies(); boolean voted = false; if(cookies != null){ for(int i=0; i<cookies. length; i++){ if(cookies[i]. get. Name(). equals("voted")){ voted = (cookies[i]. get. Value() != null); } }} if(voted){ out. println(“<P>Вы уже голосовали!</P>”); } else{ %> <form method="GET" action="anketa. jsp"><P>За какую партию Вы намерены голосовать: </P><BLOCKQUOTE> <% for(int i = 0; i < parties. length; i++) { %> <INPUT type="radio" id="party<%=i+1%>" name="party" value="<%=i+1%>"> <%=i+1%>. <%= parties[i]%><BR> <% } %> </BLOCKQUOTE><P><INPUT TYPE=submit value="Проголосовать"></form> <% } %> </H 3></body></html>

Установка Cookie <% if(request. get. Parameter("party") != null){ if(voted){ %> <P>Вы пытаетесь проголосовать повторно.

Установка Cookie <% if(request. get. Parameter("party") != null){ if(voted){ %> <P>Вы пытаетесь проголосовать повторно. </P> <% } else{ String vote=request. get. Parameter("party"); if(vote!=null){ Cookie cookie = new Cookie("voted", "1"); cookie. set. Max. Age(10*60*60*24); response. add. Cookie(cookie); Buffered. Writer save = new Buffered. Writer(new File. Writer(data. File, true)); save. write(vote+"n"); save. close(); %> <P>Ваше мнение учтено. </P> <% } } }

Окончательный текст n n n n n n n n n n n n

Окончательный текст n n n n n n n n n n n n n <%@ page import="java. util. *" %> <%@ page import="java. io. *" %> <%@ page content. Type="text/html; charset=Windows-1251" page. Encoding="Windows-1251" %> <html><body> <H 2>Опрос: выборы в Госдуму</H 2> <%! String data. File = "data. txt"; String[] parties = {"Единая Россия", "Справедливая Россия", "КПРФ", "ЛДПР"}; %> <% Cookie[] cookies = request. get. Cookies(); boolean voted = false; if(cookies != null){ for(int i=0; i<cookies. length; i++){ if(cookies[i]. get. Name(). equals("voted")){ voted = (cookies[i]. get. Value() != null); } }} Enumeration flds = request. get. Parameter. Names(); if(!flds. has. More. Elements()) { // No fields if(voted){ %> <P>Вы уже голосовали!</P> <% } else{ %> <form method="GET" action="anketa_cookie. jsp"> <P>За какую партию Вы намерены голосовать: </P><BLOCKQUOTE> <% for(int i = 0; i < parties. length; i++) { %> <INPUT type="radio" id="party<%=i+1%>" name="party" value="<%=i+1%>"> <LABEL for="party<%=i+1%>"> <%=i+1%>. <%=parties[i]%></LABEL><BR> <% } %> </BLOCKQUOTE><P><INPUT TYPE=submit value="Проголосовать"></form> <% } } else { if(request. get. Parameter("party") != null){ if(voted){ %> <P>Вы пытаетесь проголосовать повторно. </P> <% } else{ String vote=request. get. Parameter("party"); if(vote!=null){