• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    jsp实现仿QQ空间新建多个相册名称并向相册中添加照片功能

    工具:Eclipse,Oracle,smartupload.jar;语言:jsp,Java;数据存储:Oracle。

    实现功能介绍:

    主要是新建相册,可以建多个相册,在相册中添加多张照片,删除照片,删除相册,当相册下有照片时先删除照片才能删除相册。

    因为每个相册和照片要有所属人,所以顺带有登录功能。

    声明:只是后端实现代码,前台无任何样式,代码测试可行,仅供参考。

    代码:

    数据库连接帮助类:

    public class JDBCHelper { 
     public static final String DRIVER = "oracle.jdbc.driver.OracleDriver"; 
     public static final String URL = "jdbc:oracle:thin:@localhost:1521:xxxx"; 
     public static final String DBNAME = "scott"; 
     public static final String PASSWORD = "xxxx"; 
     public static Connection getConn() throws Exception{ 
     Class.forName(DRIVER); 
     Connection conn = DriverManager.getConnection(URL, DBNAME, PASSWORD); 
     return conn; 
     } 
    } 

    图片上传时,要修改图片名称,防止上传重名图片将上一张覆盖,这里的做法是将图片名改为由用户ID和精确到毫秒的时间组成,修改图片名的帮助类:

    public class PhotoName { 
     private String ip; 
     public PhotoName(String ip) { 
     super(); 
     this.ip = ip; 
     } 
     public String getIp() { 
     return ip; 
     } 
     public void setIp(String ip) { 
     this.ip = ip; 
     } 
     public String getTime(){ 
     Date date = new Date(); 
     DateFormat df = new SimpleDateFormat("yyyyMMddHHmmssSSS"); 
     return df.format(date); 
     } 
     public String getPhotoName(){ 
     return this.ip + this.getTime(); 
     } 
    } 

    实现所有这些的接口类:

    public interface UpDAO { 
     /** 
     * 创建相册名称 
     * 
     */ 
     public int creAlbum(AlbumPOJO ap); 
     /** 
     *显示所创建的所有相册名称 
     */ 
     public ListAlbumPOJO> findAllAlbum(int id); 
     public ListPhotoPOJO> findAllPhoto(int id); 
     /** 
     * 上传照片 
     */ 
     public int upPhoto(PhotoPOJO pp); 
     /** 
     * 删除相册 
     * @param id 相册id 
     * @return 
     */ 
     public int delAlbum(int id); 
     /** 
     * 删除照片 
     * @param id 照片id 
     * @return 
     */ 
     public int delPhoto(int id); 
     /** 
     * 登录 
     * @param username 
     * @param password 
     * @return 
     */ 
     public UserPOJO login(String username,String password); 
    } 

    接口的具体实现类:

    public class UpDAOImpl implements UpDAO { 
     /* (non-Javadoc) 
     * @see cn.jvsun.DAO.UpDAO#creAlbum(cn.jvsun.POJO.AlbumPOJO) 
     * 创建相册名称 
     */ 
     public int creAlbum(AlbumPOJO ap) { 
     int albumNum=this.getAlbumNum(); 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     try { 
      conn=JDBCHelper.getConn(); 
      conn.setAutoCommit(false); 
      String sql="insert into album(id,a_name,user_id)values(?,?,?)"; 
      pstate = conn.prepareStatement(sql); 
      pstate.setInt(1, albumNum); 
      pstate.setString(2,ap.getA_name()); 
      pstate.setInt(3, ap.getUser_id()); 
      pstate.execute(); 
      conn.commit(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
      try { 
      conn.rollback();//出问题就撤回,全不提交 
      } catch (SQLException e1) { 
      e1.printStackTrace(); 
      } 
     }finally{ 
      try { 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      e.printStackTrace(); 
      } 
     } 
     return albumNum; 
     } 
     /* (non-Javadoc) 
     * @see cn.jvsun.DAO.UpDAO#upPhoto(java.lang.String, java.lang.String, int) 
     * 上传照片 
     */ 
     public int upPhoto(PhotoPOJO pp) { 
     int pNum=this.getPhotoNum(); 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     try { 
      conn=JDBCHelper.getConn(); 
      conn.setAutoCommit(false); 
      String sql="insert into photo(id,p_name,p_url,p_albumid)values(?,?,?,?)"; 
      pstate = conn.prepareStatement(sql); 
      pstate.setInt(1, pNum); 
      pstate.setString(2,pp.getP_name()); 
      pstate.setString(3, pp.getP_url()); 
      pstate.setInt(4, pp.getP_albumId()); 
      pstate.execute(); 
      conn.commit(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
      try { 
      conn.rollback();//出问题就撤回,全不提交 
      } catch (SQLException e1) { 
      e1.printStackTrace(); 
      } 
     }finally{ 
      try { 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      e.printStackTrace(); 
      } 
     } 
     return pNum; 
     } 
     /* (non-Javadoc) 
     * @see cn.jvsun.DAO.UpDAO#delAlbum(int) 
     * 删除相册 
     */ 
     public int delAlbum(int id) { 
     int result=0; 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     String sql="delete from album where id="+id+""; 
     try { 
      conn=JDBCHelper.getConn(); 
      pstate = conn.prepareStatement(sql); 
      result=pstate.executeUpdate(); 
     } catch (SQLException e) { 
      e.printStackTrace(); 
     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     }finally{ 
      try { 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
      } 
     } 
     return result; 
     } 
     /* (non-Javadoc) 
     * @see cn.jvsun.DAO.UpDAO#delPhoto(int) 
     * 删除照片 
     */ 
     public int delPhoto(int id) { 
     int result=0; 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     String sql="delete from photo where id="+id+""; 
     try { 
      conn=JDBCHelper.getConn(); 
      pstate = conn.prepareStatement(sql); 
      result=pstate.executeUpdate(); 
     } catch (SQLException e) { 
      e.printStackTrace(); 
     } catch (Exception e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     }finally{ 
      try { 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
      } 
     } 
     return result; 
     } 
     /* (non-Javadoc) 
     * @see cn.jvsun.DAO.UpDAO#login(java.lang.String, java.lang.String) 
     * 用户登录 
     */ 
     public UserPOJO login(String username, String password) { 
     UserPOJO user=null; 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     ResultSet res = null; 
     try { 
      conn=JDBCHelper.getConn(); 
      String sql="select id,username from userinfo where username=? and password=?"; 
      pstate = conn.prepareStatement(sql); 
      pstate.setString(1, username); 
      pstate.setString(2, password); 
      res = pstate.executeQuery(); 
      while(res.next()){ 
      user=new UserPOJO(res.getInt(1),username,null); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     }finally{ 
      try { 
      res.close(); 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      e.printStackTrace(); 
      } 
     } 
     return user; 
     } 
     /** 
     * 相册序列号 
     */ 
     public int getAlbumNum(){ 
     int albumNum=-1; 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     ResultSet res = null; 
     try { 
      conn=JDBCHelper.getConn(); 
      String sql="select aid.nextval from dual"; 
      pstate=conn.prepareStatement(sql); 
      res=pstate.executeQuery(); 
      while(res.next()){ 
      albumNum=res.getInt(1); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     }finally{ 
      try { 
      res.close(); 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      e.printStackTrace(); 
      } 
     } 
     return albumNum; 
     } 
     /** 
     *照片序列号 
     */ 
     public int getPhotoNum(){ 
     int photoNum=-1; 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     ResultSet res = null; 
     try { 
      conn=JDBCHelper.getConn(); 
      String sql="select pid.nextval from dual"; 
      pstate=conn.prepareStatement(sql); 
      res=pstate.executeQuery(); 
      while(res.next()){ 
      photoNum=res.getInt(1); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     }finally{ 
      try { 
      res.close(); 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      e.printStackTrace(); 
      } 
     } 
     return photoNum; 
     } 
     /* (non-Javadoc) 
     * @see cn.jvsun.DAO.UpDAO#findAll() 
     * 显示所创建的相册名 
     */ 
     public ListAlbumPOJO> findAllAlbum(int id) { 
     ListAlbumPOJO> list= new ArrayListAlbumPOJO>(); 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     ResultSet res = null; 
     try { 
      conn=JDBCHelper.getConn(); 
      String sql="select id,a_name,user_id from album where user_id=?"; 
      pstate = conn.prepareStatement(sql); 
      pstate.setInt(1, id); 
      res = pstate.executeQuery(); 
      while(res.next()){ 
      AlbumPOJO ap=new AlbumPOJO(res.getInt(1),res.getString(2),res.getInt(3)); 
      list.add(ap); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     }finally{ 
      try { 
      res.close(); 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      e.printStackTrace(); 
      } 
     } 
     return list; 
     } 
     /* (non-Javadoc) 
     * @see cn.jvsun.DAO.UpDAO#findAllPhoto(int) 
     * 显示照片 
     */ 
     public ListPhotoPOJO> findAllPhoto(int aid) { 
     ListPhotoPOJO> list= new ArrayListPhotoPOJO>(); 
     Connection conn = null; 
     PreparedStatement pstate = null; 
     ResultSet res = null; 
     try { 
      conn=JDBCHelper.getConn(); 
      String sql="select id,p_name,p_url from photo where P_ALBUMID=?"; 
      pstate = conn.prepareStatement(sql); 
      pstate.setInt(1, aid); 
      res = pstate.executeQuery(); 
      while(res.next()){ 
      PhotoPOJO pojo=new PhotoPOJO(res.getInt(1),res.getString(2),res.getString(3), aid); 
      list.add(pojo); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     }finally{ 
      try { 
      res.close(); 
      pstate.close(); 
      conn.close(); 
      } catch (SQLException e) { 
      e.printStackTrace(); 
      } 
     } 
     return list; 
     } 
    } 

    用户,相册,照片三个POJO类:

    /** * 用户实体类 
     * 
     */ 
    public class UserPOJO implements Serializable{ 
     private static final long serialVersionUID = 7554548269035753256L; 
     private int id; 
     private String username; 
     private String password; 
     public int getId() { 
     return id; 
     } 
     public void setId(int id) { 
     this.id = id; 
     } 
     public String getUsername() { 
     return username; 
     } 
     public void setUsername(String username) { 
     this.username = username; 
     } 
     public String getPassword() { 
     return password; 
     } 
     public void setPassword(String password) { 
     this.password = password; 
     } 
     public UserPOJO(int id, String username, String password) { 
     super(); 
     this.id = id; 
     this.username = username; 
     this.password = password; 
     } 
     public UserPOJO(String username, String password) { 
     this.username = username; 
     this.password = password; 
     } 
     public UserPOJO() { 
     super(); 
     // TODO Auto-generated constructor stub 
     } 
    } 
    /** 
     * 相册实体类 
     * 
     */ 
    public class AlbumPOJO implements Serializable{ 
     private int id; 
     private String a_name; 
     private int user_id; 
     public int getId() { 
     return id; 
     } 
     public void setId(int id) { 
     this.id = id; 
     } 
     public String getA_name() { 
     return a_name; 
     } 
     public void setA_name(String a_name) { 
     this.a_name = a_name; 
     } 
     public int getUser_id() { 
     return user_id; 
     } 
     public void setUser_id(int user_id) { 
     this.user_id = user_id; 
     } 
     public AlbumPOJO(int id, String a_name, int user_id) { 
     super(); 
     this.id = id; 
     this.a_name = a_name; 
     this.user_id = user_id; 
     } 
     public AlbumPOJO(String a_name, int user_id) { 
     this.a_name = a_name; 
     this.user_id = user_id; 
     } 
     public AlbumPOJO() { 
     super(); 
     // TODO Auto-generated constructor stub 
     } 
    } 
    /** 
     *照片实体类 
     * 
     */ 
    public class PhotoPOJO implements Serializable{ 
     private static final long serialVersionUID = 5937149639009957458L; 
     private int id; 
     private String p_name; 
     private String p_url; 
     private int p_albumId; 
     public int getId() { 
     return id; 
     } 
     public void setId(int id) { 
     this.id = id; 
     } 
     public String getP_name() { 
     return p_name; 
     } 
     public void setP_name(String p_name) { 
     this.p_name = p_name; 
     } 
     public String getP_url() { 
     return p_url; 
     } 
     public void setP_url(String p_url) { 
     this.p_url = p_url; 
     } 
     public int getP_albumId() { 
     return p_albumId; 
     } 
     public void setP_albumId(int p_albumId) { 
     this.p_albumId = p_albumId; 
     } 
     public PhotoPOJO(int id, String p_name, String p_url, int p_albumId) { 
     super(); 
     this.id = id; 
     this.p_name = p_name; 
     this.p_url = p_url; 
     this.p_albumId = p_albumId; 
     } 
     public PhotoPOJO(String p_name, String p_url, int p_albumId) { 
     this.p_name = p_name; 
     this.p_url = p_url; 
     this.p_albumId = p_albumId; 
     } 
     public PhotoPOJO() { 
     super(); 
     // TODO Auto-generated constructor stub 
     } 
    } 

    login.jsp实现登录

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    % 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
    %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     base href="%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
     title>login/title> 
     /head> 
     body> 
     % 
     request.setCharacterEncoding("utf-8"); 
     String action=request.getParameter("action"); 
     UpDAO ud=new UpDAOImpl(); 
     String username=request.getParameter("username"); 
     String password=request.getParameter("password"); 
     UserPOJO pojo=ud.login(username, password); 
     if("log".equals(action)){ 
     if(pojo==null){ 
      %> 
      h1>登录失败/h1> 
      % 
     }else{ 
      request.getSession().setAttribute("username", username); 
      request.getSession().setAttribute("userid", pojo.getId()); 
      response.sendRedirect("index.jsp"); 
     } 
     } 
     %> 
     form action="login.jsp?action=log" method="post"> 
     input type="text" name="username" placeholder="请输入用户名"/> 
     input type="password" name="password" placeholder="请输入密码"/> 
     input type="submit"/> 
     /form> 
     /body> 
    /html> 

    index.jsp实现显示相册

    代码如下:

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    % 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
    %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     base href="%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
     title>person message/title> 
     /head> 
     body> 
     center>相册界面/center> 
     当前用户:%=request.getSession().getAttribute("username")%> br> 
     a href="cre.jsp" rel="external nofollow" >去创建相册/a>br> 
     我的所有相册:br> 
     % 
     int userid=(Integer)request.getSession().getAttribute("userid"); 
     UpDAO dao=new UpDAOImpl(); 
     ListAlbumPOJO> list=dao.findAllAlbum(userid); 
     for(AlbumPOJO pojo:list){ 
     %> 
     tr> 
     a>相册id:/a>td>%=pojo.getId() %>/td> 
     a>相册名称:/a>td>%=pojo.getA_name() %>/td> 
     a>创建者id:/a>td>%=pojo.getUser_id() %>/td> 
     td>a href="up.jsp?aid=%=pojo.getId() %>" rel="external nofollow" >添加照片/a>/td> 
     td>a href="show.jsp?phid=%=pojo.getId() %>" rel="external nofollow" >查看照片/a>/td> 
     td>a href="del.jsp?aid=%=pojo.getId() %>" rel="external nofollow" >删除相册/a>/td> 
     /tr>br> 
     % 
     } 
     %> 
     /body> 
    /html> 

    cre.jsp创建相册

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    % 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
    %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     base href="%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
     title>up photo/title> 
     /head> 
     body> 
     % 
     request.setCharacterEncoding("utf-8"); 
     String action=request.getParameter("action"); 
     UpDAO ud=new UpDAOImpl(); 
     String toCre=request.getParameter("cre"); 
     int userId=(Integer)request.getSession().getAttribute("userid"); 
     if("cre".equals(action)){ 
     AlbumPOJO ap=new AlbumPOJO(toCre,userId); 
     int aNum=ud.creAlbum(ap); 
     if(aNum!=-1){ 
      response.sendRedirect("index.jsp"); 
     }else{ 
      %> 
      h1>创建相册失败/h1> 
      % 
     } 
     } 
     %> 
     form action="cre.jsp?action=cre" method="post"> 
     input type="text" name="cre" placeholder="请输入您要创建的相册名称"/> 
     input type="submit" value="确定"> 
     /form> 
     /body> 
    /html> 

    up.jsp上传照片

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    %@ page import="cn.jvsun.tools.*" %> 
    %@page import="org.lxh.smart.*" %> 
    % 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
    %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     base href="%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
     title>上传照片/title> 
     /head> 
     body> 
     % 
     int aid=Integer.parseInt(request.getParameter("aid")); 
     %> 
     form action="upCheck.jsp" method="post" enctype="multipart/form-data"> 
     input type="hidden" name="aid" value="%=aid %>"/> 
     input type="file" name="photo"/> 
     input type="submit" value="确认上传"/> 
     /form> 
     /body> 
    /html> 

    upCheck.jsp上传照片的处理页

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    %@ page import="cn.jvsun.tools.*" %> 
    %@page import="org.lxh.smart.*" %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     title>/title> 
     /head> 
     body> 
     % 
     String ip = request.getRemoteAddr(); 
     ip = ip.replaceAll(":",""); 
     PhotoName pn=new PhotoName(ip); 
     String pName = pn.getPhotoName();//照片名字,是由IP加当前时间组成 
     SmartUpload smartupload = new SmartUpload();//实例化上传操作的对象 
     //初始化上传文件 
     smartupload.initialize(pageContext); 
     //准备上传 
     smartupload.upload(); 
     int albumId=Integer.parseInt(smartupload.getRequest().getParameter("aid")); 
     //取得文件的后缀 
     String endName = smartupload.getFiles().getFile(0).getFileExt(); 
     //文件保存的路径 
     /*String p_url = getServletContext().getRealPath("/")+ 
       "file/"+pName+"."+endName;*/ 
     String p_url="K:/workspace/Xiangce/WebRoot/file/"+pName+"."+endName; 
     //保存文件 
     smartupload.getFiles().getFile(0).saveAs(p_url); 
     UpDAO ad=new UpDAOImpl(); 
     PhotoPOJO pojo=new PhotoPOJO(pName+"."+endName,p_url,albumId); 
     int photoNum=ad.upPhoto(pojo); 
     if(photoNum != -1){ 
      request.getSession().setAttribute("phid", albumId); 
      response.sendRedirect("show.jsp"); 
      } else { 
     %> 
     上传失败 
     % 
      } 
     %> 
     /body> 
    /html> 

    show.jsp显示照片及信息页:

    代码如下:

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    % 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
    %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     base href="%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
     title>My JSP 'show.jsp' starting page/title> 
     /head> 
     body> 
     center>相册界面/center> 
     当前用户:%=request.getSession().getAttribute("username")%> br> 
     % 
     int phid=(Integer)request.getSession().getAttribute("phid"); 
     UpDAO dao=new UpDAOImpl(); 
     ListPhotoPOJO> list=dao.findAllPhoto(phid); 
     for(PhotoPOJO pojo:list){ 
     %> 
     tr> 
     a>照片id:/a>td>%=pojo.getId() %>/td>br> 
     a>照片名称:/a>td>%=pojo.getP_name() %>/td>br> 
     a>照片路径:/a>td>%=pojo.getP_url() %>/td>br> 
     a>照片所属相册名称:/a>td>%=pojo.getP_albumId() %>/td>br> 
     td>img src="%=path%>/file/%=pojo.getP_name() %>" width="100" height="100"/>/td> 
     a href="photo_del.jsp?pid=%=pojo.getId() %>" rel="external nofollow" >删除照片:/a>/td>br> 
     /tr>br> 
     %} %> 
     /body> 
    /html> 

    photo_del.jsp删除照片

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    % 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
    %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     base href="%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
     title>del/title> 
     /head> 
     body> 
     % 
     int pid=Integer.parseInt(request.getParameter("pid")); 
     int result=0; 
     UpDAO dao=new UpDAOImpl(); 
     result=dao.delPhoto(pid); 
     if(result==1){ 
     out.println("script>alert('删除成功');window.location.href('show.jsp');/script>"); 
     }else{ 
     out.println("script>alert('出错了');window.location.href('show.jsp');/script>"); 
     } 
     %> 
     /body> 
    /html> 

    del.jsp删除相册

    %@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
    %@ page import="cn.jvsun.DAO.Impl.*" %> 
    %@ page import="cn.jvsun.POJO.*" %> 
    %@ page import="cn.jvsun.DAO.*" %> 
    % 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
    %> 
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    html> 
     head> 
     base href="%=basePath%>" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
     title>del/title> 
     /head> 
     body> 
     % 
     int aid=Integer.parseInt(request.getParameter("aid")); 
     int result=0; 
     UpDAO dao=new UpDAOImpl(); 
     result=dao.delAlbum(aid); 
     if(result==1){ 
     out.println("script>alert('删除成功');window.location.href('index.jsp');/script>"); 
     }else{ 
     out.println("script>alert('删除失败,请先把相册中的照片删掉');window.location.href('index.jsp');/script>"); 
     } 
     %> 
     /body> 
    /html> 

    数据库的建表语句:

    -- Create table 
    create table USERINFO 
    ( 
     ID NUMBER, 
     USERNAME VARCHAR2(30), 
     PASSWORD VARCHAR2(30) 
    ) 
    tablespace USERS 
     pctfree 10 
     initrans 1 
     maxtrans 255 
     storage 
     ( 
     initial 64 
     minextents 1 
     maxextents unlimited 
     ); 
    -- Create/Recreate primary, unique and foreign key constraints 
    alter table USERINFO 
     add constraint PID primary key (ID) 
     disable; 
    --上传者 
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
    -- Create table 
    create table ALBUM 
    ( 
     ID NUMBER not null, 
     A_NAME VARCHAR2(30), 
     USER_ID NUMBER 
    ) 
    tablespace USERS 
     pctfree 10 
     initrans 1 
     maxtrans 255 
     storage 
     ( 
     initial 64 
     minextents 1 
     maxextents unlimited 
     ); 
    -- Create/Recreate primary, unique and foreign key constraints 
    alter table ALBUM 
     add constraint AL_PID primary key (ID) 
     using index 
     tablespace USERS 
     pctfree 10 
     initrans 2 
     maxtrans 255 
     storage 
     ( 
     initial 64K 
     minextents 1 
     maxextents unlimited 
     ); 
    alter table ALBUM 
     add constraint USERID foreign key (USER_ID) 
     references USERINFO (ID) 
     disable; 
    --相册表 
    ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
    -- Create table 
    create table PHOTO 
    ( 
     ID NUMBER, 
     P_NAME VARCHAR2(30), 
     P_URL VARCHAR2(50), 
     P_ALBUMID NUMBER(30) 
    ) 
    tablespace USERS 
     pctfree 10 
     initrans 1 
     maxtrans 255 
     storage 
     ( 
     initial 64 
     minextents 1 
     maxextents unlimited 
     ); 
    -- Create/Recreate primary, unique and foreign key constraints 
    alter table PHOTO 
     add constraint ALB_ID foreign key (P_ALBUMID) 
     references ALBUM (ID); 
    --相片表 

    好了,所有代码就写完了,切记,需要smartupload.jar包,没有的童鞋可以去下载:

    smartuploadjar包

    以上所述是小编给大家介绍的jsp实现仿QQ空间新建多个相册名称并向相册中添加照片功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

    上一篇:JSP 前端数据本地排序实例代码
    下一篇:基于jsp的AJAX多文件上传的实例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    jsp实现仿QQ空间新建多个相册名称并向相册中添加照片功能 jsp,实现,仿,空间,新建,多个,