版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
資料內(nèi)容僅供您學(xué)習(xí)參考,如有不當(dāng)或者侵權(quán),請(qǐng)聯(lián)系改正或者刪除。手機(jī)微博定位功能的設(shè)計(jì)與實(shí)現(xiàn)源程序4月19日
Comments.javapackagebean;publicclassComments{ publicStringdate; publicStringcontent; publicStringcmtName; publicStringcmtNo; publicComments(Stringdate,Stringcontent,StringcmtName,StringcmtNo){ this.date=date; this.content=content; this.cmtName=cmtName; this.cmtNo=cmtNo; }}Diary.javapackagebean;importjava.util.ArrayList;publicclassDiary{ publicStringrid; publicStringtitle; publicStringcontent; publicStringu_name; publicStringtime; publicStringu_email; publicArrayList<Comments>commentList; publicvoidsetCommentList(ArrayList<Comments>commentList){ mentList=commentList; } publicDiary(Stringno,Stringtitle,Stringcontent,Stringu_name, Stringu_email,Stringtime,ArrayList<Comments>cmtList){ this.rid=no; this.title=title; this.content=content; this.u_name=u_name; this.u_email=u_email; this.time=time; mentList=cmtList; } publicDiary(Stringno,Stringtitle,Stringcontent,Stringu_name, Stringu_email,Stringtime){ this.rid=no; this.title=title; this.content=content; this.u_name=u_name; this.u_email=u_email; this.time=time; }}HeadInfo.javapackagebean;publicclassHeadInfo{ publicStringh_id; publicStringh_des; publicStringu_no; publicHeadInfo(Stringh_id,Stringh_des,Stringu_no){ this.h_id=h_id; this.h_des=h_des; this.u_no=u_no; }}Location.javapackagebean;publicclassLocation{ privateintl_id; privatedoublel_x; privatedoublel_y; privateStringl_address; /** *@returnthel_id */ publicintgetL_id(){ returnl_id; } /** *@paraml_id *thel_idtoset */ publicvoidsetL_id(intl_id){ this.l_id=l_id; } /** *@returnthel_x */ publicdoublegetL_x(){ returnl_x; } /** *@paraml_x *thel_xtoset */ publicvoidsetL_x(doublel_x){ this.l_x=l_x; } /** *@returnthel_y */ publicdoublegetL_y(){ returnl_y; } /** *@paraml_y *thel_ytoset */ publicvoidsetL_y(doublel_y){ this.l_y=l_y; } /** *@returnthel_address */ publicStringgetL_address(){ returnl_address; } /** *@paraml_address *thel_addresstoset */ publicvoidsetL_address(Stringl_address){ this.l_address=l_address; }}P_Comments.javapackagebean;publicclassP_Comments{ publicStringcontent; publicStringu_no; publicStringu_name; publicStringdate; publicP_Comments(Stringcontent,StringuNo,StringuName,Stringdate){ this.content=content; u_no=uNo; u_name=uName; this.date=date; }}PhotoInfo.javapackagebean;publicclassPhotoInfo{ publicStringp_id; publicStringp_name; publicStringp_des; publicStringx_id; publicPhotoInfo(StringpId,StringpName,StringpDes,StringxId){ super(); p_id=pId; p_name=pName; p_des=pDes; x_id=xId; }}User.javapackagebean;publicclassUser{ publicStringu_no; publicStringu_name; publicStringu_email; publicStringu_state; publicStringh_id; publicUser(){ }; publicUser(Stringu_no,Stringu_name,Stringu_email,Stringu_state, Stringh_id){ this.u_no=u_no; this.u_name=u_name; this.u_state=u_state; this.u_email=u_email; this.h_id=h_id; } publicStringgetU_no(){ returnu_no; } publicvoidsetU_no(Stringu_no){ this.u_no=u_no; } publicStringgetU_name(){ returnu_name; } publicvoidsetU_name(Stringu_name){ this.u_name=u_name; } publicStringgetU_email(){ returnu_email; } publicvoidsetU_email(Stringu_email){ this.u_email=u_email; } publicStringgetU_state(){ returnu_state; } publicvoidsetU_state(Stringu_state){ this.u_state=u_state; } publicStringgetH_id(){ returnh_id; } publicvoidsetH_id(Stringh_id){ this.h_id=h_id; }}Visitor.javapackagebean;publicclassVisitor{ publicStringv_email; publicStringv_name; publicStringh_id; publicStringv_date; publicVisitor(StringvEmail,StringvName,StringhId,StringvDate){ this.v_email=vEmail; this.v_name=vName; this.h_id=hId; this.v_date=vDate; }}ConstantUtil.javapackagedao;publicclassConstantUtil{ publicstaticfinalStringFEIEND="friend_max";//用于獲取friend表當(dāng)前的最大編號(hào) publicstaticfinalStringDIARY="diary_max";//用于獲取diary表當(dāng)前的最大編號(hào) publicstaticfinalStringALBUM="album_max";//用于獲取album表當(dāng)前的最大編號(hào) publicstaticfinalStringPHOTO="photo_max";//用于獲取photo表的最大編號(hào) publicstaticfinalStringCOMMENT="comment_max";//用于獲取comment表當(dāng)前的最大編號(hào) publicstaticfinalStringVISIT="comment_max";//用于獲取visit表當(dāng)前的最大編號(hào) publicstaticfinalStringUSER="user_max";//用于獲取user表當(dāng)前的最大編號(hào) publicstaticfinalStringHEAD="head_max";//用于獲取user表當(dāng)前的最大編號(hào) publicstaticfinalStringP_COMMENT="p_comment_max";//用于獲取user表當(dāng)前的最大編號(hào) publicstaticfinalStringLOCATION="location_max";//用于獲取location表當(dāng)前的最大編號(hào) publicstaticfinalStringCHAR_ENCODING="GBK";//字符串編碼格式 publicstaticfinalStringCONNECTION_OUT="訪問數(shù)據(jù)庫(kù)出錯(cuò),請(qǐng)稍后重試。"; publicstaticfinalStringLOGIN_FAIL="用戶名或密碼無(wú)效,請(qǐng)重新輸入。"; publicstaticfinalStringREGISTER_FAIL="注冊(cè)失敗,請(qǐng)重試。"; publicstaticfinalStringDIARY_FAIL="日志更新失敗,請(qǐng)重試。"; publicstaticfinalStringDIARY_SUCCESS="日志更新成功!"; publicstaticfinalStringDELETE_FAIL="刪除失敗,請(qǐng)重試。"; publicstaticfinalStringDELETE_SUCCESS="刪除成功!"; publicstaticfinalStringUPDATE_STATE_SUCCESS="心情更新成功!"; publicstaticfinalStringUPDATE_STATE_FAIL="心情更新失敗!"; publicstaticfinalStringCREATE_ALBUM_SUCESS="相冊(cè)創(chuàng)立成功!"; publicstaticfinalStringCREATE_ALBUM_FAIL="相冊(cè)創(chuàng)立失敗!"; publicstaticfinalStringUPLOAD_SIZE_EXCEED="文件大小超過限制!請(qǐng)重新選擇。(3M以內(nèi))"; publicstaticfinalStringUPLOAD_SUCCESS="文件上傳成功。"; publicstaticfinalStringUPLOAD_FAIL="文件上傳失敗。"; publicstaticfinalintDIARY_ABBR=8;//顯示的日志字?jǐn)?shù),超過則省略 publicstaticvoidpp(byte[]buf){ System.out.println("================================"); intstart=buf.length-100; for(inti=start;i<buf.length;i++){ System.out.print(buf[i]); } System.out.println("\n================================"); }}DBUtil.javapackagedao;importstaticdao.ConstantUtil.ALBUM;importstaticdao.ConstantUtil.CHAR_ENCODING;importstaticdao.ConstantUtil.COMMENT;importstaticdao.ConstantUtil.CONNECTION_OUT;importstaticdao.ConstantUtil.DELETE_FAIL;importstaticdao.ConstantUtil.DELETE_SUCCESS;importstaticdao.ConstantUtil.DIARY;importstaticdao.ConstantUtil.DIARY_FAIL;importstaticdao.ConstantUtil.DIARY_SUCCESS;importstaticdao.ConstantUtil.FEIEND;importstaticdao.ConstantUtil.HEAD;importstaticdao.ConstantUtil.LOCATION;importstaticdao.ConstantUtil.LOGIN_FAIL;importstaticdao.ConstantUtil.PHOTO;importstaticdao.ConstantUtil.P_COMMENT;importstaticdao.ConstantUtil.REGISTER_FAIL;importstaticdao.ConstantUtil.UPDATE_STATE_FAIL;importstaticdao.ConstantUtil.UPDATE_STATE_SUCCESS;importstaticdao.ConstantUtil.USER;importstaticdao.ConstantUtil.VISIT;importjava.awt.image.BufferedImage;importjava.io.ByteArrayInputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.IOException;importjava.io.InputStream;importjava.io.UnsupportedEncodingException;import.MalformedURLException;importjava.sql.Blob;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.Statement;importjava.util.ArrayList;importjavax.imageio.ImageIO;importnet.sf.json.JSONObject;importmons.httpclient.HttpClient;importmons.httpclient.HttpStatus;importmons.httpclient.methods.GetMethod;importbean.Comments;importbean.Diary;importbean.HeadInfo;importbean.Location;importbean.P_Comments;importbean.PhotoInfo;importbean.User;importbean.Visitor;publicclassDBUtil{ publicstaticConnectiongetConnection(){ Connectioncon=null; //注冊(cè)JDBC驅(qū)動(dòng) try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); con=DriverManager .getConnection( "jdbc:mysql://localhost:3306/kdwb?useUnicode=true&characterEncoding=utf-8", "root","123456"); }catch(Exceptione){ e.printStackTrace(); } returncon; } //修改并過的某一個(gè)表中的最大信息量 publicstaticsynchronizedintgetMax(Stringtable){ intmax=-1; Connectioncon=null;//聲明一個(gè)數(shù)據(jù)庫(kù)連接 Statementst=null;//聲明一個(gè)表示式 ResultSetrs=null;//聲明一個(gè)結(jié)果集 try{ con=getConnection();//獲取數(shù)據(jù)庫(kù)的連接 st=con.createStatement();//獲取表示式 Stringsql="updatemaxset"+table+"="+table+"+1"; st.executeUpdate(sql);//執(zhí)行SQL rs=st.executeQuery("select"+table+"frommax");//執(zhí)行 //SQL,并獲得結(jié)果集 if(rs.next()){ max=rs.getInt(1); returnmax; } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(st!=null){ st.close(); st=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnmax; } //登錄驗(yàn)證 publicstaticArrayList<String>checkLogin(Stringu_email,Stringu_pwd){ ArrayList<String>result=newArrayList<String>(); Connectioncon=null;//聲明數(shù)據(jù)庫(kù)的連接 PreparedStatementps=null;//聲明表示式 ResultSetrs=null;//聲明一個(gè)ResultSet結(jié)果集 try{ con=getConnection();//獲得數(shù)據(jù)庫(kù)連接 if(con==null){//如果獲得數(shù)據(jù)庫(kù)連接為空 result.add(CONNECTION_OUT);//返回信息為:訪問數(shù)據(jù)庫(kù)出錯(cuò),請(qǐng)稍后重試。 returnresult; } //批量處理SQL語(yǔ)句 ps=con.prepareStatement("selectu_no,u_name,u_email,u_state,h_idfromuserwhereu_email=?andu_pwd=?"); ps.setString(1,u_email); ps.setString(2,u_pwd); rs=ps.executeQuery(); if(rs.next()){//在數(shù)據(jù)庫(kù)中查找出該用戶 for(inti=1;i<=5;i++){ result.add(rs.getString(i));//將用戶添加到結(jié)果列表 } }else{//在數(shù)據(jù)庫(kù)中未查找出該用戶 result.add(LOGIN_FAIL);//返回登錄失敗的信息 } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //注冊(cè)新的用戶 publicstaticStringregisterUser(Stringu_name,Stringu_pwd, Stringu_email,Stringu_state,Stringh_id,intl_id){ Stringresult=null; Connectioncon=null; PreparedStatementps=null;//創(chuàng)立PreparedStatement對(duì)象 try{ con=getConnection(); if(con==null){ result=CONNECTION_OUT; returnresult; } ps=con.prepareStatement("insertintouser(u_no,u_name,u_pwd,u_email,u_state,h_id,l_id)" +"values(?,?,?,?,?,?,?)"); Stringu_no=String.valueOf(getMax(USER)); u_name=newString(u_name.getBytes(),"GBK"); u_state=newString(u_state.getBytes(),"GBK"); intno=Integer.valueOf(u_no); inthid=Integer.valueOf(h_id); ps.setInt(1,no); ps.setString(2,u_name); ps.setString(3,u_pwd); ps.setString(4,u_email); ps.setString(5,u_state); ps.setInt(6,hid); ps.setInt(7,l_id); intcount=ps.executeUpdate(); if(count==1){ result=u_email; }else{ result=REGISTER_FAIL; } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得好友列表 publicstaticArrayList<Object>getFiendList(Stringu_email){ ArrayList<Object>result=newArrayList<Object>(); Connectioncon=null; Statementst=null; ResultSetrs=null; try{ con=getConnection(); st=con.createStatement(); Stringsql="selectuser.u_no,user.u_name,user.u_email,user.u_state,user.h_id,location.l_x,location.l_y,location.l_address" +"fromuser,friend,location" +"wherelocation.l_id=user.l_idanduser.u_email=friend.u_email_otherandfriend.u_email_my='" +u_email+"'"; rs=st.executeQuery(sql); while(rs.next()){ Useruser=newUser(); user.setU_no(String.valueOf(rs.getInt(1))); Stringname=newString(rs.getString(2).getBytes("GBK"), CHAR_ENCODING); user.setU_name(name); user.setU_email(rs.getString(3)); Stringstate=newString(rs.getString(4).getBytes("GBK"), CHAR_ENCODING); user.setU_state(state); user.setH_id(String.valueOf(rs.getInt(5))); result.add(user); Locationlocation=newLocation(); location.setL_x(rs.getDouble(6)); location.setL_y(rs.getDouble(7)); Stringaddress=newString(rs.getString(8).getBytes("GBK"), CHAR_ENCODING); location.setL_address(address); result.add(location); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(st!=null){ st.close(); st=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //刪除好友 publicstaticStringdeleteFriend(Stringu_email,Stringu_noToDelete){ Stringresult=null; Connectioncon=null; PreparedStatementps=null; try{ con=getConnection(); ps=con.prepareStatement("deletefromfriendwhereu_email_my=?andu_email_other=?"); ps.setInt(1,Integer.valueOf(u_email)); ps.setInt(2,Integer.valueOf(u_noToDelete)); intcount=ps.executeUpdate(); if(count==1){ result=DELETE_SUCCESS; }else{ result=DELETE_FAIL; } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //編寫新的日志 publicstaticStringwriteNewDiary(Stringtitle,Stringcontent, Stringauthor){ Stringresult=null; Connectioncon=null; PreparedStatementps=null; try{ con=getConnection(); ps=con.prepareStatement("insertintodiary(r_id,r_title,r_content,u_email)" +"values(?,?,?,?)"); intmax=getMax(DIARY); ps.setInt(1,max); ps.setString(2,newString(title.getBytes(CHAR_ENCODING),"GBK")); ps.setString(3,newString(content.getBytes(CHAR_ENCODING),"GBK")); Stringu_email=author; ps.setString(4,u_email); intcount=ps.executeUpdate(); if(count==1){ result=DIARY_SUCCESS; }else{ result=DIARY_FAIL; } returnresult; }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得相冊(cè)列表權(quán)限 publicstaticArrayList<String[]>getAlbumListByAccess(Stringu_email, Stringvisitor){ ArrayList<String[]>result=newArrayList<String[]>(); Connectioncon=null; PreparedStatementps=null; ResultSetrs=null; try{ con=getConnection(); if(checkIfMyFriend(u_email,visitor)){ ps=con.prepareStatement("selectx_id,x_namefromalbumwhereu_email=?andx_access<2"); }else{ ps=con.prepareStatement("selectx_id,x_namefromalbumwhereu_email=?andx_access=0"); } ps.setString(1,visitor); rs=ps.executeQuery(); while(rs.next()){ Stringxid=rs.getInt(1)+""; Stringxname=newString(rs.getString(2).getBytes("GBK"), CHAR_ENCODING); String[]sa=newString[]{xid,xname}; result.add(sa); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得相冊(cè)列表 publicstaticArrayList<String[]>getAlbumList(Stringu_email){ ArrayList<String[]>result=newArrayList<String[]>(); Connectioncon=null; PreparedStatementps=null; ResultSetrs=null; try{ con=getConnection(); ps=con.prepareStatement("selectx_id,x_name,x_accessfromalbumwhereu_email=?"); ps.setString(1,u_email); rs=ps.executeQuery(); while(rs.next()){ String[]sa=newString[3]; sa[0]=rs.getInt(1)+""; sa[1]=newString(rs.getString(2).getBytes("GBK"), CHAR_ENCODING); sa[2]=rs.getInt(3)+""; result.add(sa); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //新建相冊(cè) publicstaticintcreateAlbum(Stringname,Stringu_email){ intresult=-1; Connectioncon=null; PreparedStatementps=null; try{ con=getConnection(); ps=con.prepareStatement("insertintoalbum(x_id,x_name,u_email)values(?,?,?)"); ps.setInt(1,getMax(ALBUM)); ps.setString(2,newString(name.getBytes(CHAR_ENCODING),"GBK")); ps.setString(3,u_email);//相冊(cè)所有人 result=ps.executeUpdate(); }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } publicstaticStringtoISO(Strings){ //TODOAuto-generatedmethodstub Stringresult=null; try{ result=newString(s.getBytes(),"GBK"); }catch(UnsupportedEncodingExceptione){ e.printStackTrace(); } returnresult; } //更新用戶的心情 publicstaticStringupdateState(Stringu_email,StringnewState){ Stringresult=null; Connectioncon=null; PreparedStatementps=null; try{ con=getConnection(); ps=con.prepareStatement("updateusersetu_state=?whereu_email=?"); ps.setString(1,newString(newState.getBytes(CHAR_ENCODING),"GBK")); ps.setString(2,u_email); intcount=ps.executeUpdate(); if(count==1){ result=UPDATE_STATE_SUCCESS; }else{ result=UPDATE_STATE_FAIL; } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得用戶的日志 publicstaticArrayList<Diary>getUserDiary(Stringu_email, intcurrentPage,intspan){ ArrayList<Diary>result=newArrayList<Diary>(); Connectioncon=null; Statementst=null; ResultSetrs=null; intstart=(current1)*span; Stringsql="selectdiary.r_id,diary.r_title,diary.r_content,date_format(diary.r_date,'%Y-%c-%e%k:%i:%s'),diary.u_email,user.u_name" + "fromdiary,userwherediary.u_email='" +u_email +"'anddiary.u_email=user.u_email" +"orderbydiary.r_datedesc" +"limit" +start +"," +span; try{ con=getConnection(); st=con.createStatement(); rs=st.executeQuery(sql); while(rs.next()){ Stringrid=rs.getInt(1)+""; Stringtitle=newString(rs.getString(2).getBytes("GBK"), CHAR_ENCODING); Stringcontent=newString(rs.getString(3).getBytes("GBK"), CHAR_ENCODING); Stringdate=rs.getString(4); Stringuemail=rs.getString(5)+""; Stringuname=newString(rs.getString(6).getBytes("GBK"), CHAR_ENCODING); Diaryd=newDiary(rid,title,content,uname,uemail,date); result.add(d); } for(Diaryd:result){ ArrayList<Comments>cmtList=getComments(d.rid); d.setCommentList(cmtList); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(st!=null){ st.close(); st=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得評(píng)論列表 publicstaticArrayList<Comments>getComments(Stringr_id){ //TODOAuto-generatedmethodstub ArrayList<Comments>result=newArrayList<Comments>(); Connectioncon=null; PreparedStatementps=null; ResultSetrs=null; Stringsql="selectdate_format(comment.c_date,'%Y-%c-%e%k:%i:%s'),comment.c_content,user.u_name,comment.u_email" +"fromcomment,userwherecomment.r_id=" +r_id +"anduser.u_email=comment.u_emailorderbycomment.c_datedesc"; try{ con=getConnection(); ps=con.prepareStatement(sql); //ps.setInt(1,Integer.valueOf(r_id)); rs=ps.executeQuery(); while(rs.next()){ Stringdate=rs.getString(1); Stringcontent=newString(rs.getString(2).getBytes("GBK"), CHAR_ENCODING); Stringuname=newString(rs.getString(3).getBytes("GBK"), CHAR_ENCODING); Stringuno=rs.getString(4)+""; Commentsc=newComments(date,content,uname,uno); result.add(c); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //添加新的圖片 publicstaticintinsertImage(Filefile,Stringpname,Stringpdes, Stringx_id){ intresult=-1; Connectioncon=null; java.sql.PreparedStatementps=null; FileInputStreamfis=null; try{ con=getConnection(); ps=con.prepareStatement("insertintophoto(p_id,p_name,p_des,p_data,x_id)values(?,?,?,?,?)"); ps.setInt(1,getMax(PHOTO)); ps.setString(2,pname); ps.setString(3,pdes); fis=newFileInputStream(file); ps.setBinaryStream(4,fis,(int)(file.length())); //ps.setBlob(4,fis,(int)file.length()); ps.setInt(5,Integer.valueOf(x_id)); result=ps.executeUpdate(); }catch(Exceptione){ e.printStackTrace(); }finally{ try{ ps.close(); }catch(Exceptione){ e.printStackTrace(); } try{ con.close(); }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //經(jīng)過相冊(cè)的ID獲得照片 publicstaticArrayList<PhotoInfo>getPhotoInfoByAlbum(Stringxid, intpageNo,intspan){ ArrayList<PhotoInfo>result=newArrayList<PhotoInfo>(); Connectioncon=null; PreparedStatementps=null; ResultSetrs=null; intstart=span*(pageNo-1); try{ con=getConnection(); ps=con.prepareStatement("selectp_id,p_name,p_des,x_idfromphoto" +"wherex_id=?orderbyp_idlimit"+start+","+span); ps.setInt(1,Integer.valueOf(xid)); rs=ps.executeQuery(); while(rs.next()){ Stringp_id=rs.getInt(1)+""; Stringp_name=newString(rs.getString(2).getBytes("GBK"), CHAR_ENCODING); Stringp_des=newString(rs.getString(3).getBytes("GBK"), CHAR_ENCODING); Stringx_id=rs.getInt(4)+""; PhotoInfop=newPhotoInfo(p_id,p_name,p_des,x_id); result.add(p); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(ps!=null){ ps.close(); ps=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } publicstaticBlobgetPhotoBlob(Stringid){ //TODOAuto-generatedmethodstub Blobresult=null; Connectioncon=null; PreparedStatementps=null; ResultSetrs=null; try{ con=getConnection(); ps=con.prepareStatement("selectp_datafromphotowherep_id=?"); ps.setInt(1,Integer.valueOf(id)); rs=ps.executeQuery(); if(rs.next()){ result=rs.getBlob(1); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ rs.close(); }catch(Exceptione){ e.printStackTrace(); } try{ ps.close(); }catch(Exceptione){ e.printStackTrace(); } try{ con.close(); }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得相冊(cè)的大小 publicstaticintgetAlbumSize(Stringxid){ intresult=-1; Connectioncon=null; PreparedStatementps=null; ResultSetrs=null; try{ con=getConnection(); ps=con.prepareStatement("selectcount(*)ascountfromphotowherex_id=?"); ps.setInt(1,Integer.valueOf(xid)); rs=ps.executeQuery(); if(rs.next()){ result=rs.getInt(1); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); } }catch(Exceptione){ e.printStackTrace(); } try{ ps.close(); }catch(Exceptione){ e.printStackTrace(); } try{ con.close(); }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得頭像列表 publicstaticArrayList<HeadInfo>getHeadList(intpageNo,intspan){ ArrayList<HeadInfo>result=newArrayList<HeadInfo>(); Connectioncon=null; Statementst=null; ResultSetrs=null; intstart=(pageNo-1)*span; try{ con=getConnection(); st=con.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY); rs=st.executeQuery("selecth_id,h_des,u_emailfromheadlimit" +start+","+span); while(rs.next()){ Stringhid=rs.getInt(1)+""; Stringhdes=newString(rs.getString(2).getBytes("GBK"), CHAR_ENCODING); Stringuno=rs.getInt(3)+""; HeadInfohi=newHeadInfo(hid,hdes,uno); result.add(hi); } }catch(Exceptione){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); rs=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(st!=null){ st.close(); st=null; } }catch(Exceptione){ e.printStackTrace(); } try{ if(con!=null){ con.close(); con=null; } }catch(Exceptione){ e.printStackTrace(); } } returnresult; } //獲得頭像Blob publicstaticBlobgetHeadBlob(Stringhid){ //TODOAuto-generatedmethodstub Blobresult=nul
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職市場(chǎng)營(yíng)銷(產(chǎn)品推銷)試題及答案
- 2025年中職冶金安全(冶金安全技術(shù))試題及答案
- 2026年作家(文學(xué)創(chuàng)作)考題及答案
- 大學(xué)(藝術(shù)設(shè)計(jì)學(xué))形象設(shè)計(jì)基礎(chǔ)2026年階段測(cè)試題及答案
- 2025年大學(xué)大三(林業(yè)經(jīng)濟(jì)管理)林業(yè)產(chǎn)業(yè)運(yùn)營(yíng)實(shí)務(wù)試題及答案
- 2025年高職園藝技術(shù)(植物營(yíng)養(yǎng)與施肥)試題及答案
- 2025年高職(云計(jì)算應(yīng)用)云服務(wù)應(yīng)用開發(fā)階段測(cè)試題及答案
- 2025年大學(xué)國(guó)際經(jīng)濟(jì)與貿(mào)易(國(guó)際經(jīng)濟(jì)與貿(mào)易教育心理學(xué))試題及答案
- 2025年大學(xué)動(dòng)畫(動(dòng)畫基礎(chǔ)設(shè)計(jì))試題及答案
- 2026年??诮?jīng)濟(jì)學(xué)院?jiǎn)握芯C合素質(zhì)筆試參考題庫(kù)帶答案解析
- GB/T 19342-2024手動(dòng)牙刷一般要求和檢測(cè)方法
- 期末測(cè)試(試題)-2024-2025學(xué)年六年級(jí)上冊(cè)語(yǔ)文統(tǒng)編版
- GB/T 15822.1-2024無(wú)損檢測(cè)磁粉檢測(cè)第1部分:總則
- 重癥醫(yī)學(xué)質(zhì)量控制中心督查評(píng)價(jià)標(biāo)準(zhǔn)及評(píng)分細(xì)則(2020版)
- 高中生物學(xué)選擇性必修一測(cè)試卷及答案解析
- 閩2023-G-01先張法預(yù)應(yīng)力高強(qiáng)混凝土管樁DBJT13-95
- 《橋梁上部構(gòu)造施工》課件-懸臂拼裝法-施工方法
- 織造學(xué)(青島大學(xué))智慧樹知到期末考試答案2024年
- 計(jì)算書-反滲透
- 小學(xué)教育課件教案節(jié)奏訓(xùn)練與學(xué)生自信心的培養(yǎng)
- 泌尿外科降低持續(xù)膀胱沖洗患者膀胱痙攣的發(fā)生率根本原因分析柏拉圖魚骨圖對(duì)策擬定
評(píng)論
0/150
提交評(píng)論