一、搭建Hadoop 开发环境

  我们在工作中写完的各种代码是在服务器中运行的,HDFS 的操作代码也不例外。在开发阶段,我们使用windows 下的eclipse 作为开发环境,访问运行在虚拟机中的HDFS。也就是通过在本地的eclipse 中的java 代码访问远程linux 中的hdfs。
要使用宿主机中的java 代码访问客户机中的hdfs,需要保证以下几点:
(1)确保宿主机与客户机的网络是互通的
(2)确保宿主机和客户机的防火墙都关闭,因为很多端口需要通过,为了减少防火墙配置,直接关闭.
(3)确保宿主机与客户机使用的jdk 版本一致。如果客户机为jdk6,宿主机为jdk7,那么代码运行时会报不支持的版本的错误。
(4)宿主机的登录用户名必须与客户机的用户名一直。比如我们linux 使用的是root 用户,那么windows 也要使用root 用户,否则会报权限异常
 在eclipse 项目中覆盖hadoop 的org.apache.hadoop.fs.FileUtil 类的checkReturnValue 方法,如图1.1,目的是为了避免权限错误。

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAxoAAADsCAIAAAB8AUecAAAgAElEQVR4nO2d348c15Xfe/+Afd43A37bFxubeJ3Nznp7AvCFRl4WAebJgHoRkoNYIWFvQqxpWKNWHI5X3niTppxxxjBFG9iQ7GACC+BIQ8XrHZnelrWWNRBJj0eCCGvYlkhJPSJFkSY5JGVVHurXuT+ruqt/VDU/HxwQ3berb906dafvl+eeurfWvXoHwzAMwzAMG9hqZtHaj1/BMAzDMAzDpOWVU+HRF7s3ML8FQRD6KoCBoKdhGIZhlTOPqKpJLTXxhlbCQjUwaUEyDdDlMAzDsMqZVVHV0FID+HHSOmR6oONhGIZhlTNTUSGn+rOA0NRQoeNhGIZhlTO7nFr78SsXLt/A8hhaaujQ/TAMwzDTJq6ZErM2T1NUyKn+DDk1dOh+GIZhmMW6pTFb8/qQU2f+9o+sNnkXT86scsrlqPFLkypi7X70PQzDMKzM5pJTH5j2zJP/4t79jzTbPPPFM3/7R9bjHwazyimPo8avTiqHtfvR9zAMwx560xXMF73klEEDVWJpXh9y6v/+zb80h7Q3/vGxX41zVHvxqZnanidenPhNTd1nCgK/o/LKisvH99b2Hr8cBMELh2uHXygoUjy1pR8NmaQ7ZhZKrN2vFH0vsfah2uxTz0+67w1uJfsjwjAMG8w8Q8kXv/jFcVZyoS851f7GZ+7e+yi0l7rX/vDff+c/tn58+Z//xxv/+Njmmf/wfxY/Y37l6fmazvxqIfeVbCSwyqlMR9nu2uXje4WX9h6/nFdOvXBYE0OXj+811dGE5FTmCxNr9xuw74nO9vw390gNpL3tz3Q5tdoYVvf22cUnZodUf8n+iDAMwwazYckpb3Qqb2P6kFP/+7/+8e27D27ffXBn90EypN3efXBn98Ht3Qcnj/6x+zSrjdqhp/v21MUnZmuN9pjuyvltn3ncZ97FTEfZbv3l43tdomlgOWWtcxixrnzIjq5FpPqVU4P0PUX0XHxitlYTGuLp+drMNy8O2Ftkze1DtZrope1Dg1fr7/wvPjUzu2dmkL+j8dlgf0QYhmGD2VCU0GijU9Zfw+9//bO37jy4defBzTvpkHbr9oNbtx/cuvPgB1//rPuXdLVRO3Tc+1Nrs4vNeq1xut9vjdWscirTUba7NoVyKnDIJk/fDYLA2v0G6Xudp2Zqe5qdtAc2DiTd6WKznnzUv50+VKs/dTaqdkRdVO/8Z5/cM/PkxeMHyv4XgWEYNiIbnSbzDGHWr1ib14ecOt787I1bD27cun/jt+mQduO392/cevDBbx8cb/4rtxdMOZXOj8w8eTEsPPvknrjs0HFxQDx0fXB+Oxwj46o6T83EhzROfxCOQEpt4Rf1w4ZpVjmV6SjbXTOkT1ogBdALh8V8YFxilVPpkfHUoVmbcWYx5Xj4hUCbCEzf6If5MHOn/Mdbu99AfU8oktOHagdWzz65p3ZgVe9FsqelheF3Vxtp95OHxYWprrL2eaNavfeGr1cbtT3NJw+JPwez88f6TzmjaKTSvV3lJf0jwjAMy2WXR2J+OWX/lq15ueRUEAS9n3+/e3Ku9/PvB0Hw/s17yZD2/of3r928d+3m/e889iduL2hyarWRhg3iMU8Z4dSPZGF62MXmgXhcOX0oGrHSwSb5ru0wu133mtN95g34Xwt/8v7N+9c+vO9ylO2uKblTe49ftskpqZySj/NFp3LJqcvHD8c1vXC4plefHGc7zE1BORUU6HuJfoqCOp2nZhIZFOqq7dWGEPSih1xs1qW6UqJQxw9kyilHtU45VRM6L/zTUDu/Eg9T/nbSRroab3b7kv0RYRiGTdAy5FTuevLKqe7JueCjX3ZPzgVB8N6NdEh778a93o1779249+2v/an7NKqcOn2opiL+Ry6nYPxy6oPzekDrg3SwyTjMakOTU0997V+/98G99z6453KU7a7liE6JeFOquoYpp+J3SuAprj/jMGdfzFmYYMqpwftepJ+Sqb3oxfEDsdbR9ZAQEHY1o751ySlXtZ7oVKqQLHIqbbDyWvsDcTTe/Dsq2R8RhmHYBG18cioIgt5PvrX7+hN/8Ye13def6P3k74IgePQHL4ZD2tVr965e333n2u7ffaUfOeWcIgn/Y237D3poyU9856mZJAAgfvfDwSZMNDnvPsxmQ5NT//0rf3r1+u5L3WuP/uBFq6Nsdy2fnLI8gWd80RJPyienLh/fW7N8NaxPFWmWw0wGTkUfXt9bbdQOHU+CUlGYSiROWXSPPzikvZVKSJir2gHllDrPmAqawnKqHH9EGIZhE7RRy6n0RzAIgu7JuWRIC4ME4Xj29s7uWzu7b72/+9bOvW/+9Z+5f0ZXG7WDx5W3tcbp6O3xAwePb18/3znWjEouNOvhp8mL6+c7x2Zqe5qd8MXB49vXz58+WKsfO7t9/fz29bNP7qkl9XeOzdQPNup7mp3r5z2HDcmscurJv/6zt3Z2X+peq/+n01ZH2e5antwpZWrthcNCKanJVbHo8sqpJBPKNm2o1Hn5+N69hw/vtSRrqae2dMTMFyay+wWF+97xA7XGgYMzT16ISk4frB042Ii7RDwrJz6NPhJ9T++xF5r1mtqp4s62ff386fBcjmqTbqz0xlBOJZWHr0UDTh+s2f98LjTr4SyhVqGjvKx/RBiGYflsVHLKg+NblubZ5dSr29cT664eufaTv9x9/YmLT9d3X3/i2gt/+ZvVI2cvvt3t7XZ7u5d7u933dru9u0cPf05+S7XVR2oHvydLOseSzNZHTkeF3zsQFx1YDUueC+cX6see6xybqe15vBN+MazqwuP1eK7wwMGZtP4Lj9fTGtyHGfam1xzfssqpxf/8ue57u93e7tmLb1sdZVMR+VLRHXNschpQBrCiw62p6KacErXvPXxYNEdTTa7DdJLumFkokd1vCH3v9EHZx17dXn2kJrtHXBKh9CLxraieWq1Wq+15/MmDtfqx5ywfyZqt1cZdWumNq4+EfTs6b/Q66fyPH9AafP17UcmFx+u1Rw4cNM7iKC/rHxGGYVgem3gcKzFr8xxySvwIdk/O/e7Nr1/76eG/+MPatZ8e/t2vv949Obf97u72u3dDe/Pdu2++e/frf/W5jB/Todg/HZupHfzeGE6Uz6xy6r/81ee23737ZuQii6NcSmIyeCfsxo/sfuXqe6WzC4/Xa4+cyl8eW8n+iDAMw/LYpGNjqVmbly2nfrb46Y/f+s6N11vP/c9/d+P1VvCb7/xs8dNf+3L9sS/Xw38f+1L9sS/Vm1/+8zF487m/2VOrH3tu0jdVus8UBM0v//nXvlR/TLhIc9T4NYqHkS2KPiCy+5Wq75XPBpRTZfsjwjAMy2WTDo+lZmtetpy68tIPfrb4aWlXXvrBBPx46mA0czHxO6q6b9LyowDRHGGJQlOBKqfK0vdKav3LqVL+EWEYhk2BZcspzO++ScuPaYPuh2EYhlXOkFNF3Tdp+TFt0P0wDMOwyhlyqqj7Ji0/pg26H4ZhGFY5s8spLL9NWn5MGxO/oRiGYRg2gFnk1KSHVAAAAIDKgJwCAAAAKIRPTu3mYAxNHM9ZAAAAYFrZ3d1966233nnnnWvXrn0guHHjRvhvwocffnjz5s1er5dHBSUSBTkFAAAAUw5yCjkFAAAAhUBOIacAAACgEMgp5BQAAAAUoipyqrfeOhLR3kxav9k+YilVP7V8YLigsBsBAADg4aUScmqzfeRIa72nNV2WWo7YbB9pt9vIKQAAABgxLjl169at27dv37p1a/JyqrfesmkitXhTE0699VZrvaeXulxQ0IkAAADwMGOVUzdv3rx9+/anPvUpqagmJadCYWS2vLfeSrVSb70lo1Ox1EJOAQAAwMgx5VSopT7xiU989rOf/cIXvpAoqgnJqVAZpalTmmg6cqS9udk2y0MRhZwCAACAkaPJqVBLffKTn/z85z//1a9+9Vvf+tY3vvGNUFFNUE6lYkkJSckEdbUsfoecAgAAgJGjyanbt2/Pzc195Stfefrpp3/4wx+ePXv2hRdeWFtbu3379gTllJzsSxRSb72VyKz0tXo4cgoAAABGzq4tOmUy2eiUlFNx8Mkus8R6ChKvpEJOAQAAQBF2S79QgvZgXxxw0gNP1kAU0SkAAAAYOeWXU0ocSqwvtdk+oj7ZZxFOyCkAAAAYORWQU4FMOVfWTBCLottVE3IKAAAARk415NSoXTCGswAAAMC0gpxCTgEAAEAhkFPIKQAAACgEcgo5BQAAAIWYpJz6zHezbTwuGMdpAAAAYEqZpJy6cePGZ76b8e94XDCO0wAAAMCUMuHoVKaiGo8LxnAWAAAAmFaITiGnAAAAoBBEp5BTAAAAUIiqRKfE3sbaBn5Gqb4NcvzJ7r37vfc/7Lyy9dz6LzqvbPXe/3D33v1g6HLq0jNLtblm7fC5S8OsdayM+hJ89b+8Uptr1o5t5atpbb420xpCK9fma7X5NXu5YCjnGqRtxoldDZYHFG7tpdZMeJbwpgyxPwy9wmGi3fTQz/IuDKvXAcA0UYnolNipTyBL5Wu5x1/C3Xv3N361feGNt65cv3nz/u+uXL954Y3fbPxq++69++WSU+HXZ57ZGVZL8lSlHYmcspYn6sLLpdbMkAdbS+My1dQQPHOpNROf4+GTU4ZzkVMA4KcC0aneesu28Z5aLHbns8qpt3sf/OK17s7dj3bufrRz93e9ux/t3P3oF691f/PutXJN9q0daw5LTuWvaognLUqJ5VQeFTMKOWWeNkc7CntGVoCc0g9ATgGARvmjU731lhmZCqI5vVhPSQlllVNnO7/81ZUPLt980L15/3Jsm1dunO38MoecSn79wxdyJIg/WksCPMnBV87NzDVrc0utK1E1QrVszYf1hBapB7Vwrjn/cqCXu0agpGFzzdrcypq9qtwn1Ue7ndbh5ID0coIgCHzXqH0xuRyj/qiSZm1uZc0npy61ZpQJmHhgS2dn1FHOPN5TT3JI9GkyxeOWU0Y9oiAq08WVqCF8GbZ9fs17Ld5miJOqX4nfedrg9pIiGTz9Pwicd9nzkd7BrD3c2l0D4+/L8UfROVGvn+h0TtTrj9aPnjhaf3TfyXfiz86rbzWc0am4UJNTrm4W031+X33xZPf80fqj9fqjdd+pAaC6lD46FQah0nwoIZTCwvbmZlspV3KnYr3198++9PMrt//bd1ak/fzK7b9/9qXcckqz8Pc9+nFfCn/ZFTkVjyWxtgiHh6XWFSkgIrNoLKsGskoNvXkOOZX/pMpopx2gyinPNZotTw6T9RutcsgpdaptrdW6FMRpLmKYS8c5KSLkd531hGVr83JUVEZWNYnJV7/9KK1Cte3eazHbIWYg5+UV24Z8n5xyXYWqGDz933OXc3YAVw+3d1f9L049oyASUuejd0fT10HnRL2+eLKrf8PmH2uhdI7LgYLu8/vqj9brJzri7dGO6+wAUFFKH50KxZGMPFmzzi2zganeCoLgzE8vvLK98/rOndd27ry2c+f19++8tnPnle2dMz+9kF9OxUoieruylr62/89bSRJyTXCo8Rht3i2qIfo01C6aoNGOSfFN4XlParmE8GKDILiytWY9u3GNWoJUvsPiYIYpp+wzMJZASzS2aRGE5EBvPaqWCrSsZH2+zS5R+pJTGUEjRU/JQds+FyW/kk9Oua5CO4fa/2WX8Nzl/jqAt4cr3VVtTNh1LX9WmmYKg1VBEARB9+RiKq0sWJ8/cMgpZzcQGPqpe3Kxvu95p5wDgEpSieiUnLpLkqR6661EZsnXKvHh21ev/dOFX795/c6b1+/++vqdN6/fefP6nZ9eeHP7ap7cKfvcxFLriiqtzIPFXJhnFkxWnnGYJt3kGdPQVIQhp3KeNHAH2Gw4rlGvU04LChfZT21KQ3s+i2XaZUaErcwntNz11GZmzNiCqpKMUJLlCbD+5JQm3ezXor4z1ZTSlr7klPMqrHLK1v89dzlfB/D0cEd31Rrj+l+K0E9BEIQTfEc7QRC8c3KfPzjUR3TK3Q0E0WSfKEBOAUwhlYhOSaEUZ6A7ZZZKXHzrzm7n1Td+9stfv/bW+7+5cfu1t3de+uWbnVffuHUnbasbe66PrgxsB0dDwvzLchYsGmkiVRTWVkROBZqiUs6SjGe5T2oZ7SxnTLFeo6HDIqeJkJ5Vrg1RTuXILZfFMzMzxmDomhfzpCuPRk4lbzWho8TT+o5OOa/CL6fS/u+5y/11ALOHO7vrgHIq6Bx9dN/Jd4Lu8/vUcoM+5VTms57IKYCHgtJHp/QH+2J9pMsnu5ySouu3d+699e71f3jx4g//3z//w4sX3373+m/v3AtyrTtlnexwTeGpJfHBS0K+KBpFm62I3qrTcLmfdLPVrEyj5DqpGT1Kg14vn9MnYuzXmHeuR22Jc7LP8bycU4K4FjVw11ObX4uSip1J32J6zr1owojkVPR+zVRTalJ6X3LKfRXW3ClL/y8+2efo4e7uOqicCjon6vue72TM9BlOtRSmzsm1doYx2ackcgHAlFD66JQqicT6UpvtI+qTfdGb3npLKbXOAWouyPKSLRXXllQbWEpERm0c41H+Rz5z2DbqJMebmdqm1BBfsQx7UVX9nNSXKm7ktdivMbBmIkefyvpV30YNs8hHLQ4zHwehXBJEzym3lot6pMJwBaG0ZG1r/bbn7mR++aByKiyYUWf6jBx7a1KPuw3eq9Cf7LP2f89dztkB7D3c3V0HllPB+aP1E0ePpsrGE6rMnYrudGCKlooukrpyBbcAoBqUPzoVBDLlXBFHYlF0GZkSj/ZlaqmgDzkVr4ZQc2RtO0qSgUHkV8lnvN0PjSszHXnllJQ7alX5T+p5jl1eRYrtGvUvioZZR0TZMHs0zlxEwC9BRGaLsWyTUY/65Fz0kTHeKaOno/74wXlF5kQlg0enAjN2ptYehq7snnG1wXMVsgJP/w8C5132fOT+L0d6913ddXA5FXSOClnjzOnvS065HZgQTvZ1QlH1aD2NVLkfKgCA6lGB6NQYXJB1SKlXHQQYBVM/2GuqaGQYuVPjbgAAjINqRKdG7YKsQ5BT8BCSb1edqnKpNTMeMeOSU2NrAACMA6JTyCkAGB3O6BQATBNEp/LIKQAAAAAnRKeQUwAAAFAIolPIKQAAACgE0SnkFAAAABSC6BRyCgAAAApBdAo5BQAAAIWoSnRKrHSubeBnlrqPd7lgKK6EciIWrXavXK0sHO47bDjt6We9oX6PLwnnj9Yf3XfynZEdDwBQKioRnRI79QlkqXqE/XiPCwq5EMpNzo3RzK2LRyRikFNDOR4AoFRUIDrVW2/ZIkxq8WY7CUM5jve5YFDvQQUYSE7Z9swDAABwUP7oVG+9ZY009dZb6UReb70Vx6Ncx/tcUMCBUHbsciqZAow/8sspZQ9hpeKwovm16AtryYHza/JraQss2y3rtSolWvuVSUl1J+OZ1iVzd2eVaIXu80fj7XjVgNA7J/dF5fWj56OycC/hzomoUN/Q90QnCLonF/VvBeePpnv9hnsPy91/zRLleKUlSvn5o772AwBMitJHp8JYU5oKJaRSWNje3GyLcs/xbheMwrNQEixySkqltVb4QpdT4mvyI7GPXSKk0koTFROLnvBTZfO7tGKzGbaGyfavzRvKS/lIeWcTVN1QBp3oiLexWHnn5L5Enbxzcl+sjRIhJWvY93w3OSz5VKktlUfdk4vx8UHn5PNdW4kqp84f1fWc+lHS/s6JOvu3AEApKH10KhRGUiyJmbxUNSVl3uNdLhiuT6FUaKnoM61L1oCVKqekHAnjPkp982uBIVnUDYO17YPFGdOXZjNsDbN+NfMzx1yloniCQCqbzolE4gRBHJQKDMmi1tA9uZiKmzDmFMmgVB6JQvOwBCGnklN7qw2CQJWAAAATpBLRKRlhSpKkeuutI2KCL37tPN7nguH6FEqFS6JoE2Lak32qstJJ5JRbwKif2nWP2QxLw3zyS0g9TfR55JQSzknkVDL7JiyRU0LcaDWon9p1Txjf0r+llnjll5B64WRf8gFyCgBKQiWiU1IexYnmLtnkOt7rgiE6FMqGMxVdlS7O1HPv94vJKUszzJIxyik9YhQEwTDkVPJROktoliCnAKDSlD46peuhWDbpUSclamU53uuCYXkTSoj3yb5UdTjllDZt56x4UDll+a5SouZa+Sb7csopQ+UcPR8Y03biiOHIKct3lRI118o32YecAoASUvrolBpvEitKbbaPqE/2yYUS7OtROV0wZKdCmbDGdPx54ZYaZAK4ETYKLBXkkFNmM2wN86eiJ2fsQ045Urn1BPBIphSWU52j8nQnOraSrFR02UjkFACUkPJHp4JAppwr2kgsiq5GoPp5sA85NeW4okFajpR/nSmRQKUtlKDU2Wd0ymyGpWGehRK0FKvck33pMgdaACldgEBfKEGroa/oVDc5XfxFs8S3UIKWYoWcAoASUoHo1BhcMIazAJQAc7oNAACGQDWiU6N2wThOAzB5kFMAACOB6BRyCh4ekFMAACOB6BRyCgAAAApBdAo5BQAAAIUgOoWcAgAAgEIQnUJOAQAAQCGITiGnAAAAoBBEp5BTAAAAUIiqRKfSdc71Dfm0UrlSer6V0ZFTU4yyD0s2L6/U5pq1w+dyf2F0pOuwiyXRxeLs+nXJ1dLNT8fX5uGeV91VBwCgtFQiOmXfeU+Wuvbmk/v3eVxQyIVQbrTdVxQuPbNUm2vOPLMTvS+RnAps+9QY0ip9f6k1M37dYdlYZ5hyaiLXBAAwCBWITvXWW+qOfCFq8Wb7iOWgPGoKOTXteAbltWPNisgp286DSmEZ5NSw8SlhAIBSUf7oVG+9ZVVEvfVWqqDsuimXmkJOTT32QX9rfq5ZEzb/spBTV87NhOWJtIo/WlMCWjutw2oNyZFzK2vyi3NLrSvi7bEt8VFTOT4lVUuXWjPWOS9tO2XjiEutGW2XZ0V+GbOJtsLIe+k8Y1SfOrs4vxZ4d2vW4mq2Ck2QUwBQGUofnQqDUGnqlJBHYWF7c7NtT5ByzQCaLhiWN6GcWKWGR04tzYjySDmpH808s2PWoJZH+imcT0zEVhgPS8+VT05ZY1PqB47olJBQmvZKj15rtS4FquoUB0SiSJFh8o022SfDaeIU8l0opOQ7h2hCTgFAZSh9dCrUTLEqUkJSMkHdMhton/+zuqC4H6HUuMZl+2SfKn2iAJX6UZDopDh8Jd+KakX46thW/HapdSU+PgxTOVvdn5yyZqKL6FLWzKH0UXKMERkTGsotp4xTuD9zzhiSOgUA1aES0SkZYkpEUm+9lcgs+do4MIcLhuJKKC99yil1nk6RU2kMSf9uND+oSqUr52bmmvMvb81H9SQvMmf6grxySigbV4bYvDrd5szD0knklOK8PHLKcoq0qdrdsMupEadlAQAMl0pEp6RQijPQnTLL8d7rguJ+hFIzNDmVZqlHYSdDTq2sydcvr9TmllpX4qDUMyvWYJiSXKW0WoSebBeQlTsVJB/lklPW709ITvkvCQCgZJQ+OqU/2BfLpAz5lF9NIaemH+e4HE3nJTNufcgp32RfMqk3czgqiVZkOLxkk02RMkumEZPWDeXJvlCtrIkpO6t+cWW7mx9oGs4qp8za1Mm+XHKK3CkAqA6lj06pcSiRXb7ZPqI+2afnVOVUU8ip6cc5LCd54mp6eC45ZU1F1zOrLA/xRZXLU2dGp+J3/a87leoaqVqU715qzbcuGRWuzatP8Nkzx80mulPRk28hpwBg+ih/dCoIZMq5kiAlV0CX4infAgnCBUW9CGXGm4WTSqL+5VSgKipVD8VLLcQCKz4yjoSpcsqupTzrGBiLheurotdmWpeyH6/T1ikQCVTaQglrtnUVxGmzFkrQstyRUwAwZVQgOjUGF4zhLDApGJOLMcGccJKnAKAyVCM6NWoXjOM0MAmGv4vcQ8dEH7Fjzz4AqAhEp5BTAB5YsQAAIBuiU8gpAAAAKATRKeQUAAAAFILoFHIKAAAACkF0CjkFAAAAhSA6hZwCAACAQhCdQk4BAABAIaoSnUrXRdd35rOsiu4sd7lgQOdtLc82lztBEARB99zC7MqG9ajOSmN2abUbv+2eW5htNmabC6d2zGOvnlpqhPV0VhquCjNP4WhqY3HLcwQAAAAMSCWiU2KnPoEszfPa44KBXHf11FJj/7mr0but5fS1iqJ1dlb324VUEKiarC85FR7vakDYVLQUAADAiKhAdKq33rLFmNTizXYciHKV+1wwiOcSYRQGflaWF8+t7s+MAImAlsHGolBa/cqpYGd1f76aAQAAYLiUPzrVW29Z40u99VaqlMSmx65ynwsGcFz33IKcX/NMtyXCKJ7ma8w2bQdvLesVRnJqY7HZWNzaWGw2ZpvLi+qJxHnVaJkCcgoAAGCElD46FQab0tQpIY7CwvbmZjtfudsF/fstlDjxu63l2ZWNzoo9NKXEmdzRKW22TpNT6beUGjYWm+m33PlbyCkAAIARUvroVKiNYlGkhJ5kgro6oecqd7mgb7epqigSUjur+21qJp+c0tObNDkllJZQctoEnxrfSvHNAwIAAEBRKhGdkhGmJBmqt946okzwZbz2uaBfr/X92F1hOWX9SA9HWeWUN/kdAAAAilOJ6JQURHGmuUtmOeWXzwX9+axPgTKYnOqeW4gjUrqcimWT8bwe0SkAAIBJUProlP5gXyyPdJmUVe51QV8u05LQMxksd0pgyKkwF2pLF0nkTgEAAEyE0ken1HiTWEdqs31EfYIveuMq97mgH495HqCzk1NOqbGldD1Pm5wKOiuNxZVlTTx5BRlyCgAAYFSUPzoVBDK1XEmEEoufGxGpUa2K7ls4yk5eOaWIngw5ZVnl3DcFiZwCAAAYIRWITo3BBfkP7nt1zX7w7FQTPPFv/K9ZFR0AAGBSVCM6NWoX5D10J8e654WQQSlBqJnc/7JnHwAAwAQhOlVgC+TxkEA5aBcAABMiSURBVBWX0l8DAADAeCE6VXo5BQAAAOWG6BRyCgAAAApBdAo5BQAAAIUgOoWcAgAAgEIQnUJOAQAAQCGITiGnAAAAoBBViU6l66LrG/hZVj+3H+xxwVBc6cG7xmb16Kw0ZpuN2aayRFZa2NQXweqeW0g/Mj4dX5uHcN50YbBw68ZTYllXxQPNjOVeZXsG6B79bhw5TfR7K4d06wck7vzD35ag325j9lgAGCKViE6JnfoEslS8ltv0ye3+fC4Yji8F2mg3ZXIq0FeH31i0SKt0Lx3fau8jw7wFxcdUeSHha3ln+1oxf0RyatQyqwwyrkpyyrf1U98U/FUxeywADJEKRKd66y1bkEkt3mxHGkpTUEm51wWF3ajzUMkpq4yQhWWQU8NA3fpwa3l2ZaN7bmEwOSVBTk0t/W/x6aHor4rRYwFgiJQ/OtVbb1kDTDIKJUSUpp9yxKeGLaeunlrSZ3zCH750Mij9TQy3N95YbKbhHGVqzCpZ1L1urGLFfUbtFNFJB6g/KnRtvCMGEmsN3XMLs/Ytny3NcxRePbVkvUz7LZBtsDo5w29by34l4ZBTojFatEzcXDnCWS8/UOdYbbLGctWeK1XYWjYPMJphr1+eva8uZ3T+sIaN5CyLW1Hv0lxh7CmutscoGc6t9zrQWqdSaLtZbneZfaafX5ViO0pl6a2MG91/hQBTQumjU2EQKs2GEtooLGxvbraPWKf94mPGLKeCwDrTlP7AbSw2k+FTEVKBPk0mJtHkf3PDH/foVzv6ddMa4D6j0rbuuYWo2gHqNxumEA6W8VlcOsOoJG1SEATBxqlzV51tjseY+DINTeaWL3Yne/2WGQywyqnuuWWrZHTJKceVqm0Ob1CO6JTnSlPkhNTWavjC1Qx3dCrvvRC1aZ0/rGEhbYCm5EzXmS23XUvRW2+rU+JzsvOvw+8ue5/J+6syejnlavlAFQJMCaWPToWaKVZESkhK5pxrZSJ3ypZ2pbtguD4NvGO5+qkyYEsJEpH8HIvf9M5KY/+SrMGSnOE9ozw+PuPA9eeUUyJHO73e6KTyqg0PeNps/pSLq3DfAreTfX67emopY4jSUtHNIUQ2ySGnXFeqt9mVD6Rete9KvYWuZmTJKfu98F2U8JJagxb1tN4js+W2Cyx66zMm7LxO9sspR9eV6Eo0169KIXLJqRwtz10hwJRQieiU1ENKkpSSfp4elT7w197cbJdDTumzOUJOWceMmGQoSqJEV08thRJk4dSOcwbKecZk2kJYIk36qj+HnBLKxvH/10iC+P83n93mmDxyyqse3Hcqn5yyXab1mUe7nHJdqdHmXLlT2TopKVT1n9PhGXLKfi+ctWlCRKvB+aehyaNZ4z8kmpYtfOstdab4neyVU66uGzj6TO5flUHQH791XnJGy/uvEGBKqER0SuqhOAPdKbNUHHnsmguK+1FjBHIqFiU7q/vjRJPFLadS8cop+3+1+63fMuEiycqdSk+aS071PSaVQ04pUz/Z0SnXlY5WTiUHx3Nt/k4yiJzKiF/aasgjp4yW20oK33rHWYyGmXUO1HWdfWakckrWkyd3ytbywSoEmBJKH53SBVEsm3T5ZJdTOdRUmeSUmdYtf45DobO1nK57tLLRWbGP8c4zujLH+69/CE/2hT/EW6JJ1p9mZ5uNeQdNw1nllNfJniFqkNwpdTTNllOuKzXckmuyz9+dLMQjpbuT9DHZp8xTW2sbkpyyfFcpKX7r3WfJcnL+yb7kSHefKY+ccv3RDVQhwJRQ+uiUGocSieab7SPqk33Rm956Ow5a5VglIRjRMp7qT0xeOWVLa1UHmIX9S0J5LC3sd/yQ+WWBcgol1aaP+guvO6UviWlp3s7qYjIiWtqsZcWq7jJugScf2ZVvrgd7+n2yb0dTilmTff4rVbK5HU9UmVft7E7pV8zENWcnyZtbrXvVVlthOWW23HUtRW69rU6Jz8kDuMvdZ/L+qow1Fd3RqfqoEGBKKH90KghkyrmSByUWRdcXR8i9JvqoVkWPH2wWjzQnn3nkVKDmHGg/Q7ke1IqP9PzPVWRmmI/iZ9cvn9jXr9f2PLmRRbFwaif7GStNMdjarD9ar55XvwWup+W1PBu339wzZUkL7etBRNfSyU5Fd12p6mH7QgmWq/ZcqeUrZsqRpxn2+JDrXlhrKx6dMltuuZbCt97uH4nTyRmTfXZ3ufpM3l+VYnIqi4wbDfDQUoHo1BhcMIazwAiwL+IwOjxJYA89474XFae67qpuywFGSzWiU6N2wThOA8Nn/L/s2avsPKwwyvZFdd1V3ZYDjBaiU8ip6sIve3ngXvRFdd1V3ZYDjBaiU8gpAAAAKATRKeQUAAAAFILoFHIKAAAACkF0CjkFAAAAhSA6hZwCAACAQhCdQk4BAABAIaoSnUpXOhdLnVsLg0Aul66sou50wVBcCSbhSs2nbMuFl6pOAACAIlQiOiV26ksR2/Qp2/rJN/IYnwuG40swSPZRti5UM9imrf46AQAAxk8FolO99ZZFEikKSu52rO57nGMXZOTUCNlaDjeYG6Kc8tcJAAAwfsofneqtt2wzdppOStSVLr6y9RRyahLYt0xWNksuNpeH3gIAgLFR+uhUKI/SLKlYWmkTgImc0uUTcqq8aNGpzkpjtrncid5tLBZTVMgpAAAYG6WPToVCKhZOIhlKz506ksgpJZhlnyrUXDBsr0IuVDm1sdhsLG6Jj7eWhboapHLkFAAAjIdKRKekPpLRpvQBvvZmLKOITlUHRU5ZxNPGYnPh1E7/dTYbmqGrAABgpFQiOiXllCPalBRb5FTGYgnIqUkxCjklK0dFAQDAeCh9dErXT/ZokziIJ/sqgyKndlb3M9kHAADVpPTRKXW6TySg99bbcdTJVFBi3anMhTyRUxNDFUxmKnoRPYScAgCAsVH+6FQQyOXP9Xk/25ro7tXSXS4YhidhAOLlEmwLJSCGAACgKlQgOjUGF4zhLAAAADCtVCM6NWoXjOM0AAAAMKUQnUJOAQAAQCGITiGnAAAAoBBEp5BTAAAAUAiiU8gpAAAAKATRKeQUAAAAFILoFHIKAAAACkF0CjkFAAAAhahKdMq60Lln9fPNds410ZFTI6az0ogXOs+7n3FnpZHu5VeYeKX1wXdTHhJXTy1F67+HmxWeWrEsBy/Xgu+eW0gOCEmdafNP+Kmy76EDswGTpd87Ptwekh9rZ+6sjGgF/6jDaBfrfwsAk6IS0SmxC19Kb72V6CW5N5/QWMipSdNRBuyNxfh3X9n82PqtYY0QO6v7JyGkzAuU2ih8nQ7DO6v7o80KNxaT1qaFZp2pMkvZWp5dWV7ML6dkAybNBOWUvyvqJ7V15qG40d9htFP43wLARKhAdKq33rLoIm13Y3UXZHuJ2wUDuw98uKVM/jGsKOouy2PDuEChk8JWrWykmzRvLcuBc3ErCAWTKow2FKmkX9fVU0sLp3Y2csopvQEPMXm7orszj0ZOqR1G09b+twAwCcofneqtt4zIVGCoJU1dmQd4XTC4/8DDzup+y+geb3vcTDY/DkXAxmKzEUoEGQYIxyrXJJcs71j/f9/Uv6gUymCD0oarp5Ya+89tJE1d3IouZzZupOVyZOhIO8XWsm/MNuWUebw+ZCrKKY5k6HLKcbE5CZ3gdL6oPGnYgG5UAj9by3qDjRI1UOS8TH/nsd8pV232zpx9lhz9bWF/doeJ7kX2263lnBO+ADBcSh+dCmNT6QxerJm0CUDkVClxZfOo/xdPhVT6LTlwpjVsLIrsos6K+FY44pqSRY3iKF8JzxudSGtDONBG4YF4RAw/VSbauueW4xCCVr6gJbj4Ahj6ZJ8ambBdiKKclK+n3nZfbE4itRFX6LzA7rmFWdGAAdyY3nEZBNpaPbVjK7H0EPtlejpPgnmn8tWWkreL+vpbdofREumcb5FTABOi9NGpUEgpiVGhSNJzp/T0KuRUOYj/1+5KAwrMcU4fLLVhI/qiHomx59MoKsSYC0s/1dqgJidpkQnHBKKuMNLGmDN3tu/G8ZtoDk4LydjCFca0oLxAz8XmxMjQSpWNJviScw3oxvQum420NVv0Ct9lujtP4CjMcJq1M+fvou7+lqPDaB3A/xYAxk4lolNSJ0mVFD6+F+acb7aRU+Ul/L94On74xzBzsi/5KP2iMcrak2DkYZaBOZEFWhu0yRRf3pJ42qsxsJxKiUJNRsMc0SmnJ30XmxPNCUJOJVJPWCKnBnCjJo/UJxzNEq/8Epfp7DwCpTCX0/T25O+i7v6GnAKoPJWITkmdZE9MtxQjp0pG99yCMu8zDXJKmQwqEp2S59VypyIPWOTUwqkdNftH5t+MXE5ZA13F5VTykbq2hVoyUTkVfyvzLMgpgIeJ0kendKFkV0kWkYWcKhsiCWYIcsp40ip7ss/MJlaFUd86QB0v3XIq98NfyaBoyqmMJ/uMdvouNifGZF9SgzMve0hyyvJdpUTNtfJN9vUnp/I7TXQ/bxfN2d+GlzsFABOi9NEpdbpPJKD31ttx0MqqnJBTE2dndb8YIUTCckZKUy45FQ72SlyhYRnGslLR48oH0gHyROEDa644R67ggQyEyDCGCMmIa7fps4xUdKeks4sGLRXdm2RtzxbqX05tLeu5X2ZJVip69jTcAD3E3Zk9oi13f8vuMHmXnmLRBIAJUf7oVBDIpTn1eT9zuU65jGeu1TyRUyMkfSpeCx3Fs1S2x/vzySlRSbMRrqKUOVgG6oPrzpE+tw5Ia9NXapAXGOSZaNMDEnF+kp7Z7Vv1wLdQgic85oht6MscOJdodyrjAaJT6TXGXzRLfAsleDSHI26k3Sm30xyd2R8Dy9ffzGaY607le8usH8CEqEB0agwuGMNZYNSUfG3oMk/HOFznioHBOBhsVfSS/xUATDHViE6N2gXjOA0MmXAd8Pjd1nIJduXzY9sZphSonlTKGZsnyAB79rluJQCMHKJTyKnqEj2ybi4FBMMAOQUAkBeiU8gpAAAAKATRqVROvXvz41HbH/z+7/3B7//eGE6EYRiGYdjYjOgUcgrDMAzDsEJGdAo5hWEYhmFYISM6hZzCMAzDMKyQEZ1CTmEYhmEYVsiqEp0Sa52na5xbC4Mg3GAm14roxeTUxvJss7GwoRS++qPHZk+/4jh4+d8ipzAMwzBs6qwS0SmxU19Kb72ViCW5rV+w2U41lPWbQ5NTNz9+d2N59ttnXlVLGj+6ahx59bvfbjR+dJXoFIZhGIZNn1UgOtVbb1liTIqCcm94rB02dDm1fabRXH42fB0Gq04vL/zoTEOLWm2faTQf++42k30YhmEYNoVW/uhUb71l00OafnLJJrsWG42cuvnxuzc/fvZ0Q49XhTOA3z7zKrlTGIZhGDaNVvroVKiH0iypWDNp03gOOZUjODVUObWxPHv6lWdPawlVryzEwSrkFIZhGIZNn5U+OhUKqVgSiYQpPXcqI71qRHLq5isLzce+ux29jYTU9pmGzEbfWJ6NJRdyCsMwDMOmzyoRnZI6SU7ypQ/wtTc327qcypOGXlxOfawpKtOePd1InvVDTmEYhmHY9FklolNSFDmSofTizXauRRKKy6kMLZUkoYdvkVMYhmEYNn1W+uiULpTsj/CpB+Wb5BuKnDJS0TVLktDDt8gpDMMwDJs+K310Sp3uExN4vfW2WGlKqKe8k3zjkFPRclNJCXIKwzAMw6bPyh+dSsJNyoN9aqkWvdIY60IJiokk9NCQUxiGYRg2fVaB6NSoKSSnzFXRhckk9NCQUxiGYRg2fVaN6FRJ5ZRtz77Uto210ZFTGIZhGDaNRnSq+EIJfRhyCsMwDMOmz4hOIacwDMMwDCtkRKdSOQUAAAAwAESnkFMAAABQCKJTyCkAAAAoBNEp5BQAAAAUgugUcgoAAAAKUZXoVLoCur43n2Xlc/si6h4XZByxNl+r1ebX8voUAAAAHioqEZ2y7sIn9zmW2/qJzfzybYWcKzq1Nl+baV3K41EAAAB4yKhAdKq33rJoIkVB6bsgBxnFuguy/XSpNUN8CgAAAGyUPzrVW2/Zpuw0oaSpK3FU5nwfcgoAAACKUProVBibMrOhtAlAq5zKE5tCTgEAAEAxSh+dCoVUy8yG0nOnhLrabOdPRM/7ZB/JUwAAAGCnEtEpKYtkxCmWTUeOtDdt03q99VYOTZVPTgUoKgAAALBSieiUVET2xHRXcZ75PqJTAAAAUITSR6d0oWTXRy41NTQ5Re4UAAAAOCh9dEqd7hMJ6OnyUqpm2mynwSzrglUWF2T7CTkFAAAADsofnQoC1zLnaakaf0pTqoa0KnqAnAIAAAAnFYhOjcEF2QeROgUAAAAOqhGdGrULMo5gzz4AAABwQ3Qq/0IJAAAAABYmLKcybTwuGMdpAAAAYEqZpJzKX8uoXTCGswAAAMC0gpxCTgEAAEAhkFPIKQAAACgEcgo5BQAAAIVATiGnAAAAoBBVkVPpCuhiCXRrYUq4OnrGjn3IKQAAAChGJeSUdeu93nor0UpyW7+YzfaRdjt7A2TkFAAAABRjzHLq/wMhsbkOq4favgAAAABJRU5ErkJggg==" alt="" width="717" height="236" />

