2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  課 程 設(shè) 計(jì)</b></p><p>  課程名稱___操作系統(tǒng)__________</p><p>  題目名稱___多級(jí)文件系統(tǒng)-1_____</p><p>  學(xué)生學(xué)院___計(jì)算機(jī)學(xué)院________</p><p>  專業(yè)班級(jí)__ 10級(jí)網(wǎng)絡(luò)3班______</p>

2、<p>  2013年 7 月 1 日</p><p><b>  目錄</b></p><p>  1.設(shè)計(jì)目的.....................................................................4</p><p>  2.設(shè)計(jì)內(nèi)容.................

3、....................................................4</p><p>  3.運(yùn)行環(huán)境及開(kāi)發(fā)技術(shù)說(shuō)明............................................4</p><p>  4.設(shè)計(jì)步驟.........................................................

4、.............5</p><p>  5.心得體會(huì)......................................................................16</p><p>  6.主要實(shí)現(xiàn)代碼...............................................................16</p>

5、;<p><b>  1.設(shè)計(jì)目的:</b></p><p>  本課程設(shè)計(jì)要求設(shè)計(jì)一個(gè)模擬的多用戶多級(jí)目錄的文件系統(tǒng)。通過(guò)具體的文件存儲(chǔ)空間的管理、文件的物理結(jié)構(gòu)、目錄結(jié)構(gòu)和文件操作的實(shí)現(xiàn),加深對(duì)文件系統(tǒng)內(nèi)部功能和實(shí)現(xiàn)過(guò)程的理解。 </p><p><b>  2.設(shè)計(jì)內(nèi)容:</b></p><p>  首

6、先在內(nèi)存中開(kāi)辟一個(gè)虛擬磁盤(pán)空間作為文件存儲(chǔ)器,在其上實(shí)現(xiàn)一個(gè)多用戶多目錄的文件系統(tǒng)。其中文件物理結(jié)構(gòu)可采用顯式鏈接。另外磁盤(pán)空閑空間的管理選擇位示圖。由于采用位示圖來(lái)管理文件存儲(chǔ)空間,并采用顯式鏈接分配方式,則可以將位示圖合并到FAT中。</p><p>  文件目錄結(jié)構(gòu)采用多用戶多級(jí)目錄結(jié)構(gòu),每個(gè)目錄項(xiàng)包含文件名、物理</p><p>  地址、長(zhǎng)度等信息,還可以通過(guò)目錄項(xiàng)實(shí)現(xiàn)對(duì)文件的讀

7、和寫(xiě)的保護(hù)。</p><p>  另外設(shè)計(jì)一個(gè)的用戶界面,提供以下相關(guān)文件操作:</p><p>  (1)具有l(wèi)ogin (用戶登錄);</p><p> ?。?)系統(tǒng)初始化(建文件卷、提供登錄模塊);</p><p> ?。?)文件的創(chuàng)建: create;</p><p> ?。?)文件的打開(kāi):open;</

8、p><p>  (5)文件的讀:read;</p><p> ?。?)文件的寫(xiě):write;</p><p>  (7)文件關(guān)閉:close;</p><p> ?。?)刪除文件:delete ;</p><p> ?。?)創(chuàng)建目錄(建立子目錄):mkdir;</p><p>  (10)改變當(dāng)前目

9、錄:cd;</p><p>  (11)列出文件目錄:dir;</p><p> ?。?2)退出:logout。</p><p>  3.運(yùn)行環(huán)境及開(kāi)發(fā)技術(shù)說(shuō)明:</p><p>  1.本課程設(shè)計(jì)是用web的形式模擬多級(jí)用戶多目錄文件系統(tǒng)。本系統(tǒng)用到技術(shù)有jsp+Tomcat+mysql。</p><p>  2.系

10、統(tǒng)運(yùn)行的環(huán)境:配置好java的jre1.5及以上版本,Tomcat6.0版本,mysql5.5版本,eclipse10.0版本。</p><p>  3.運(yùn)行系統(tǒng)說(shuō)明:將項(xiàng)目導(dǎo)入eclipse或者直接把項(xiàng)目文件夾復(fù)制到tomcat的webapp目錄下,打開(kāi)tomcat服務(wù)器,再在瀏覽器地址欄輸入</p><p>  即可進(jìn)入系統(tǒng)的登錄頁(yè)面:</p><p><

