freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì)-sns社區(qū)博客系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-資料下載頁

2024-12-03 19:59本頁面

【導(dǎo)讀】本設(shè)計(jì)(論文)和資料若有不實(shí)之處,本人愿承擔(dān)一切相關(guān)責(zé)任。博客是繼Email、BBS、ICQ之后的第四代信息傳播方式,它在教。們的生活,成為目前最熱門的信息傳播平臺(tái),具有良好的應(yīng)用前景。器的支持下,敘述了使用JSP技術(shù)開發(fā)一個(gè)Web應(yīng)用程序的過程。層架構(gòu),結(jié)合JSP的具體開發(fā),成功模擬實(shí)現(xiàn)了一個(gè)博客網(wǎng)站的基本業(yè)務(wù)功能。系統(tǒng)實(shí)現(xiàn)、系統(tǒng)測(cè)試及總結(jié)與展望。首先說明論文的研究背景、目的等,接著簡(jiǎn)。單介紹了SNS,以及相關(guān)技術(shù)。然后在初步了解博客、SNS的基礎(chǔ)上,進(jìn)一步。編寫了需求分析文檔,劃分了系統(tǒng)需要實(shí)現(xiàn)的功能。系統(tǒng)的實(shí)現(xiàn)部分,這一章節(jié)主要包括了系統(tǒng)的界面外觀和Servlet的設(shè)計(jì),是系統(tǒng)完成后的演示。

  