图1.1

  如果读者在开发过程中出现权限等问题,请按照本节的提示检查自己的环境。

二、使用FileSystem api 读写数据

  在hadoop 的HDFS 操作中,有个非常重要的api,是org.apache.hadoop.fs.FileSystem,这是我们用户代码操作HDFS 的直接入口,该类含有操作HDFS 的各种方法,类似于jdbc 中操作数据库的直接入口是Connection 类。

那我们怎么获得一个FileSystem 对象

   String uri = "hdfs://10.1.14.24:9000/";
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(URI.create(uri), conf);

以上代码中,要注意调用的是FileSystem 的静态方法get,传递两个值给形式参数,第一个访问的HDFS 地址,该地址的协议是hdfs,ip 是10.1.14.24,端口是9000。这个地址的完整信息是在配置文件core-site.xml 中指定的,读者可以使用自己环境的配置文件中的设置。第二个参数是一个配置对象。

1. 创建文件夹

使用HDFS 的shell 命令查看一下根目录下的文件情况,如图2.1所示。

图2.1

我们在HDFS 的根目录下创建文件夹,代码如下

------------------------------------------------------------------------------------------------------

final String pathString = "/d1";
            boolean exists = fs.exists(new Path(pathString));
            if(!exists){
            boolean result = fs.mkdirs(new Path(pathString));
            System.out.println(result);
            }