11、b>  4.設(shè)計(jì)步驟:</b></p><p><b>  (1)需求分析。</b></p><p>  本系統(tǒng)為多用戶多目錄的文件管理系統(tǒng),用戶可以對(duì)文件或是文件目錄進(jìn)行操作。多用戶功能可以滿足不同用戶不同的需求,同時(shí)因增加了管理員登陸和用戶登錄功能使得系統(tǒng)起到了很好的保密作用。</p><p>  文件系統(tǒng)是操作系統(tǒng)中負(fù)責(zé)

12、管理和存取文件信息的機(jī)構(gòu),它具有“按名存取”的功能,已使得用戶能透明的存儲(chǔ)和訪問(wèn)文件。為了是實(shí)現(xiàn)按名存取,文件需要對(duì)文件存儲(chǔ)設(shè)備進(jìn)行合理化的組織,分配;對(duì)存儲(chǔ)設(shè)備上的文件進(jìn)行保護(hù),保密和提供共享的手段。文件系統(tǒng)主要實(shí)現(xiàn)對(duì)具體的文件存取空間的管理、文件的物理結(jié)構(gòu)、目錄結(jié)構(gòu)管理和文件操作。另外文件系統(tǒng)還要提供檢索文件或是文件中記錄的手段,文件系統(tǒng)就是完成上述功能的一組軟件和數(shù)據(jù)結(jié)構(gòu)的集合。</p><p>  而模擬

13、一個(gè)多用戶多級(jí)目錄的文件管理系統(tǒng),要完成對(duì)文件的基本操作,文件的基本操作有文件,文件夾的新建、打開(kāi)、讀取、寫(xiě)入文件、創(chuàng)建更改目錄、修改文件內(nèi)容、刪除、列出目錄內(nèi)容等信息。系統(tǒng)建立了文件目錄樹(shù),存儲(chǔ)文件中的所有文件。對(duì)于用戶名下的文件,用文件目錄樹(shù)的分枝來(lái)存儲(chǔ)。另外由于文件系統(tǒng)提供了安全保密功能,所有模擬文件系統(tǒng)還需要有管理員登陸和創(chuàng)建用戶和用戶登錄,密碼修改等功能。</p><p>  另外,為了方便操作,還需模

14、擬一個(gè)操作界面,方便用戶進(jìn)行操作。</p><p><b>  (2)概要設(shè)計(jì):</b></p><p><b>  1).設(shè)計(jì)思想</b></p><p>  文件系統(tǒng)是操作系統(tǒng)中負(fù)責(zé)管理和存取文件信息的機(jī)構(gòu),它具有“按名存取”的功能。文件系統(tǒng)主要實(shí)現(xiàn)對(duì)具體的文件存取空間的管理、文件的物理結(jié)構(gòu)、目錄結(jié)構(gòu)管理和文件操作。&

15、lt;/p><p>  本實(shí)驗(yàn)中的文件系統(tǒng)是多用戶多級(jí)目錄的文件系統(tǒng)。實(shí)驗(yàn)中定義用戶的上限為5個(gè),目錄結(jié)構(gòu)采用多級(jí)目錄結(jié)構(gòu)</p><p>  2).抽象數(shù)據(jù)類型的定義</p><p>  //連接數(shù)據(jù)庫(kù)在數(shù)據(jù)類型保存在數(shù)據(jù)庫(kù)中</p><p>  /*create database homework;*/</p><p>

16、;  use homework;</p><p><b>  /*用戶表*/</b></p><p>  create table user</p><p><b>  (</b></p><p>  id int primary key auto_increment,</p><

17、;p>  name varchar(100),</p><p>  password varchar(150)</p><p><b>  );</b></p><p><b>  /*目錄表 */</b></p><p>  create table directory</p>