【正文】 har(100) 創(chuàng)建時(shí)間 albums_new_time date 非空 5. tb_photo 表 照片信息表,主要用于保存用戶上傳的照片信息。結(jié)構(gòu)如表 45 所示。 表 45 tb_photo 表 字段說明 字段名稱 數(shù)據(jù)類型 約束 備注 編號(hào) photo_id int PK 自動(dòng)生成 相冊(cè) ID albums_id int FK 照片名稱 photo_name varchar(100) 照片描述 photo_description varchar(1000) 照片路徑 photo_path varchar(100) 非空 上傳時(shí)間 photo_time date 非空 6. tb_friend_type 表 好友分組信息表,主要用于保存好友分組的信息。結(jié)構(gòu)如表 46 所示。 表 46 tb_friend_type 表 字段說明 字段名稱 數(shù)據(jù)類型 約束 備注 分類 ID friend_type_id int PK 自動(dòng)生成 分類名稱 friend_type_content varchar(20) 第 4 章 系統(tǒng)設(shè)計(jì) 19 7. tb_friend 表 好友信息表,主要用于保存用戶的好友信息。結(jié)構(gòu)如表 47 所示。 表 47 tb_friend 表 字段說明 字段名稱 數(shù)據(jù)類型 約束 備注 編號(hào) id int PK 自動(dòng)生成 用戶 ID friend_id int FK 好友 ID user_id int FK 分類 ID friend_type_id int FK 第 5 章 系統(tǒng)實(shí)現(xiàn) 20 第 5 章 系統(tǒng)實(shí)現(xiàn) 系統(tǒng)環(huán)境 硬件環(huán)境 機(jī)器: PC 機(jī) CPU: CPU P4 以上 內(nèi)存: 1GB 以上 硬盤: 10GB 以上 軟件環(huán)境 操作系統(tǒng): Windows XP 數(shù)據(jù)庫: 開發(fā)工具: MyEclipse JAVA 編譯環(huán)境: JDK JAVA 運(yùn)行并發(fā)布: 瀏覽器 : IE 用戶管理 用戶登錄 在登錄界面,不但可以進(jìn)行登錄,還提供了自動(dòng)登錄的功能 ,其中,密碼是通過 Java[23][24][25][26]提供的 SHA1 算法來進(jìn)行加密的 ;除此外,還有注冊(cè)、忘記密碼等超鏈接。界面 如圖 所示 : 處理登錄請(qǐng)求的 Servlet()代碼見附錄 A 代碼 1 所示。 密碼加密主要代碼,用于保證用戶的安全性: private static MessageDigest messageDigest。 private Random rd = new Random()。 static { 第 5 章 系統(tǒng)實(shí)現(xiàn) 21 try { messageDigest = (sha1)。 } catch (NoSuchAlgorithmException e) { throw new RuntimeException((),e)。 } } private byte[] encrypt(String input) { byte[] bs = null。 try { bs = (utf8)。 } catch (UnsupportedEncodingException e) { bs = ()。 } byte[] b = (bs)。 b = (b, 24)。 for(int i = 20。 i 24。 i++) { b[i] = (byte) (256)。 } return b。 } private boolean pare(byte[] input, byte[] db) { for(int i = 0。 i 20。 i++) { if(input[i] != db[i]) { return false。 } } return true。 } 自動(dòng)登錄 主要 代碼: private UserService us = new UserService()。 public void doPost(HttpServletRequest request, HttpServletResponse response) 第 5 章 系統(tǒng)實(shí)現(xiàn) 22 throws ServletException, IOException { Cookie[] cookie = ()。 String auto = null。 if( cookie != null) { for(Cookie c : cookie) { if(cookie.equals(())) { auto = ()。 break。 } } } if( auto != null) { String[] autoInfo = (\\|)。 if( == 3 ) { User u = (autoInfo[0], (autoInfo[1]), autoInfo[2])。 if( u != null) { HttpSession session = ()。 (currentUser, u)。 String returnUrl =(String)(returnUrl)。 if( null != returnUrl ) { (returnUrl)。 (returnUrl)。 } else { (manage/)。 第 5 章 系統(tǒng)實(shí)現(xiàn) 23 } return。 } } } (()+/)。 } 圖 登錄界面 忘記密碼 忘記密碼的作用是:當(dāng)用戶忘記了自己登錄的密碼時(shí),在登錄界面點(diǎn)擊“忘記密碼”超鏈接,跳轉(zhuǎn)到忘記密碼的頁面,填入所需信息,當(dāng)通過驗(yàn)證后,在注冊(cè)時(shí)填寫的郵箱中將會(huì)收到一份郵件,打開郵件,點(diǎn)擊系統(tǒng)生成的超鏈接(通過令牌、用戶名組成),就可回到該系統(tǒng)的重置密碼頁面。其中還提供了驗(yàn)證碼的功能,以確保用戶的安全性。 界面如圖 所示 : 處理忘記密碼請(qǐng)求的 Servlet()代碼見附錄 A 代碼 2 所示。 通過忘記密碼界面發(fā)送一個(gè)有令牌生成的郵件,鏈接回 重置密碼界面,令牌方法代碼如下: public User loginWithToken(String userName, long num, String token) { String s = (userName, num)。 if((0,40).equals((0,40))) { return (userName)。 } 第 5 章 系統(tǒng)實(shí)現(xiàn) 24 return null。 } public String getToken(String s, long num) { //用戶名加上隨機(jī)數(shù)即得到令牌 s += num。 byte[] bs = (s)。 StringBuilder sb = new StringBuilder()。 for(byte b : bs) { if( b 0 ) { b += 256。 } String hex = (b)。 if(() 2) { (0)。 } (hex)。 } return ()。 } 圖 忘記密碼界面 第 5 章 系統(tǒng)實(shí)現(xiàn) 25 忘記密碼中,方法的調(diào)用外 ,還 需 要在 配置文件 中配置 ,代碼如下: servlet servletnameGetPwdServlet/servletname servletclass/servletclass initparam paramnamesmtpHost/paramname paramvalue/paramvalue /initparam initparam paramnamesmtpPort/paramname paramvalue25/paramvalue /initparam initparam paramnamesmtpUserName/paramname paramvalue719010975/paramvalue /initparam initparam paramname smtpPassword/paramname paramvalueMeteor1014/paramvalue /initparam initparam paramnamesmtpFrom/paramname paramvalue/paramvalue /initparam loadonstartup0/loadonstartup /servlet 驗(yàn)證碼 主要 代碼 [16]: public class ValidateServlet extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { (pragma, nocache)。 (cachecontrol, nocache)。 (expires, 0)。 (image/jpeg)。 第 5 章 系統(tǒng)實(shí)現(xiàn) 26 int width = 120。 int height = 45。 //繪制 矩形背景 BufferedImage image = new BufferedImage(width, height, )。 Graphics g = ()。 Graphics2D g2d = (Graphics2D)g。 Random random = new Random()。 Font mfont = new Font(華文宋體 , , 20)。 (getRandColor(150, 200))。 (0, 0, width, height)。 //繪制一條干擾線 BasicStroke bs = newBasicStroke(2f, )。 (bs)。 ()。 int[] xPoints = new int[3]。 int[] yPoints = new int[3]。 for(int j=0。j3。j++) { xPoints[j] = (width 1)。 yPoints[j] = (height 1)。 } (xPoints, yPoints, 3)。 //隨機(jī)數(shù) (mfont)。 String sRand = 。 int itmp = 0。 for(int i=0。i4。i++) { if((2)==1) { itmp = (26)+65。 //A~Z } 第 5 章 系統(tǒng)實(shí)現(xiàn) 27 else { itmp = (10)+48。 //0~9 } char ctmp = (char)itmp。 sRand += (ctmp)。 Color color = new Color(20 + (110),20 + (110),20 + (110))。 (color)。 //旋轉(zhuǎn) Graphics2D g2d_word = (Graphics2D)g。 AffineTransform trans = new AffineTransform()。 ((20) * / 180,5 * i + 10,7)。 //縮放 float scaleSize = () + 。 if(scaleSize ) { scaleSize = 1f。 } (scaleSize, scaleSize)。 (trans)。 ((ctmp), 15*i+40, 16)。 } HttpSession session = ()。 (validate, sRand)。 ()。 (image, JPEG, ())。 } public Color getRandColor(int s,int
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1