------------------------------------------------------------------------------------------------------

以上代码中要放在Main函数中,

  • 第一行决定创建的文件夹完整路径是“/d1”。
  • 第二行代码是使用方法exitst判断文件夹是否存在;如果不存在,执行创建操作。
  • 第三行创建文件夹,调用的是mkdirs 方法,返回值是布尔值,如果是true,表示创建成功;如果是false,表示创建失败。

现在查看一下是否成功了,如图3.2,3.3可见创建成功了。


图3.2

图 3.3

2. 写文件

我们可以向HDFS 写入文件,代码如下:

-----------------------------------------------------------------------------------------------------

final String pathString = "/d1/f1";
final FSDataOutputStream fsDataOutputStream = fs.create(new Path(pathString));//写出去
IOUtils.copyBytes(new ByteArrayInputStream("my name is Sunddenly".getBytes()),
fsDataOutputStream, conf, true);

------------------------------------------------------------------------------------------------------
第一行代码表示创建的文件是在刚才创建的d1 文件夹下的文件f1;
第二行是调用create 方法创建一个通向HDFS 的输出流;
第三行是通过调用hadoop 的一个工具类IOUtils 的静态方法copyBytes 把一个字符串发送给输出流中。

该静态方法有四个参数:

  • 第一个参数输入流。
  • 第二个参数是输出流。
  • 第三个参数是配置对象。
  • 第四个参数是布尔值,如果是true 表示数据传输完毕后关闭流。