18、<p><b>  (</b></p><p>  id int primary key auto_increment,</p><p>  name varchar(100),</p><p>  pathp varchar(100), /* 表途徑*/</p><p>  pdate datetime

19、</p><p><b>  );</b></p><p><b>  /*文件表*/</b></p><p>  create table ufile</p><p><b>  (</b></p><p>  id int primary key a

20、uto_increment,</p><p>  name varchar(100),</p><p>  content varchar(100), /*文件內(nèi)容*/</p><p>  pdate datetime,</p><p>  pathu varchar(100) /* 表途徑*/</p><p>&l

21、t;b>  );</b></p><p>  create table priority </p><p><b>  (</b></p><p>  id int primary key auto_increment,</p><p>  fileName varchar(100),/*文件名稱*/&

22、lt;/p><p>  userName varchar(100),/*用戶名*/</p><p>  r int, /*1表示可讀,0表示不可讀 */</p><p>  w int, /*1表示可寫(xiě),0表示不可寫(xiě) */ </p><p>  exe int /*1表示可執(zhí)行,0表示不可執(zhí)行*/ </p><p>&l

23、t;b>  );</b></p><p>  /*insert into ufile vaules (null,'a','aa',,now(),'A')*/</p><p>  /*初始化目錄表*/</p><p>  insert into directory values (null,'r

24、oot','A',now() );</p><p>  insert into directory values (null,'root','B',now() );</p><p>  insert into directory values (null,'root','C',now() );</

25、p><p>  3).主程序的流程以及各程序模塊之間的層次(調(diào)用)關(guān)系。</p><p>  在系統(tǒng)中設(shè)置了用戶登陸模式。用戶初始化時(shí)不存在,則可在注冊(cè)。注冊(cè)成功后方可進(jìn)行登錄,登錄成功后則可進(jìn)行一系列的操作。如</p><p>  用戶注冊(cè):register.jsp</p><p>  用戶登錄:login.jsp </p>&

26、lt;p>  磁盤(pán)的初始化:art_mana.jsp //建立3個(gè)分區(qū)</p><p>  文件的創(chuàng)建:info_ufile.jsp//建立新文件</p><p>  文件的打開(kāi):file_mana.jsp//打開(kāi)文件</p><p>  文件刪除:delete__file.jsp//刪除文件</p><p>  文件的讀:che

27、ck_file.jsp//查看文件</p><p>  創(chuàng)建目錄(建立子目錄):info_dir.jsp//建立新目錄</p><p>  查看當(dāng)前目錄:file_mana.jsp //顯示目錄</p><p>  刪除目錄:delete_dir.jsp//刪除目錄</p><p>  返回上一級(jí)目錄:main.jsp//向上返回

28、</p><p>  退出: main.jsp //退出功能</p><p>  (3)詳細(xì)設(shè)計(jì):實(shí)現(xiàn)概要設(shè)計(jì)中定義的功能;畫(huà)出函數(shù)的調(diào)用關(guān)系圖;畫(huà)出各程序流程圖。</p><p>  (4)部分功能模塊流程圖:</p><p><b>  用戶登錄模塊</b></p><p>  用戶首次登錄要

29、注冊(cè),用戶登錄模塊要求用戶輸入賬號(hào)與密碼,當(dāng)輸入正確后進(jìn)入主視圖才能進(jìn)行其他模塊操作,否則提示賬號(hào)密碼錯(cuò)誤并要求用戶重新輸入。用戶包括普通用戶和超級(jí)用戶。超級(jí)用戶可以修改其他用戶的權(quán)限,使他們可以修改其他用戶創(chuàng)建的文件。</p><p><b>  yes</b></p><p><b>  no</b></p><p>

30、  Yes no</p><p><b>  no</b></p><p>  B.修改文件功能結(jié)構(gòu)圖</p><p><b>  yes</b></p><p><b>  no</b></p><p><b>  no&l

31、t;/b></p><p><b>  yes</b></p><p>  (5)系統(tǒng)測(cè)試:列出所有系統(tǒng)功能的測(cè)試結(jié)果,測(cè)試數(shù)據(jù)應(yīng)該完整、嚴(yán)格,應(yīng)該至少包含需求分析中所列。</p><p>  1)若不是用戶 先注冊(cè) 注冊(cè)如下:</p><p><b>  2)用戶登錄功能:</b><

