I need to provide the slideshow for the images.
I have upload the images into database. Then i will retrive all the images from the database and provide the slideshow for those images. I have try with the following jsp code.
Expand|Select|Wrap|Line Numbers
- <%@ page language="java" %>
- <%@ page import="java.sql.*"%>
- <%@ page import="java.sql.Connection.*"%>
- <%@ page import="java.awt.image.*"%>
- <%@ page import="java.io.*"%>
- <%@ page import="java.io.File"%>
- <%@ page import="javax.imageio.ImageIO"%>
- <%@ page import="java.awt.image.BufferedImage,java.util.*"%>
- <%@ page import="java.awt.*"%>
- <%
- java.util.Vector images = (java.util.Vector)request.getAttribute("images");
- %>
- <html>
- <head>
- <title>JSP Page</title>
- <SCRIPT LANGUAGE="JavaScript">
- <!-- Begin
- var Onerotate_delay = 2000; // delay in milliseconds (5000 = 5 secs)
- Onecurrent = 0;
- var OneLinks = new Array(3);
- OneLinks[0] = "http://www.freewarejava.com";
- OneLinks[1] = "http://www.javascriptkit.com";
- OneLinks[2] = "http://www.dynamicdrive.com";
- function Onenext() {
- if (document.Oneslideform.Oneslide[Onecurrent+1]) {
- document.images.Oneshow.src = document.Oneslideform.Oneslide[Onecurrent+1].value;
- document.Oneslideform.Oneslide.selectedIndex = ++Onecurrent;
- }
- else Onefirst();
- }
- function Oneprevious() {
- if (Onecurrent-1 >= 0) {
- document.images.Oneshow.src = document.Oneslideform.Oneslide[Onecurrent-1].value;
- document.Oneslideform.Oneslide.selectedIndex = --Onecurrent;
- }
- else Onelast();
- }
- function Onefirst() {
- Onecurrent = 0;
- document.images.Oneshow.src = document.Oneslideform.Oneslide[0].value;
- document.Oneslideform.Oneslide.selectedIndex = 0;
- }
- function Onelast() {
- Onecurrent = document.Oneslideform.Oneslide.length-1;
- document.images.Oneshow.src = document.Oneslideform.Oneslide[Onecurrent].value;
- document.Oneslideform.Oneslide.selectedIndex = Onecurrent;
- }
- function Oneap(text) {
- document.Oneslideform.Oneslidebutton.value = (text == "Stop Slideshow") ? "Start Slideshow" : "Stop Slideshow";
- Onerotate();
- }
- function Onechange() {
- Onecurrent = document.Oneslideform.Oneslide.selectedIndex;
- document.images.Oneshow.src = document.Oneslideform.Oneslide[Onecurrent].value;
- }
- function Onerotate() {
- if (document.Oneslideform.Oneslidebutton.value == "Stop Slideshow") {
- Onecurrent = (Onecurrent == document.Oneslideform.Oneslide.length-1) ? 0 : Onecurrent+1;
- document.images.Oneshow.src = document.Oneslideform.Oneslide[Onecurrent].value;
- document.Oneslideform.Oneslide.selectedIndex = Onecurrent;
- window.setTimeout("Onerotate()", Onerotate_delay);
- }
- }
- function Onetransport(){
- window.location=OneLinks[Onecurrent]
- }
- // End -->
- </SCRIPT>
- </head>
- <body>
- <%-- <jsp:useBean id="beanInstanceName" scope="session" class="beanPackage.BeanClassName" /> --%>
- <%-- <jsp:getProperty name="beanInstanceName" property="propertyName" /> --%>
- <TABLE border="0" cellspacing="0" cellpadding="0" align="center">
- <TR>
- <TD>
- <form name="Oneslideform" >
- <DIV align="center">
- <TABLE width="150" border="1" cellspacing="0" cellpadding="4" bordercolor="#330099">
- <TR>
- <TD bgcolor="#330099">
- <DIV align="center"><B><FONT color="#FFFFFF">Image Slideshow</FONT></B></DIV>
- </TD>
- </TR>
- <TR>
- <TD bgcolor="#FFFFFF">
- <DIV align="center">
- <img src="" width="500" height="400" name="Oneshow" border="1"/>
- </DIV>
- </TD>
- </TR>
- <%
- String img="";
- for(int i=0; i<images.size(); i++) {
- img=String.valueOf(images.elementAt(0));
- }
- javax.servlet.http.HttpServletResponse res=null;;
- int returnValue = 0;
- Connection conn = null;
- Statement stmt = null;
- ResultSet rs = null;
- InputStream in = null;
- OutputStream os = null;
- Blob blob = null;
- String text;
- text=request.getParameter("text");
- Class.forName("com.mysql.jdbc.Driver");
- conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/sample","root","veradis");
- %>
- <TR>
- <TD bgcolor="#330099">
- <DIV align="center">
- <SELECT name="Oneslide" onChange="Onechange();">
- <%
- int i=1;
- //String id="14";
- String query = "select image,type from tbl_image ";//where name ='"+images.elementAt(0)+"'";
- Statement st = conn.createStatement();
- rs = st.executeQuery(query);
- while(rs.next())
- {
- byte[] bytearray = new byte[4096];
- int size=0;
- InputStream sImage;
- sImage = rs.getBinaryStream(1);
- response.reset();
- response.setContentType(rs.getString("type"));
- while((size=sImage.read(bytearray))!= -1 )
- {
- response.getOutputStream().write(bytearray,0,size);
- }
- System.out.println("HAI" + i);
- i++;
- }
- if(images.size()>0) {
- for(int j=0;j<images.size();j++) {
- %>
- <OPTION value="<%=response.getOutputStream()%>"><%=response.getOutputStream()%></OPTION>
- <%
- } }
- %>
- </SELECT>
- </DIV>
- </TD>
- </TR>
- <TR>
- <TD bgcolor="#330099">
- <DIV align="center">
- <INPUT type=button onClick="Oneprevious();" value="<<" title="Previous">
- <INPUT type=button name="Oneslidebutton" onClick="Oneap(this.value);" value="Start Slideshow" title="AutoPlay">
- <INPUT type=button onClick="Onenext();" value=">>" title="Next">
- </DIV>
- </TD>
- </TR>
- </TABLE>
- </DIV>
- </form>
- </TD>
- </TR>
- </TABLE>
- </body>
- </html>
And also i need to Reduce the time for upload the image and Retrive the image from database. When we upload the large size of image, that will take more time. But i need to upload and Retrive those type of images with less timing.
Please help me for this.