现在看一下是否创建成功了,如图3.4所示。

图3.4

3. 读文件

现在我们把刚才写入到HDFS 的文件“/d1/f1”读出来,代码如下:

------------------------------------------------------------------------------------------------------
    final String pathString = "/d1/f1";
    final FSDataInputStream fsDataInputStream = fs.open(new Path(pathString));//读进来
    IOUtils.copyBytes(fsDataInputStream, System.out, conf, true);

-------------------------------------------------------------------------------------------------------

  • 第一行指定所读文件的路径。
  • 第二行表示调用方法open 打开一个指定的文件,返回值是一个通向该文件的输入流;
  • 第三行还是调用IOUtils.copyBytes 方法,输出的目的地是控制台。

见图3.5


图3.5

4. 查看目录列表和文件详细信息

我们可以把根目录下的所有文件和目录显示出来,代码如下

--------------------------------------------------------------------------------------------------------
    final String pathString = "/";
    final FileStatus[] listStatus = fs.listStatus(new Path(pathString));
    for (FileStatus fileStatus : listStatus) {
      final String type = fileStatus.isDir()?"目录":"文件";
      final short replication = fileStatus.getReplication();
      final String permission = fileStatus.getPermission() .toString();
      final long len = fileStatus.getLen();
      final Path path = fileStatus.getPath();
      System.out.println(type+"\t"+permission+"\t"+replication+"\t"+len+"\t"+path);
    }