32、/p><p>  登錄成功后可進(jìn)行用戶的操作:</p><p>  3)系統(tǒng)初始化:及磁盤(pán)的分區(qū)</p><p>  目錄的創(chuàng)建:(創(chuàng)建子目錄)</p><p>  在A盤(pán)下創(chuàng)建目錄home</p><p><b>  結(jié)果如下:</b></p><p><b>  

33、5)創(chuàng)建文件</b></p><p>  如在A盤(pán)目錄home中創(chuàng)建文件myfile</p><p><b>  如下</b></p><p>  6)文件的打開(kāi):(查看)</p><p><b>  7)文件的讀取</b></p><p><b>  

34、結(jié)果如下</b></p><p>  8)文件的寫(xiě):(修改)</p><p><b>  結(jié)果如下:</b></p><p>  9)文件的刪除(刪除)</p><p>  刪除myfile結(jié)果如下</p><p>  10)改變當(dāng)前目錄(修改)</p><p>

35、;  將home修改為home-lzf</p><p><b>  結(jié)果如下</b></p><p><b>  11)列出目錄</b></p><p>  如B目錄下有目錄和文件</p><p>  12)用戶修改密碼的功能:</p><p><b>  13)用

36、戶退出功能</b></p><p><b>  返回用戶登錄界面</b></p><p>  14)用其他用戶zj登錄修改前面lzf用戶創(chuàng)建的文件myfile2</p><p>  修改myfile2文件</p><p><b>  結(jié)果如下圖:</b></p><p

37、>  用root用戶修改zj對(duì)myfile2的權(quán)限修改,時(shí)他能修改myfile2</p><p><b>  修改權(quán)限</b></p><p>  修改后,再用zj用戶修改lzf用戶創(chuàng)建的文件myfile2</p><p><b>  (6)系統(tǒng)文件說(shuō)明</b></p><p>  Regis

38、ter.jsp:用戶注冊(cè);login.jsp:用戶登錄;art_mana.jsp:磁盤(pán)初始化; info_dir.jsp建立目錄</p><p>  Info_ufile.jsp新建文件,file_mana.jsp打開(kāi)文件,delete_file.jsp刪除文件;check_file.jsp查看文件;main.jsp主頁(yè)面,prioritDdit.jsp修改權(quán)限;priorityEditDeal.jsp修改權(quán)限處

39、理。faithConn.jsp連接錯(cuò)誤頁(yè)面;faithregister.jsp注冊(cè)錯(cuò)誤頁(yè)面。</p><p><b>  5.心得體會(huì)。</b></p><p>  在做課程設(shè)計(jì)的過(guò)程中遇到很多的問(wèn)題,因?yàn)槭怯胘ava web 來(lái)做的,系統(tǒng)在顯示的效果上并不是很好,但是都基本上完成了實(shí)驗(yàn)的要求,如多用戶多目錄的文件系統(tǒng)要求的多用戶登錄,每個(gè)用戶進(jìn)去后都可以創(chuàng)建自己的目

40、錄和文件。但是每個(gè)用戶創(chuàng)建的文件只能是自己修改,除非root用戶修改其他用戶的權(quán)限。</p><p>  在編程此系統(tǒng)時(shí),方發(fā)覺(jué)自己對(duì)文件系統(tǒng)理解得不夠透徹。例如在考慮如何實(shí)現(xiàn)多用戶多目錄時(shí),雖然書(shū)本上樹(shù)行目錄的圖看起來(lái)很清晰,但一編程起來(lái)就好像往二級(jí)目錄思路那樣編程了。</p><p>  通過(guò)這次實(shí)驗(yàn),讓我對(duì)操作系統(tǒng)的多級(jí)用戶多目錄文件系統(tǒng)有了更深的理解,對(duì)文件系統(tǒng)的文件組織形式和存儲(chǔ)

41、方式有了更深的理解。</p><p>  最后通過(guò)用java 編程有加深了對(duì)java知識(shí)點(diǎn)的理解和java web的理解。</p><p>  總之,這次課程設(shè)計(jì)讓自己受益匪淺。</p><p><b>  6.主要實(shí)現(xiàn)代碼。</b></p><p><b>  (1)相關(guān)類定義</b></

