Melhor meio para inserir video

3 respostas
F

Boa tarde galera…
estou fazendo um trabalho na faculdade no qual eu preciso criar uma pagina web que a partir de 1 usuario cadastrado
ele possa inserir e ver os videos inseridos por ele.

estou com 1 duvida
qual o melhor meio de fazer isto???
inserir o video no BANCO ou em uma pasta e no banco eu pego o local da pasta para saber os videos inseridos por ele?
obrigado por ajudar

3 Respostas

darkan666

E ai man, beleza?

eu acho que depende muito do seu espaço disponível no banco e volume de videos que você vai inserir.
se o banco não tem muito espaço alocado para ele, é melhor salvar os videos em uma pasta, e no
banco só armazenar a url…

abraços…

F

certo Darkan… vlw man

galera tem 1 outro problema…
eu tentei por o video pelo banco e talz
tenho o seguinte codigo que é um exemplo do professor para por imagens… so q preciso inserir videos e mostrar videos alguem pode me dar + 1 forca?? ^^

Lista Imagens

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class listaImagens extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void processRequest(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			Connection con = DriverManager.getConnection(
					"jdbc:oracle:thin:@localhost:1521:xe", "andre", "andre");
			PreparedStatement ps = con
					.prepareStatement("select * from filmes");
			ResultSet rs = ps.executeQuery();
			out.println("<h1>Imagens</h1>");
			while (rs.next()) {
				out.println("<video id=Video1 src="+rs.getString("nfilme")+" controls autobuffer></video>");
				out.println("<h4>" + rs.getString("nfilme") + "</h4>");
				out.println("<video width='600' height='600' src='mostraImagem?id="
								+ rs.getString("id") + "'></video> </p>");
			}
			con.close();
		} catch (Exception ex) {
			out.println("<h4> Erro " + ex.toString() + "</h4>");
		} finally {
			out.close();
		}
	}

	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		processRequest(request, response);
	}

	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		processRequest(request, response);
	}

}

Adiciona Imagem

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

/**
 * Servlet implementation class adicionaImagem
 */
public class adicionaImagem extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		doProcess(request,response);
	}
	
	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		doProcess(request,response);		
	}
	
	protected void doProcess(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		try {
			// Apache Commons-Fileupload library classes
			DiskFileItemFactory factory = new DiskFileItemFactory();
			//System.out.println("DiskFIleItemFactore");
			ServletFileUpload sfu = new ServletFileUpload(factory);
			//System.out.println("ServletFilepload instanciado");			

			if (!ServletFileUpload.isMultipartContent(request)) {
				out.println("Upload da Imagem não realizado.");				
				return;
			}

			// parse request
			//System.out.println("recuperando Request");
			List items = sfu.parseRequest(request);
			
			//System.out.println("Recuperando item0");			
			FileItem id = (FileItem) items.get(0);
			String photoid = id.getString();
			//System.out.println("Recuperando id");			

			FileItem title = (FileItem) items.get(1);
			//System.out.println("Recuperando titulo");			
			String phototitle = title.getString();

			// get uploaded file
			//System.out.println("Recuperando arquivo");			
			FileItem file = (FileItem) items.get(2);

			// Connect to Oracle
			Class.forName("oracle.jdbc.driver.OracleDriver");
			Connection con = DriverManager.getConnection(
					"jdbc:oracle:thin:@localhost:1521:xe", "hr", "oracle");
			con.setAutoCommit(false);

			PreparedStatement ps = con
					.prepareStatement("insert into imagens values(?,?,?)");
			ps.setString(1, photoid);
			ps.setString(2, phototitle);
			// size must be converted to int otherwise it results in error
			ps.setBinaryStream(3, file.getInputStream(), (int) file.getSize());
			ps.executeUpdate();
			con.commit();
			con.close();
			out.println("Imagem Adicionada com Sucesso");
			out.println("<p> <a href='listaImagens'>Lista Imagens</a>");
		} catch (Exception ex) {
			out.println("<h1> Error" + ex.getMessage() + "</h1>");
		}
	}
}

e Finalmente o Mostra Imagem

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Blob;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

/**
 * Servlet implementation class mostraImagem
 */
public class mostraImagem extends HttpServlet {
	private static final long serialVersionUID = 1L;

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "andre", "andre");
            PreparedStatement ps = con.prepareStatement("select afilme from filmes where id = ?");
            String id = request.getParameter("id");
            ps.setString(1,id);
            ResultSet rs = ps.executeQuery();
            rs.next();
            Blob  b = rs.getBlob("afilme");
            response.setContentType("video/mkv");
            response.setContentLength( (int) b.length());
            InputStream is = b.getBinaryStream();
            OutputStream os = response.getOutputStream();
            byte buf[] = new byte[(int) b.length()];
            is.read(buf);
            os.write(buf);
            os.close();
        }
        catch(Exception ex) {
             System.out.println(ex.getMessage());
        }
    } 

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	       processRequest(request, response);	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	       processRequest(request, response);	}

}
F

alguem?

Criado 1 de novembro de 2011
Ultima resposta 5 de nov. de 2011
Respostas 3
Participantes 2