-----------------------------------------------------------------------------------------------------------
  调用listStatus方法会得到一个指定路径下的所有文件和文件夹,每一个用FileStatus表示。我们使用for循环显示每一个FileStatus对象。FileStatus对象表示文件的详细信息,里面含有类型、副本数、权限、长度、路径等很多信息,我们只是显示了一部分。结果如图3.6所示。


图 3.6

5. 删除文件或目录

  我们可以删除某个文件或者路径,代码如下

-----------------------------------------------------------------------------------------------------
    final String pathString = "/d1/f1";
    //fs.delete(new Path("/d1"), true);
    fs.deleteOnExit(new Path(pathString));

-----------------------------------------------------------------------------------------------------
  第三行代码表示删除文件“/d1/f1”,注释掉的第二行代码表示递归删除目录“/d1”及下面的所有内容。除了上面列出的fs 的方法外,还有很多方法,请读者自己查阅api。

Hadoop日记Day9---HDFS的java访问接口的更多相关文章

  1. 熟练掌握HDFS的Java API接口访问

    HDFS设计的主要目的是对海量数据进行存储,也就是说在其上能够存储很大量文件(可以存储TB级的文件).HDFS将这些文件分割之后,存储在不同的DataNode上, HDFS 提供了两种访问接口:She ...

  2. 掌握HDFS的Java API接口访问

    HDFS设计的主要目的是对海量数据进行存储,也就是说在其上能够存储很大量文件(可以存储TB级的文件).HDFS将这些文件分割之后,存储在不同的DataNode上, HDFS 提供了两种访问接口:She ...

  3. hadoop学习(五)----HDFS的java操作

    前面我们基本学习了HDFS的原理,hadoop环境的搭建,下面开始正式的实践,语言以java为主.这一节来看一下HDFS的java操作. 1 环境准备 上一篇说了windows下搭建hadoop环境, ...

  4. Hadoop编程调用HDFS(JAVA)

    1.运行环境 开发工具:intellij idea JDK版本:1.8 项目管理工具:Maven 4.0.0 Hadoop环境: Cloudera QuickStart 2.GITHUB地址 http ...

  5. Hadoop(五)搭建Hadoop与Java访问HDFS集群

    前言 上一篇详细介绍了HDFS集群,还有操作HDFS集群的一些命令,常用的命令: hdfs dfs -ls xxx hdfs dfs -mkdir -p /xxx/xxx hdfs dfs -cat ...

  6. Hadoop(五)搭建Hadoop客户端与Java访问HDFS集群

    阅读目录(Content) 一.Hadoop客户端配置 二.Java访问HDFS集群 2.1.HDFS的Java访问接口 2.2.Java访问HDFS主要编程步骤 2.3.使用FileSystem A ...

  7. Hadoop日记系列目录

    下面是Hadoop日记系列的目录,由于目前时间不是很充裕,以后的更新的速度会变慢,会按照一星期发布一期的原则进行,希望能和大家相互学习.交流. 目录安排 1>  Hadoop日记Day1---H ...

  8. 【Hadoop】四、HDFS的java接口

      Hadoop是用java语言实现的,因此HDFS有很好的java接口用以编程,重点就是Hadoop的FileSystem类,它是所有文件系统的抽象类,HDFS实例(DistributedFileS ...

  9. Hadoop学习笔记1 - 使用Java API访问远程hdfs集群

    转载请标注原链接 http://www.cnblogs.com/xczyd/p/8570437.html 2018年3月从新司重新起航了.之前在某司过了的蛋疼三个月,也算给自己放了个小假了. 第一个小 ...

随机推荐

  1. ecsop文件结构

    Ecshop文件结构 :ecshop二次开发手册,ECSHOP文件结构,ECSHOP目录详解 /*ECShop 最新程序 的结构图及各文件相应功能介绍ECShop文件结构目录┣ activity.ph ...

  2. android编写测试类

    由于网上很多教程,我就不多说.在这里我就说说我遇到的问题. 在android studio编写单元测试类中,在androidTest包下编写了两个类,分别如下 import junit.framewo ...

  3. SQL Server复制入门(二)----复制的几种模式 (转载)

    简介本系列文章的上一篇对复制是什么做了一个概述.本篇文章根据发布服务器,分发服务器和订阅服务器的组织方式和复制类型来讲述常用复制的几种模式. 模式的选择选择复制的模式取决于多个方面.首先需要考虑具体的 ...

  4. Distribution setup SQL Server Agent error: "RegCreateKeyEx() returned error 5, 'Access is denied.'" (转载)

    In the Configure Distribution Wizard, the step "Configuring SQL Server Agent to start automatic ...

  5. Mysql学习---面试基础知识点总结

    drop.truncate. delete区别 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 ...

  6. October 14th 2017 Week 41st Saturday

    I was well beaten myself, and I am beffer for it. 我自己也被打败过,但我因此变得更好. For most of us, the life road c ...

  7. 团队作业6--展示博客(Alpha版本)

    一.团队展示: 1.队名:软件1412--博客管理系统 2.队员学号(标记组长) 曾海明(组长):201421122036   周雅静(组员):201421122003  王珏(组员):2014211 ...

  8. burpsuite联合sqlmap扫描注入点

    其实我们在众测的时候完全可以使用burpsuite联合sqlmap测试目标的注入漏洞.对get和post型注入都支持. 先来记录proxy的log , 记住路径     把proxy拦截关掉 接下来浏 ...

  9. ubuntu 视频播放问题

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/chang_xing/article/details/30976659                ...

  10. Redis系列五:redis键管理和redis数据库管理

    一.redis键管理 1 键重命名 rename oldKey newkey //格式rename oldKey newKey //若oldKey之前存在则被覆盖set name james :set ...