42、p><p><b>  A)連接數(shù)據(jù)庫(kù)類</b></p><p>  public class DB {</p><p>  public static Connection getConn() {</p><p>  Connection conn = null; </p><p><b>

43、;  try {</b></p><p>  Class.forName("com.mysql.jdbc.Driver");</p><p>  conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/homework", "root" , &qu

44、ot;123456");</p><p>  } catch (ClassNotFoundException e) {</p><p>  e.printStackTrace(); </p><p>  } catch (SQLException e) { </p><p>  e.printStackTrace(); </

45、p><p><b>  }</b></p><p>  return conn;</p><p><b>  }</b></p><p>  public static Statement createStmt(Connection conn) {</p><p>  State

46、ment stmt = null;</p><p><b>  try {</b></p><p>  stmt = conn.createStatement();</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p>

47、<p><b>  }</b></p><p>  return stmt;</p><p><b>  }</b></p><p>  public static ResultSet executeQuery(Statement stmt, String sql) {</p><p>

48、  ResultSet rs = null;</p><p><b>  try {</b></p><p>  rs = stmt.executeQuery(sql);</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p&g

49、t;<p><b>  } </b></p><p>  return rs;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  B)目錄類</b></p><p&

50、gt;  public class Directory {</p><p>  private int id;</p><p>  private String name;</p><p>  private String pathp; /* 父節(jié)點(diǎn),表途徑*/</p><p>  private Date pdate;</p&g

51、t;<p>  public void saveRs(ResultSet rs) {</p><p><b>  try {</b></p><p>  setId(rs.getInt("id"));</p><p>  setName(rs.getString("name"));</

52、p><p>  setPathp(rs.getString("pathp"));</p><p>  setPdate(rs.getTimestamp("pdate"));</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();

53、</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  C)權(quán)限類</b></p><p>  public class Priority {</p><p>  private int id;<

54、;/p><p>  private String fileName;</p><p>  private String userName;</p><p>  private int r;</p><p>  private int w;</p><p>  private int exe;</p><

55、p>  public void saveRs(ResultSet rs) {</p><p><b>  try {</b></p><p>  setId(rs.getInt("id"));</p><p>  setFileName(rs.getString("fileName"));</

56、p><p>  setUserName(rs.getString("userName"));</p><p>  setR(rs.getInt("r"));</p><p>  setW(rs.getInt("w"));</p><p>  setExe(rs.getInt("

57、exe"));</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>

58、  D)文件類</b></p><p><b>  /*文件表*/</b></p><p>  public class Ufile {</p><p>  private int id;</p><p>  private String name;</p><p>  private

59、 String content;</p><p>  private Date pdate;</p><p>  private String pathu ;/*表路徑*/ </p><p>  public void saveRs(ResultSet rs) {</p><p><b>  try {</b><

60、/p><p>  setId(rs.getInt("id"));</p><p>  setName(rs.getString("name"));</p><p>  setContent(rs.getString("content"));</p><p>  setPdate(rs.g

61、etTimestamp("pdate"));</p><p>  setPathu(rs.getString("pathu"));</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b> 

62、 }</b></p><p><b>  }</b></p><p><b>  E)用戶文件表</b></p><p>  public class User {</p><p>  private int id; </p><p>  private Stri

63、ng name;</p><p>  private String password; </p><p>  public void saveRs(ResultSet rs) {</p><p><b>  try {</b></p><p>  setId(rs.getInt("id"));<

64、/p><p>  setName(rs.getString(name));</p><p>  setPassword(rs.getString(password));</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p>&

65、lt;b>  }</b></p><p><b>  }</b></p><p> ?。?)登錄功能代碼:</p><p><b>  <%</b></p><p>  boolean success=true;</p><p>  request.s

66、etCharacterEncoding("GBK");</p><p>  String username = (String)request.getParameter("username");</p><p>  System.out.println(username);</p><p>  String password

67、=(String)request.getParameter("password");</p><p>  System.out.println(password);</p><p>  Connection conn = DB.getConn();</p><p>  Statement stmt=DB.createStmt(conn);&l

68、t;/p><p>  String sql = "select * from user where name='"+ username +"'and password='"+ password +"'";</p><p>  System.out.print(sql);</p><p

69、>  ResultSet rs = DB.executeQuery(stmt, sql);</p><p>  if(!rs.next()){</p><p>  success=false;</p><p><b>  }</b></p><p>  DB.close(rs);</p><p&

70、gt;  DB.close(stmt);</p><p>  DB.close(conn);</p><p>  if(success){</p><p>  session.setAttribute("username", username);</p><p>  response.sendRedirect("

71、mian.jsp");</p><p><b>  }else{</b></p><p>  out.print("登錄失敗,請(qǐng)重新登錄");</p><p>  response.sendRedirect("faithlogin.jsp");</p><p><b

72、>  }</b></p><p><b>  %></b></p><p><b> ?。?)注冊(cè)功能代碼</b></p><p><b>  <%</b></p><p>  String path = request.getContextPat

73、h();</p><p>  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";</p><p><b>  %></b></p>

74、<p><b>  <%</b></p><p>  String username=request.getParameter("username");</p><p>  String password=request.getParameter("password");</p><p>

75、;  String repassword=request.getParameter("repassword");</p><p>  if(username!=null&&password!=null&&repassword.equals(password))</p><p><b>  {</b></p>

76、;<p>  session.setAttribute("username", username);</p><p>  session.setAttribute("password", password); </p><p>  response.sendRedirect("check_register.jsp"

77、;); </p><p><b>  } </b></p><p><b>  %></b></p><p>  <script type="text/javascript"></p><p>  function check()</p&g

78、t;<p><b>  {</b></p><p>  if(form.username.value=="")</p><p><b>  {</b></p><p>  alert("請(qǐng)輸入用戶名!");</p><p>  form.user

79、name.focus();</p><p>  return false;}</p><p>  if(form.password.value==""){</p><p>  alert("請(qǐng)輸入密碼!");</p><p>  form.password.focus();</p><

80、;p>  return false;} </p><p>  }</script></p><p><b> ?。?)創(chuàng)建目錄代碼</b></p><p><b>  <% </b></p><p>  request.setCharacterEncoding("

81、GBK");</p><p>  String ppath=(String)session.getAttribute("ppath");</p><p>  String action = request.getParameter("action");</p><p>  if (action != null &am

82、p;& action.trim().equals("post")) {</p><p>  String name = (String)request.getParameter("name");</p><p>  System.out.println(name);</p><p>  //String ppath =

83、 (String)request.getParameter("ppath");</p><p>  //System.out.println(path);</p><p>  String tpath=(ppath+'/'+name).trim();</p><p>  Connection conn = DB.getConn()

84、;</p><p>  boolean autoCommit = conn.getAutoCommit();</p><p>  conn.setAutoCommit(false);</p><p>  //insert into directory values (null,'root','A',now() );</p>

85、<p>  String sql = "insert into directory values (null, ?, ?, now())";</p><p>  PreparedStatement pstmt = DB.prepareStmt(conn, sql, Statement.RETURN_GENERATED_KEYS);</p><p>  ps

86、tmt.setString(1, name);</p><p>  pstmt.setString(2,tpath);</p><p>  pstmt.executeUpdate();</p><p>  conn.commit();</p><p>  conn.setAutoCommit(autoCommit);</p>&

87、lt;p>  DB.close(pstmt);</p><p>  DB.close(conn);</p><p>  response.sendRedirect("art_mana.jsp");</p><p><b>  }else{</b></p><p>  String pathp =

88、 request.getParameter("pathp");</p><p>  System.out.println(pathp);</p><p>  session.setAttribute("ppath", pathp);</p><p><b>  }</b></p><p

89、><b>  %></b></p><p> ?。?)創(chuàng)建文件代碼:</p><p><b>  <% </b></p><p>  request.setCharacterEncoding("GBK");</p><p>  String ppath=(St

90、ring)session.getAttribute("ppath");</p><p>  System.out.println(ppath+"路徑2");</p><p>  String action = request.getParameter("action");</p><p>  if (act

91、ion != null && action.trim().equals("post")) {</p><p>  String name = (String)request.getParameter("name");</p><p>  System.out.println(name);</p><p>  S

92、tring content = (String)request.getParameter("content");</p><p>  System.out.println(content);</p><p>  String userName =(String)session.getAttribute("username");</p>

93、<p>  /*int r = request.getParameter("r");</p><p>  System.out.println(r);</p><p>  int w = (Integer)request.getParameter("w");</p><p>  System.out.println(

94、w);</p><p>  int exe = (Integer)request.getParameter("exe");</p><p>  System.out.println(exe);</p><p>  //String ppath = (String)request.getParameter("ppath");&l

95、t;/p><p>  //System.out.println(path);*/</p><p>  Connection conn = DB.getConn();</p><p>  boolean autoCommit = conn.getAutoCommit();</p><p>  conn.setAutoCommit(false);&l

96、t;/p><p>  /*insert into ufile vaules (null,'a','aa','A',now(),1,1,1)*/</p><p>  String sql = "insert into ufile values (null, ?, ? , now(),?)";</p><p&g

97、t;  String prioritySql = "insert into priority values (null,?,?,1,1,1)";</p><p>  PreparedStatement pstmt = DB.prepareStmt(conn, sql, Statement.RETURN_GENERATED_KEYS);</p><p>  Prepare

98、dStatement p2stmt = DB.prepareStmt(conn, prioritySql, Statement.RETURN_GENERATED_KEYS);</p><p>  pstmt.setString(1,name);</p><p>  pstmt.setString(2, content);</p><p>  pstmt.setStr

99、ing(3, ppath);</p><p>  pstmt.executeUpdate();</p><p><b>  //加入權(quán)限表</b></p><p>  p2stmt.setString(1,name);</p><p>  p2stmt.setString(2,userName);</p>

100、<p>  p2stmt.executeUpdate();</p><p>  conn.commit();</p><p>  conn.setAutoCommit(autoCommit);</p><p>  DB.close(pstmt);</p><p>  DB.close(conn);</p><p&

101、gt;  response.sendRedirect("art_mana.jsp");</p><p><b>  }else{</b></p><p>  String pathp = (String)request.getParameter("pathp");</p><p>  System.out

102、.println(pathp+"途徑1");</p><p>  session.setAttribute("ppath", pathp);</p><p><b>  }</b></p><p><b>  %></b></p><p><b&g

103、t;  (6)編輯文件代碼</b></p><p><b>  <%</b></p><p>  String name=null;</p><p>  String content=null;</p><p>  String pathu=null;</p><p>  req

104、uest.setCharacterEncoding("GBK");</p><p>  int id = Integer.parseInt(request.getParameter("id"));</p><p>  System.out.print(id+"3333333");</p><p>  Con

105、nection conn = DB.getConn();</p><p>  Statement stmt=DB.createStmt(conn);</p><p>  String sql = "select * from ufile where id='"+ id +"'";</p><p>  Syste

106、m.out.print(sql);</p><p>  ResultSet rs = DB.executeQuery(stmt, sql);</p><p>  if(rs.next()){</p><p>  name=rs.getString("name");</p><p>  content=rs.getStrin

107、g("content");</p><p>  pathu=rs.getString("pathu");</p><p>  System.out.print(name);</p><p>  System.out.print(content);</p><p><b>  }</b&g

108、t;</p><p>  DB.close(rs);</p><p>  DB.close(stmt);</p><p>  DB.close(conn);</p><p><b>  %></b></p><p><b>  (7)修改權(quán)限代碼</b></p&g

109、t;<p>  <%request.setCharacterEncoding("GBK");</p><p>  String filename=(String)request.getParameter("filename");</p><p>  String username=(String)request.getParam

110、eter("username");</p><p>  int r = 0;</p><p>  int w = 0;</p><p>  int exe =0;</p><p>  PrintWriter pout = response.getWriter();</p><p>  Conne

111、ction cconn = DB.getConn();</p><p>  Statement cstmt=DB.createStmt(cconn);</p><p>  String csql = "select * from priority where filename='"+ filename +"'" +" and

112、 username='"+ username +"'";</p><p>  ResultSet crs = DB.executeQuery(cstmt, csql);</p><p>  if(crs.next()){</p><p>  filename=crs.getString("filename&qu

113、ot;);</p><p>  username=crs.getString("username");</p><p>  r = crs.getInt("r");</p><p>  w = crs.getInt("w");</p><p>  exe = crs.getInt(&

114、quot;exe");</p><p><b>  }</b></p><p><b>  %></b></p><p><b>  <html></b></p><p><b>  <body></b></p

115、><p>  page of priority edit ...</p><p>  <form action="priorityEditDeal.jsp" method="post" ></p><p>  <input type="hidden" name="id"

116、/></p><p>  <label>文件名:</label><input type="text"name="filename" value=<%=filename%> /><br></p><p>  <label>用戶名:</label><input

117、 type="text"name="username" value=<%=username%>/><br></p><p>  <label>可&nbsp&nbsp;讀:</label><input type="text"name="r" value=<

118、%=r%>/><br></p><p>  <label>可&nbsp&nbsp;寫(xiě):</label><input type="text"name="w" value=<%=w%>/><br></p><p>  <label>可執(zhí)行:&l

119、t;/label><input type="text"name="exe" value=<%=exe%>/><br></p><p>  <input type="submit" value="提交" /></p><p><b>  <%&

120、lt;/b></p><p>  String path = request.getContextPath();</p><p>  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"

121、;/";</p><p><b>  %></b></p><p>  <%request.setCharacterEncoding("GBK");</p><p>  String filename=(String)request.getParameter("filename")

122、;</p><p>  String username=(String)request.getParameter("username");</p><p>  int r = Integer.parseInt(request.getParameter("r"));</p><p>  int w = Integer.pars

123、eInt(request.getParameter("w"));</p><p>  int exe =Integer.parseInt(request.getParameter("exe"));</p><p>  System.out.println(filename+"#"+username+"#"+

124、r+"#"+w+"#"+exe);</p><p>  PrintWriter pout = response.getWriter();</p><p>  Connection cconn = DB.getConn();</p><p>  Statement cstmt=DB.createStmt(cconn);<

125、/p><p>  String csql = "select * from priority where filename='"+ filename +"'" +" and username='"+ username +"'";</p><p>  ResultSet crs = D

126、B.executeQuery(cstmt, csql);</p><p>  if(!crs.next()){ </p><p>  System.out.println("!crs.next()");</p><p>  Connection conn = DB.getConn();</p><p>  boolean

127、autoCommit = conn.getAutoCommit();</p><p>  conn.setAutoCommit(false);</p><p>  String sql = "insert into priority values (null, ?, ?,?,?,?)";</p><p>  PreparedStatement p

128、stmt = DB.prepareStmt(conn, sql, Statement.RETURN_GENERATED_KEYS);</p><p>  pstmt.setString(1, filename);</p><p>  pstmt.setString(2, username);</p><p>  pstmt.setInt(3,r);</p>

129、;<p>  pstmt.setInt(4,w);</p><p>  pstmt.setInt(5,exe);</p><p>  pstmt.executeUpdate();</p><p>  conn.commit();</p><p>  conn.setAutoCommit(autoCommit);</p>

130、;<p>  pout.println("權(quán)限修改成功");</p><p>  DB.close(pstmt);</p><p>  DB.close(conn); </p><p><b>  }</b></p><p>  else if(crs.next()){&l

131、t;/p><p>  PreparedStatement pstmt2 = DB.prepareStmt(cconn, "update priority set r = ?, w = ? ,exe = ? where filename='"+ filename +"'" +" and username='"+ username +&q

132、uot;'");</p><p>  pstmt2.setInt(1, r);</p><p>  pstmt2.setInt(2, w);</p><p>  pstmt2.setInt(3, exe);</p><p>  pstmt2.executeUpdate();</p><p>  p

133、out.println("權(quán)限修改成功");</p><p>  DB.close(pstmt2);</p><p>  DB.close(cstmt);</p><p>  DB.close(cconn);</p><p><b>  }</b></p><p><b&

134、gt;  else{</b></p><p>  System.out.println("nimeid ");</p><p>  pout.println("權(quán)限修改失敗");</p><p><b>  }</b></p><p><b>  %>&

135、lt;/b></p><p><b> ?。?)用戶密碼修改</b></p><p><b>  <%</b></p><p>  request.setCharacterEncoding("GBK");</p><p>  String username=(Stri

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論