數(shù)據(jù)庫原理課程設(shè)計(jì)-房屋租賃管理系統(tǒng)_第1頁
數(shù)據(jù)庫原理課程設(shè)計(jì)-房屋租賃管理系統(tǒng)_第2頁
數(shù)據(jù)庫原理課程設(shè)計(jì)-房屋租賃管理系統(tǒng)_第3頁
數(shù)據(jù)庫原理課程設(shè)計(jì)-房屋租賃管理系統(tǒng)_第4頁
數(shù)據(jù)庫原理課程設(shè)計(jì)-房屋租賃管理系統(tǒng)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

各專業(yè)全套優(yōu)秀畢業(yè)設(shè)計(jì)圖紙各專業(yè)全套優(yōu)秀畢業(yè)設(shè)計(jì)圖紙成績評閱人評閱日期數(shù)據(jù)庫原理課程設(shè)計(jì)題目:房屋租賃管理系統(tǒng)班級:網(wǎng)絡(luò)12-1學(xué)號:34姓名:指導(dǎo)老師:2014年10月目錄1.需求分析 21.1功能分析 21.2工作流圖 21.3數(shù)據(jù)流圖 31.4數(shù)據(jù)字典 32.概念模型設(shè)計(jì) 53.邏輯結(jié)構(gòu)設(shè)計(jì) 74.功能設(shè)計(jì) 75.功能模塊的實(shí)現(xiàn) 85.1系統(tǒng)界面 85.2主要源代碼 136.總結(jié) 337.參考文獻(xiàn) 331.需求分析1.1功能分析某房屋租賃公司欲建立一個(gè)房屋租賃服務(wù)系統(tǒng),統(tǒng)一管理房主和租賃者信息,以便快速地提供租賃服務(wù)。該系統(tǒng)具有以下功能:登記房主信息。對于每名房主,系統(tǒng)需登記其姓名、住址和聯(lián)系電話。登記房屋信息。所有在系統(tǒng)中登記的房屋都有一個(gè)唯一的識別號(對于新增加的房屋,系統(tǒng)會自動為其分配一個(gè)識別號)。除此之外,還需登記房屋的地址、房型(如平房、帶陽臺的樓房、獨(dú)立式住宅等)、最多能容納的房客數(shù)、租金及房屋狀態(tài)(待租賃、已出租)。一名房主可以在系統(tǒng)中登記多個(gè)待租賃的房屋。登記租賃者信息。所有想通過該系統(tǒng)租賃房屋的租賃者,必須事先在系統(tǒng)中登記個(gè)人信息,包括:姓名、住址、電話號碼、身份證編號、性別。租賃房屋。已經(jīng)在系統(tǒng)中登記的租賃者,可以得到一分系統(tǒng)提供的待租賃房屋列表。一旦租賃者從中找到合適的房屋,就可以提出看房請求。系統(tǒng)會安排租賃者與房主見面。對于每次看房,系統(tǒng)會生成一條看房記錄。收取手續(xù)費(fèi)。每成功一次租賃服務(wù),系統(tǒng)根據(jù)租賃價(jià)格按比例生成費(fèi)用清單。變更房屋狀態(tài)。當(dāng)租賃者與房主達(dá)成租房或退房協(xié)議后,房主向系統(tǒng)提交變更房屋狀態(tài)請求。用戶論壇。租賃者在論壇上尋找合租對象、與房主進(jìn)行交流。1.2工作流圖1.3數(shù)據(jù)流圖1.4數(shù)據(jù)字典該數(shù)據(jù)庫字典如下表:庫表登記表名中文名handingcharges手續(xù)費(fèi)登記表houseowner房主信息表houses房屋信息表renter租賃者信息表rentered已出租的房屋表seehistory看房記錄表手續(xù)費(fèi)登記表handingchargeshouseower_name房主的名字houseid房屋的編號house_address房屋的地址rent_value房屋的租金handlingcharge房屋的手續(xù)費(fèi)房主信息表houseownerhouseower_name房主的名字houseower_address房主的地址houseower_phone房主的電話房屋信息表houseshouseid房屋的編號houseower_name房主的名字house_address房屋的地址rent_value租金people_number容納最大的人數(shù)house_type房屋的類型house_state房屋的狀態(tài)租賃者信息表renterrenter_id租賃者的編號renter_name租賃者的姓名renter_sex租賃者的性別renter_address租賃則的地址renter_phone租賃者的電話identity_card租賃者的身份證已出租的房屋表renteredhouseid房屋的編號rentered_name租賃者的姓名看房記錄表seehistoryrentername看房的租賃者h(yuǎn)ouseid房屋編號2.概念模型設(shè)計(jì)圖1房主的E-R實(shí)體圖圖2房屋的E-R實(shí)體圖圖3租賃者的E-R實(shí)體圖圖3實(shí)體及其聯(lián)系的E-R圖3.邏輯結(jié)構(gòu)設(shè)計(jì)由圖1轉(zhuǎn)換為關(guān)系模型:房主(姓名,地址,電話)由圖2轉(zhuǎn)換為關(guān)系模型:房屋(編號,房主名字,地址,租金,容納人數(shù),類型,狀態(tài))由圖3轉(zhuǎn)換為關(guān)系模型:租賃者(編號,名字,性別,地址,電話,身份證)由圖4轉(zhuǎn)換為關(guān)系模型:看房記錄(租賃者的姓名,房屋的編號) 手續(xù)費(fèi)(房屋編號,手續(xù)費(fèi)) 已租賃房屋(租賃者,房屋的編號)4.功能設(shè)計(jì)圖5功能結(jié)構(gòu)圖5.功能模塊的實(shí)現(xiàn)5.1系統(tǒng)界面圖6系統(tǒng)登錄界面圖7系統(tǒng)主界面圖8登記房屋圖8租賃者申請看房記錄圖9更變房屋狀態(tài)圖10查看租房記錄圖11手續(xù)費(fèi)圖12待租賃房屋圖13查看個(gè)人信息圖14修改個(gè)人信息圖14修改密碼圖15注冊頁面5.2主要源代碼(1)index.jsp<%@pagecontentType="text/html;charset=GBK"language="java"import="java.util.*"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><head> <title>房屋租賃系統(tǒng)</title></head><framesetrows="210,*"cols="*",frameborder="No"border="0"framespacing="0"> <framesrc="jsp/top.jsp"name="top"scrolling="no"norresize> <framesrc="jsp/first.jsp"name="main"scrolling="yes"></frameset><noframes><body></body></noframes></html>(2)first.jsp<%@pagecontentType="text/html;charset=GBK"language="java"%><%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><head><title>歡迎光臨</title></head><body><tablealign="center"width="579"height="300"border="0"celpadding="0"><tr> <tdalign="center"valign="top"bgcolor="#FFFFFF"> <p> </p> <tablewidth="568"height="178"border="0"cellpadding="0" cellspacing="0"background="../images/background.gif"> <tr> <td> </td> </tr> </table> </td></tr></table></body></html>(3)top.jsp<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%><%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";Datedate=newDate();%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><head></head><body><divalign="center"class="style1"><tablewidth="753"height="193"border="0"cellpadding="0"cellspacing="0"><tr><tdwidth="166"height="150"colspan="8"background="../images/banner.jpg"> </td></tr><tr><tdwidth="120"height="20"background="../images/date.jpg"><spanclass="style6"> <%=date.getYear()+1900%>年<%=date.getMonth()+1%>月<%=date.getDate()%>日 </span></td><tdwidth="92"height="20"align="center"background="../images/bar.jpg"><ahref="information/houseowner.jsp"target="main">登記房主</a></td><tdwidth="92"height="20"align="center"background="../images/bar.jpg"><ahref="information/house.jsp"target="main">登記房屋</a></td><tdwidth="92"height="20"align="center"background="../images/bar.jpg"><ahref="information/Renter.jsp"target="main">登記租賃者</a></td><tdwidth="92"height="20"align="center"background="../images/bar.jpg"><ahref="information/userchat.jsp"target="main">用戶論壇</a></td></tr></table></div></body></html>(4)house.jsp<%@pagecontentType="text/html;charset=GBK"language="java"import="java.util.*"%><htmlxmlns="/1999/xhtml"> <head> <metahttp-equiv="Content-Type"content="text/html;charset=GBK"/> <scripttype="text/javascript"> functionbt_submit_onclick() { location.replace('./SurWetland.jsp'); } functioncheckForm(){ varsubform=document.form_s; varhouseower_name=subform.houseower_name.value; varhouse_address=subform.house_address.value; if(monitor_units==""||monitor_units.replace(/(^\s*)|(\s*$)/g,"")==""){ alert("房主姓名不能為空!"); subform.monitor_units.focus(); returnfalse; } if(farmername==""||farmername.replace(/(^\s*)|(\s*$)/g,"")==""){ alert("人工濕地名稱不能為空!"); subform.farmername.focus(); returnfalse; } subform.action="bb" } functionfile_check(){varsubform=document.form_uqfile;varfile=subform.file1.value;if(file==""){alert('請選擇要上傳的文件');returnfalse;}else{subform.action="/iep/afile.do?files="+file; subform.submit();}} //彈出選擇歷史functionLineQueryOpen(){ varsubform=document.form_s; varmonitor_units=subform.monitor_units.value; varfarmername=subform.farmername.value; if(monitor_units==""||monitor_units.replace(/(^\s*)|(\s*$)/g,"")==""){ alert("檢測單位不能為空!"); subform.monitor_units.focus(); returnfalse; } if(farmername==""||farmername.replace(/(^\s*)|(\s*$)/g,"")==""){ alert("人工濕地名稱不能為空!"); subform.farmername.focus(); returnfalse; } window.showModalDialog('/iep/SurWetland.do?method=findEvents&&farmername='+farmername,'','dialogWidth:1000px;dialogHeight:420px;');}</script> <styletype="text/css"></style> <title>登記房屋</title> </head> <body> <tablealign="center"cellpadding="0"cellspacing="0"> <tr> <td> <formname="form_s"action="bb"method="post" > <br/> <table> <tr> <td> 房主姓名: </td> <td> <inputname="houseower_name"value="${houseower_name}" onfocus="this.value=''"type="text" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入房主姓名!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 房屋地址: </td> <td> <inputname="house_address"value="${house_address}" onfocus="this.value=''"type="text" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入房屋地址!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 房屋租金: </td> <td> <inputname="rent_value"type="text"value="${rent_value}" onfocus="this.value=''" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入房屋租金!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 最多能容納的房客數(shù): </td> <td> <inputname="people_number"value="${people_number}" onfocus="this.value=''"type="text" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入最多能容納的房客數(shù)!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 房屋類型: </td> <td> <selectname="house_type"size=1> <optionvalue="平房">平房</option> <optionvalue="帶陽臺的樓房">帶陽臺的樓房</option> <optionvalue="獨(dú)立式住宅">獨(dú)立式住宅</option> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 房屋狀態(tài): </td> <td> <selectname="house_state"size=1> <optionvalue="待租賃">待租賃</option> <optionvalue="已出租">已出租</option> </td> </tr> </table> <br> <table> <tr> <td>    </td> </tr> </table> <table> <tr> <tdwidth="450">    </td> <td> <inputname="submit"type="submit"value="提交" style="width:80px;margin-left:5px;height:25px;font-size:12px;"/> </td> <tdwidth="20">    </td> <td> <inputname="button"type="button"value="重置" onClick="document.form_s.reset();" style="width:80px;margin-left:5px;height:25px;font-size:12px;"/> </td> <tdwidth="20">    </td> <td> <INPUTtype="button"value="歷史數(shù)據(jù)"accessKey="btnQuery" onclick="LineQueryOpen()" style="width:80px;margin-left:5px;height:25px;font-size:12px;"/> </tr> </table> </form> </body></html>(5)houseinfo.jsp<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%><%@pageimport="java.sql.ResultSet"%><%@pageimport="java.sql.ResultSetMetaData"%><%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><head></head><body><tablealign="center"cellpadding="0"cellspacing="0"> <tr> <td>    </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 待租賃房屋列表 </td> </tr></table><%ResultSetrs=(ResultSet)request.getAttribute("result");ResultSetMetaDatard=rs.getMetaData();intcolumnNum=rd.getColumnCount();%><tablealign="center"cellpadding="5"cellspacing="10"> <tr> <td>房屋編號</td> <td>房主姓名</td> <td>房屋地址</td> <td>房屋租金</td> <td>房屋最大容納人數(shù)</td> <td>房屋的類型</td> <td>請求看房</td> </tr> <% while(rs.next()){ intid=rs.getInt(1); %> <tr> <td><%=id%></td> <td><%=rs.getString(2)%></td> <td><%=rs.getString(3)%></td> <td><%=rs.getInt(4)%></td> <td><%=rs.getString(5)%></td> <td><%=rs.getString(6)%></td> <td> <ahref="ee?id=<%=id%>"onClick="alert('已申請看房請求!');">申請</a> </td> </tr> <%}rs.close();%></table></body></html>(6)renter.jsp<%@pagecontentType="text/html;charset=GBK"language="java"import="java.util.*"%><htmlxmlns="/1999/xhtml"> <head> <title>登記房主</title> </head> <body> <tablealign="center"cellpadding="0"cellspacing="0"> <tr> <td> <formname="form_s"method="post" action="cc"> <br/> <table> <tr> <td> 姓名: </td> <td> <inputname="renter_name"value="${renter_name}" onfocus="this.value=''"type="text" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入房主姓名!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 性別: </td> <td> <inputname="renter_sex"value="${renter_sex}" onfocus="this.value=''"type="text" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入性別!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 住址: </td> <td> <inputname="renter_address"value="${renter_address}" onfocus="this.value=''"type="text" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入住址!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 聯(lián)系電話:  </td> <td> <inputname="renter_phone"type="text"value="${renter_phone}" onfocus="this.value=''" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入聯(lián)系電話!')"/> </td> </tr> <tr> <td>    </td> </tr> <tr> <td> 身份證號碼: </td> <td> <inputname="identity_card"value="${identity_card}" onfocus="this.value=''"type="text" style="width:90px;margin-left:5px;height:20px;font-size:12px;" onblur="if(this.value.replace(/^+|+$/g,'')=='')alert('請輸入身份證號碼!')"/> </td> </tr> <tr> <td>    </td> </tr> </table> <br> <table> <tr> <td>    </td> </tr> </table> <table> <tr> <tdwidth="450">    </td> <td> <inputname="submit"type="submit"value="提交" style="width:80px;margin-left:5px;height:25px;font-size:12px;"/> </td> <tdwidth="20">    </td> <td> <inputname="button"type="button"value="重置" onClick="document.form_s.reset();" style="width:80px;margin-left:5px;height:25px;font-size:12px;"/> </td> <tdwidth="20">    </td> <td> <INPUTtype="button"value="歷史數(shù)據(jù)"accessKey="btnQuery" onclick="LineQueryOpen()" style="width:80px;margin-left:5px;height:25px;font-size:12px;"/> </tr> </table> </form> </body></html>(7)HODAO.javapackagedao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;publicclassHODao{ privateConnectioncon; privateStringdriver; privateStringurl; privateStringusername; privateStringpass; publicHODao(){ } publicHODao(Stringdriver,Stringurl,Stringusername, Stringpass){ this.driver=driver; this.url=url; this.username=username; this.pass=pass; } publicConnectiongetCon(){ returncon; } publicvoidsetCon(Connectioncon){ this.con=con; } publicStringgetDriver(){ returndriver; } publicvoidsetDriver(Stringdriver){ this.driver=driver; } publicStringgetUrl(){ returnurl; } publicvoidsetUrl(Stringurl){ this.url=url; } publicStringgetUsername(){ returnusername; } publicvoidsetUsername(Stringusername){ this.username=username; } publicStringgetPass(){ returnpass; } publicvoidsetPass(Stringpass){ this.pass=pass; } /** *閿熸枻鎷峰彇閿熸枻鎷瘋彉閿熸枻鎷烽敓鏂ゆ嫹浣i敓鏂ゆ嫹閿燂拷 *@throwsClassNotFoundException *@throwsSQLException */ publicConnectiongetConnection()throwsClassNotFoundException,SQLException{ if(con==null){ Class.forName(driver); con=(Connection)DriverManager.getConnection(url,username,pass); } returncon; } /** *插入查詢 *@throwsSQLException *@throwsClassNotFoundException */ publicbooleaninsert(Stringsql,Object[]args)throwsSQLException,ClassNotFoundException{ PreparedStatementps=(PreparedStatement)getConnection().prepareStatement(sql); for(inti=0;i<args.length;i++){ //Stringarg=(String)args[i]; ps.setObject(i+1,args[i]); } if(ps.executeUpdate()!=1){ returnfalse; } returntrue; } /** *鎵ч敓鍙鎷瘋 *@throwsSQLException *@throwsClassNotFoundException */ publicResultSetquery(Stringsql,Object[]args)throwsClassNotFoundException,SQLException{ PreparedStatementps=getConnection().prepareStatement(sql); for(inti=0;i<args.length;i++){ ps.setObject(i+1,args[i]); } returnps.executeQuery(); } /** *鎵ч敓鏂ゆ嫹閿熺潾闈╂嫹 */ publicResultSetqueryall(Stringsql)throwsClassNotFoundException,SQLException{ Statementps=getConnection().createStatement(); returnps.executeQuery(sql); } /** *修改數(shù)據(jù) *@throwsSQLException *@throwsClassNotFoundException */ publicvoidmodify(Stringsql,Object[]args)throwsClassNotFoundException,SQLException{ PreparedStatementps=getConnection().prepareStatement(sql); for(inti=0;i<args.length;i++){ ps.setObject(i+1,args[i]); } ps.executeUpdate(); } /** *關(guān)閉數(shù)據(jù)庫連接 *@throwsSQLException */ publicvoidcloseCon()throwsSQLException{ if(con!=null&&!(con.isClosed())){ con.close(); } } }(8)modifyhousestate.javapackagewebtier;importjava.io.IOException;importjava.io.PrintWriter;importjava.sql.SQLException;importjava.util.Iterator;importjava.util.Map;importjava.util.Set;importjava.util.Map.Entry;importjavax.servlet.ServletContext;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importdao.HODao;publicclassmodifyhousestateServletextendsHttpServlet{ protectedvoidservice(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ ServletContextconfig=getServletConfig().getServletContext(); request.setCharacterEncoding("GBK"); Stringhouse_state1=request.getParameter("house_state1"); Mapmap=request.getParameterMap(); Setset=map.entrySet(); Iteratorit=set.iterator(); Stringstr=null; while(it.hasNext()){ str=it.next().toString(); if(str.contains("submit")){ break; } } Stringid=str.substring(6); id=id.split("=")[0]; //Stringid=String.valueOf(charid); HttpServletResponsere=response; Stringhouse_state2=request.getParameter("house_state10"); Stringhouse_state=request.getParameter("house_state"+id); Stringdriver=config.getInitParameter("driver"); Stringurl=config.getInitParameter("url")+"?useUnicode=true&characterEncoding=GBK"; Stringuser=config.getInitParameter("user"); Stringpass=config.getInitParameter("pass"); HODaohoDao=newHODao(driver,url,user,pass); Stringsql="updatehousessethouses.house_state=?wherehouses.houseid=?"; String[]args=newString[]{house_state,id}; try{ hoDao.modify(sql,args); //hoDao.closeCon(); }catch(ClassNotFoundExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } response.setContentType("text/html;charset=utf-8"); PrintWriterpw=response.getWriter(); if(house_state.equals("已出租")){ Stringhouseower_name=(String)config.getAttribute("houseower_name"); houseower_name=newString(houseower_name.getBytes("ISO-8859-1"),"GBK"); Stringhouseid=id; Stringhouse_address=request.getParameter("house_address"+id); Stringrentered_name=request.getParameter("rentered_name"+id); doublerent_value=Double.parseDouble(request.getParameter("rent_value"+id)); doublehandlingcharge=rent_value*0.2; //PrintWriterpw=response.getWriter();rentered_name pw.write("<scriptlanguage='javascript'>alert('祝賀您租房成功,系統(tǒng)收取"+handlingcharge+"元手續(xù)費(fèi)')</script>"); String[]args2={houseower_name,houseid,house_address,String.valueOf(rent_value),String.valueOf(handlingcharge)}; Stringsql2="insertintohandlingcharges(houseower_name,houseid,house_address,rent_value,handlingcharge)"+ "values(?,?,?,?,?)"; Stringsql3="insertintorentered(houseid,rentered_name)values(?,?)"; String[]args3=newString[]{houseid,rentered_name}; try{ hoDao.insert(sql2,args2); hoDao.insert(sql3,args3); }catch(ClassNotFoundExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } pw.print("<script>window.location.href='/HouseRent/jsp/information/ff'</script>"); } @Override protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp) throwsServletException,IOException{ //TODOAuto-generatedmethodstub Stringid=req.getParameter("id"); System.out.println("id"); } }6.總結(jié)這次數(shù)據(jù)庫課程設(shè)計(jì)讓我收獲良多,不僅鞏固了數(shù)據(jù)庫設(shè)計(jì)的知識,而且還鞏固了javaweb的知識,在數(shù)據(jù)庫方面,加深了對E-R圖的理解,從概念模型再到關(guān)系模型,再到范式的要求,大體了都有了更加深刻的認(rèn)識,在數(shù)據(jù)庫編程方面,對于記錄的添加,修改,刪除,表與表的連接也運(yùn)用的非常熟練。7.參考文獻(xiàn)數(shù)據(jù)庫系系統(tǒng)概論深入體驗(yàn)Javaweb項(xiàng)目開發(fā)地方第三地方基于C8051F單片機(jī)直流電動機(jī)反饋控制系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的嵌入式Web服務(wù)器的研究MOTOROLA單片機(jī)MC68HC(8)05PV8/A內(nèi)嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機(jī)溫度控制系統(tǒng)的研制基于MCS-51系列單片機(jī)的通用控制模塊的研究基于單片機(jī)實(shí)現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調(diào)節(jié)器單片機(jī)控制的二級倒立擺系統(tǒng)的研究基于增強(qiáng)型51系列單片機(jī)的TCP/IP協(xié)議棧的實(shí)現(xiàn)基于單片機(jī)的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機(jī)系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機(jī)的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機(jī)的交流伺服電機(jī)運(yùn)動控制系統(tǒng)研究與開發(fā)基于單片機(jī)的泵管內(nèi)壁硬度測試儀的研制基于單片機(jī)的自動找平控制系統(tǒng)研究基于C8051F040單片機(jī)的嵌入式系統(tǒng)開發(fā)基于單片機(jī)的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機(jī)實(shí)現(xiàn)一種基于單片機(jī)的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機(jī)的在線間歇式濁度儀的研制基于單片機(jī)的噴油泵試驗(yàn)臺控制器的研制基于單片機(jī)的軟起動器的研究和設(shè)計(jì)基于單片機(jī)控制的高速快走絲電火花線切割機(jī)床短循環(huán)走絲方式研究基于單片機(jī)的機(jī)電產(chǎn)品控制系統(tǒng)開發(fā)基于PIC單片機(jī)的智能手機(jī)充電器基于單片機(jī)的實(shí)時(shí)內(nèi)核設(shè)計(jì)及其應(yīng)用研究基于單片機(jī)的遠(yuǎn)程抄表系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機(jī)系統(tǒng)單片機(jī)系統(tǒng)軟件構(gòu)件開發(fā)的技術(shù)研究基于單片機(jī)的液體點(diǎn)滴速度自動檢測儀的研制基于單片機(jī)系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機(jī)的電能采集終端的設(shè)計(jì)和應(yīng)用基于單片機(jī)的光纖光柵解調(diào)儀的研制氣壓式線性摩擦焊機(jī)單片機(jī)控制系統(tǒng)的研制基于單片機(jī)的數(shù)字磁通門傳感器基于單片機(jī)的旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器的研究基于單片機(jī)的光纖Bragg光柵解調(diào)系統(tǒng)的研究單片機(jī)控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機(jī)的多生理信號檢測儀基于單片機(jī)的電機(jī)運(yùn)動控制系統(tǒng)設(shè)計(jì)Pico專用單片機(jī)核的可測性設(shè)計(jì)研究基于MCS-51單片機(jī)的熱量計(jì)基于雙單片機(jī)的智能遙測微型氣象站MCS-51單片機(jī)構(gòu)建機(jī)器人的實(shí)踐研究基于單片機(jī)的輪軌力檢測基于單片機(jī)的GPS定位儀的研究與實(shí)現(xiàn)基于單片機(jī)的電液伺服控制系統(tǒng)用于單片機(jī)系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機(jī)的時(shí)控和計(jì)數(shù)系統(tǒng)性能優(yōu)化的研究基于單片機(jī)和CPLD的粗光柵位移測量系統(tǒng)研究單片機(jī)控制的后備式方波UPS提升高職學(xué)生單片機(jī)應(yīng)用能力的探究基于單片機(jī)控制的自動低頻減載裝置研究基于單片機(jī)控制的水下焊接電源的研究基于單片機(jī)的多通道數(shù)據(jù)采集系統(tǒng)基于uPSD3234單片機(jī)的氚表面污染測量儀的研制基于單片機(jī)的紅外測油儀的研究96系列單片機(jī)仿真器研究與設(shè)計(jì)基于單片機(jī)的單晶金剛石刀具刃磨設(shè)備的數(shù)控改造基于單片機(jī)的溫度智能控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)基于MSP430單片機(jī)的電梯門機(jī)控制器的研制基于單片機(jī)的氣體測漏儀的研究基于三菱M16C/6N系列單片機(jī)的CAN/USB協(xié)議轉(zhuǎn)換器基于單片機(jī)和DSP的變壓器油色譜在線監(jiān)測技術(shù)研究基于單片機(jī)的膛壁溫度報(bào)警系統(tǒng)設(shè)計(jì)基于AVR單片機(jī)的低壓無功補(bǔ)償控制器的設(shè)計(jì)基于單片機(jī)船舶電力推進(jìn)電機(jī)監(jiān)測系統(tǒng)基于單片機(jī)網(wǎng)絡(luò)的振動信號的采集系統(tǒng)基于單片機(jī)的大容量數(shù)據(jù)存儲技術(shù)的應(yīng)用研究基于單片機(jī)的疊圖機(jī)研究與教學(xué)方法實(shí)踐基于單片機(jī)嵌入式Web服務(wù)器技術(shù)的研究及實(shí)現(xiàn)基于AT89S52單片機(jī)的通用數(shù)據(jù)采集系統(tǒng)\t"_bla

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論