成人麻豆免费视频精品区,校园春色中文字幕人妻,69国产亚洲精品成人av久久,男女激情久久免费国产,欧美一区二区三区4区,欧美狠狠爱第三页视频,120日本少妇视频,79自拍视频在线观看,中文字幕丝袜美腿一二三区

FastDFS教程
FastDFS環(huán)境搭建
分布式文件系統(tǒng)FastDFS的HTTP訪問
FastDFS在Java項目中開發(fā)示例
FastDFS在web項目中的應用
FastDFS分布式文件系統(tǒng)集群

FastDFS在web項目中的應用

需求

對P2P項目合同進行管理,在WEB項目中實現(xiàn)對文件的上傳下載和刪除操作。

名詞解釋

● 有一些債權:投資人有該債務的權利

注:通常隱含的意思就是:一筆借款常被稱為一個債權。

● 一個債權會有一個合同

● 合同是pdf文件

● 債權是債務的對應詞,但是在P2P項目中,我們管理的債權,以及合同一般指的是借款人的信息,所以在我們下面創(chuàng)建的creditor_info表中存的是借款人信息

目標

● 實現(xiàn)對pdf文件上傳、下載、刪除

● 熟練一下Springboot+thymeleaf

案例實現(xiàn)步驟

1. 數(shù)據(jù)庫環(huán)境搭建

① 創(chuàng)建數(shù)據(jù)庫fastdfs

② 在該庫下創(chuàng)建creditor_info表

CREATE TABLE `creditor_info` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
`realName` varchar(35) DEFAULT NULL COMMENT '債權借款人姓名',
`idCard` varchar(18) DEFAULT NULL COMMENT '債權借款人身份證',
`address` varchar(150) DEFAULT NULL COMMENT '債權借款人地址',
`sex` int(1) DEFAULT NULL COMMENT '1男2女',
`phone` varchar(11) DEFAULT NULL COMMENT '債權借款人電話',
`money` decimal(10,2) DEFAULT NULL COMMENT '債權借款人借款金額',
`groupName` varchar(10) DEFAULT NULL COMMENT '債權合同所在組',
`remoteFilePath` varchar(150) DEFAULT NULL COMMENT '債權合同所在路徑',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

⒉ 開發(fā)環(huán)境搭建

① 創(chuàng)建SpringBoot項目10-fastdfs-web,添加Web和Thymeleaf依賴

② 在pom.xml文件中添加Mybatis依賴及MySQL依賴

<!-- 加載mybatis整合springboot -->
<dependency>
   <groupId>org.mybatis.spring.boot</groupId>
   <artifactId>mybatis-spring-boot-starter</artifactId>
   <!--在springboot的父工程中沒有指定版本,我們需要手動指定-->
   <version>1.3.2</version>
</dependency>
<!-- MySQL的jdbc驅動包 -->
<dependency>
   <groupId>mysql</groupId>
   <!--在springboot的父工程中指定了版本,我們就不需要手動指定了-->
   <artifactId>mysql-connector-java</artifactId>
</dependency>

③ 在pom.xml文件中添加resources,指定編譯的位置

<resources>
   <resource>
      <directory>src/main/java</directory>
      <includes>
         <include>**/*.xml</include>
      </includes>
   </resource>
   <resource>
      <directory>src/main/resources</directory>
      <includes>
         <include>**/*.*</include>
      </includes>
   </resource>
   <!--如果存在jsp,需要指定jsp文件編譯的位置-->
</resources>

④ 在SpringBoot主配置文件application.properties中添加數(shù)據(jù)庫配置信息

#數(shù)據(jù)庫的連接配置信息
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://192.168.235.128:3306/fastdfs?useUnicode=true&characterEncoding=utf8&useSSL=false

⑤ 使用Mybatis反向工程,生成實體類及mapper映射(參照SpringBoot附錄教程)

A、在pom.xml文件中添加反向工程插件

<!--mybatis代碼自動生成插件-->
<plugin>
   <groupId>org.mybatis.generator</groupId>
   <artifactId>mybatis-generator-maven-plugin</artifactId>
   <version>1.3.7</version>
   <configuration>
      <!--配置文件的位置-->
      <configurationFile>GeneratorMapper.xml</configurationFile>
      <verbose>true</verbose>
      <overwrite>true</overwrite>
   </configuration>
</plugin>

B、 從03-springboot-web中復制GeneratorMapper.xml到當前項目下

C、 修改GeneratorMapper.xml配置文件內容

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <!-- 指定連接數(shù)據(jù)庫的JDBC驅動包所在位置,指定到你本機的完整路徑 -->
    <classPathEntry location="D:/repository/mysql/mysql-connector-java/8.0.13/mysql-connector-java-8.0.13.jar"/>
    <!-- 配置table表信息內容體,targetRuntime指定采用MyBatis3的版本 -->
    <context id="tables" targetRuntime="MyBatis3">
        <!-- 抑制生成注釋,由于生成的注釋都是英文的,可以不讓它生成 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        <!-- 配置數(shù)據(jù)庫連接信息 注意:使用高版本的驅動 url后面應該加屬性nullCatalogMeansCurrent=true,否則生成有問題 -->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://192.168.235.128:3306/fastdfs?nullCatalogMeansCurrent=true"
                        userId="root"
                        password="123456">
        </jdbcConnection>
        <!-- 生成model類,targetPackage指定model類的包名, targetProject指定生成的model放在eclipse的哪個工程下面-->
        <javaModelGenerator targetPackage="com.bjpowernode.fastdfs.model" targetProject="src/main/java">
            <property name="enableSubPackages" value="false" />
            <property name="trimStrings" value="false" />
        </javaModelGenerator>
        <!-- 生成MyBatis的Mapper.xml文件,targetPackage指定mapper.xml文件的包名, targetProject指定生成的mapper.xml放在eclipse的哪個工程下面 -->
        <sqlMapGenerator targetPackage="com.bjpowernode.fastdfs.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>
        <!-- 生成MyBatis的Mapper接口類文件,targetPackage指定Mapper接口類的包名, targetProject指定生成的Mapper接口放在eclipse的哪個工程下面 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.bjpowernode.fastdfs.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>
        <!-- 數(shù)據(jù)庫表名及對應的Java模型類名 -->
        <table tableName="creditor_info"
               domainObjectName="CreditorInfo"
               enableCountByExample="false"
               enableUpdateByExample="false"
               enableDeleteByExample="false"
               enableSelectByExample="false"
               selectByExampleQueryId="false"/>
    </context>
</generatorConfiguration>

D、雙擊生成

⑥ 創(chuàng)建相關的包和類

在com.bjpowernode.fast包下創(chuàng)建controller ,service 包,及其子包impl

創(chuàng)建CreditorInfoController類

創(chuàng)建CreditorInfoService接口

創(chuàng)建CreditorInfoServiceImpl實現(xiàn)類

3. 功能實現(xiàn)-展示所有債權信息

① 在CreditorInfoController類中創(chuàng)建index方法,將CreditorInfoService注入到controller中

@Controller
public class CreditorInfoController {
    @Autowired
    private CreditorInfoService creditorInfoService;

    @GetMapping("/fastdfs/index")
    public String index(Model model){
        List<CreditorInfo> creditorInfoList = creditorInfoService.getAllCreditorInfo();
        model.addAttribute("creditorInfoList",creditorInfoList);
        //模板頁面,不是jsp
        return "index";
    }
}

② 在CreditorInfoService中提供getAllCreditorInfo方法

public interface CreditorInfoService {
    /**
     * 獲取所有債權信息
     * @return
     */
    List<CreditorInfo> getAllCreditorInfo();
}
③ 在CreditorInfoServiceImpl中對getAllCreditorInfo方法進行實現(xiàn)
@Service
public class CreditorInfoServiceImpl implements CreditorInfoService {
    @Autowired
    private CreditorInfoMapper creditorInfoMapper;
    @Override
    public List<CreditorInfo> getAllCreditorInfo() {
        return creditorInfoMapper.selectAllCreditorInfo();
    }
}

④ 因為是SpringBoot項目,所以需要在Mapper接口上加一個Mapper注解

@Mapper
public interface CreditorInfoMapper {

⑤ 在CreditorInfoMapper類中添加selectAllCreditorInfo方法

List<CreditorInfo> selectAllCreditorInfo();

⑥ 在IDEA中安裝free Mybatis插件

該插件可以通過點擊Mapper接口中的方法,進入到.xml文件

A、 SettingsàpluginsàBrowse repositories

B、 在插件庫中搜索,free mybatis安裝

C、 插件安裝完畢,需要重啟IDEA

⑦ 在CreditorInfoMapper.xml文件中添加SQL語句

<select id="selectAllCreditorInfo" resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List"/>
    from creditor_info
</select>

⑧ 展示頁面的設計

A、 在項目的templates目錄下創(chuàng)建index.html

B、 百度搜索bootstrap表格,挑選自己喜歡風格的表格,將代碼拷貝到index.html中

我這里使用的是http://www.soulsinkind.com/try/try.php?

filename=bootstrap3-table-striped表格進行改寫

C、 在html標簽上加上Thymeleaf的命名空間

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">

D、 修改index.html內容

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8">
    <title>債權合同管理</title>
    <link rel="stylesheet" th:href="@{/css/bootstrap-3.3.7.min.css}">
    <script th:src="@{/js/jquery-2.1.1.min.js}"></script>
    <script th:src="@{/js/bootstrap-3.3.7.min.js}"></script>
</head>
<body>
<table class="table table-striped">
    <caption>債權合同信息列表</caption>
    <thead>
    <tr>
        <th>序號</th>
        <th>債權借款人姓名</th>
        <th>債權借款人身份證</th>
        <th>債權借款人住址</th>
        <th>債權借款人手機號</th>
        <th>債權借款人性別</th>
        <th>債權借款人借款金額</th>
    </tr>
    </thead>
    <tbody>
    <tr th:each="creditorInfo:${creditorInfoList}">
        <td th:text="${creditorInfoStat.count}"></td>
        <td th:text="${creditorInfo.realname}"></td>
        <td th:text="${creditorInfo.idcard}"></td>
	<td th:text="${creditorInfo.address}"></td>
        <td th:text="${creditorInfo.phone}"></td>
        <td th:text="${creditorInfo.sex == 1 ?'男':'女'}"></td>
        <td th:text="${creditorInfo.money}"></td>
    </tr>
    </tbody>
</table>
</body>
</html>

注意:我們從網絡上拷貝過來的內容css,js等是聯(lián)網獲取的,我們這里可以從04-FastDFS\resources獲取,并放在項目的static的相關目錄下,在頁面上引用

⑨ 向數(shù)據(jù)庫中加幾條數(shù)據(jù)

⑩ 啟動項目,訪問http://localhost:8080/fastdfs/index 查看效果

? 調整頁面樣式

<body style="margin: 50px">

4. 功能實現(xiàn)-為某一個債權合同上傳文件

①  在index.html中添加操作列

<th>合同管理</th>

<td>
    <!--為哪個合同上傳,需要將合同的id傳遞過去-->
    <a th:href="@{'/fastdfs/toUpload?id=' + ${creditorInfo.id}}">上傳</a>
    下載
    刪除
</td>

② 在CreditorController中添加跳轉到上傳頁面的方法

@GetMapping("/fastdfs/toUpload")
public String toUpload(Model model, @RequestParam("id") Integer id){
    model.addAttribute("id",id);
    return "upload";
}

③ 在templates下創(chuàng)建upload.html頁面

在網上搜索bootstrap表單,并對其內容進行修改,我這里使用的是

http://www.soulsinkind.com/try/try2.php?filename=bootstrap3-form-inline

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8">
    <title>債權合同上傳</title>
    <link rel="stylesheet" th:href="@{/css/bootstrap-3.3.7.min.css}">
    <script th:src="@{/js/jquery-2.1.1.min.js}"></script>
    <script th:src="@{/js/bootstrap-3.3.7.min.js}"></script>
</head>
<body>
    <form th:action="@{/fastdfs/upload}" class="form-inline" role="form" method="post" enctype="multipart/form-data">
        <div class="form-group">
            <label class="sr-only" for="fileName">文件輸入</label>
            <input type="file" id="fileName" name="fileName">
        </div>
        <input type="hidden" name="id" th:value="${id}">
        <button type="submit" class="btn btn-default">提交</button>
    </form>
</body>
</html>

注意:

● 文件上傳必須是post請求

● enctype必須為multipart/form-data

● 合同的id通過隱藏域傳遞

④  在pom.xml文件中加入FastDFS客戶端的jar包依賴

<!--加入FastDFS的java客戶端依賴-->
<dependency>
   <groupId>org.csource</groupId>
   <artifactId>fastdfs-client-java</artifactId>
   <version>1.27-SNAPSHOT</version>
</dependency>

⑤ 將FastDFS客戶端的配置文件fast_client.conf拷貝到resources目錄下

⑥ 將原來我們封裝的FastDFS類拷貝到fastdfs包下,修改其中的file_upload方法,定義一些參數(shù)

去掉主方法,新的fileUpload寫法如下:

/上傳文件的方法
public static String[] fileUpload(byte[] fileBytes,String fileExt){
    String [] uploadArray = null;
    try {
        //1. 獲取StorageClient對象
        StorageClient storageClient = getStorageClient();
        //2.上傳文件  第一個參數(shù):本地文件路徑 第二個參數(shù):上傳文件的后綴 第三個參數(shù):文件信息
        uploadArray = storageClient.upload_file(fileBytes,fileExt,null);
    } catch (IOException e) {
        e.printStackTrace();
    } catch (MyException e) {
        e.printStackTrace();
    } finally {
        closeFastDFS();
    }
    return uploadArray;
}

⑦ 在CreditorController中添加處理上傳文件的方法 

@PostMapping("/fastdfs/upload")
public @ResponseBody String upload(@RequestParam("id") Integer id, @RequestParam("fileName") MultipartFile file){
    //原來文件上傳是將文件寫到本地或者遠程服務器的某個目錄下
    //現(xiàn)在的文件上傳是將文件上傳到fastdfs文件服務器上
    //1表示上傳失敗  0表示成功
    int result = 1;
    //abc.txt -->txt
    String fileExt = file.getOriginalFilename().substring(file.getOriginalFilename().indexOf(".") + 1);
    try {
        String[] uploadArray = FastDFS.fileUpload(file.getBytes(),fileExt);
        if(uploadArray != null && uploadArray.length ==2){
            //文件上傳到fastDFS成功  ,將合同文件路徑更新到債權記錄中
            CreditorInfo creditorInfo = new CreditorInfo();
            creditorInfo.setId(id);
            creditorInfo.setGroupname(uploadArray[0]);
            creditorInfo.setRemotefilepath(uploadArray[1]);
            int updateRow = creditorService.updateCreditorInfo(creditorInfo);
            //數(shù)據(jù)庫更新成功
            if(updateRow > 0){
                result = 0;
            }
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
    return "<script>window.parent.uploadOK('"+result+"')</script>";
}

⑧ 在CreditorInfoService中添加updateCreditorInfo方法

/**
 * 更新債權信息
 * @param creditorInfo
 * @return
 */
int updateCreditorInfo(CreditorInfo creditorInfo);

⑨ 在CreditorInfoServiceImpl中添加updateCreditorInfo方法實現(xiàn)

@Override
public int updateCreditorInfo(CreditorInfo creditorInfo) {
    return creditorInfoMapper.updateByPrimaryKeySelective(creditorInfo);
}

⑩ 在upload.html做一個類似ajax的頁面不刷新效果

● 在upload.html頁面中加一個iframe

● upload.html頁面中的form中的target設置為iframe的name

● 在iframe的父頁面中,寫一個函數(shù),處理上傳結果

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8">
    <title>債權合同上傳</title>
    <link rel="stylesheet" th:href="@{/css/bootstrap-3.3.7.min.css}">
    <script th:src="@{/js/jquery-2.1.1.min.js}"></script>
    <script th:src="@{/js/bootstrap-3.3.7.min.js}"></script>
</head>
<body>
    <form th:action="@{/fastdfs/upload}" class="form-inline" role="form" method="post" target="uploadFrame" enctype="multipart/form-data">
        <div class="form-group">
            <label class="sr-only" for="fileName">文件輸入</label>
            <input type="file" id="fileName" name="fileName">
        </div>
        <input type="hidden" id="id" name="id" th:value="${id}">
        <button type="submit" class="btn btn-default">提交</button>
    </form>
    <iframe name="uploadFrame" style="display: none;"></iframe>
    <script type="text/javascript" th:inline="javascript">
        function uploadOK(result){
            if(result == 0){
                //文件上傳成功
                alert("文件上傳成功");
                var contextPath = [[${#request.getContextPath()}]];
                window.location.href = contextPath + "/fastdfs/index";
            }else{
                alert("文件上傳失敗");
            }
        }
    </script>
</body>
</html>

? 如果上傳文件超出了1M,需要在application.properties中配置SpringBoot上傳文件的最大限制

#SpringBoot上傳文件的最大限制
spring.servlet.multipart.max-file-size=10MB

注意:如果提示找不到tracker_server,看看是否編譯到target中

5. 功能實現(xiàn)-下載某一個債權合同

① 修改index.html頁面,下載加連接,并做判斷

<td>
    <span th:if="${creditorInfo.getGroupname() ne null && creditorInfo.remotefilepath ne null}">
        <a th:href="@{'/fastdfs/download?id=' + ${creditorInfo.id}}">下載</a>
        刪除
    </span>
    <span th:unless="${creditorInfo.getGroupname() ne null && creditorInfo.remotefilepath ne null}">
        <!--為哪個合同上傳,需要將合同的id傳遞過去-->
        <a th:href="@{'/fastdfs/toUpload?id=' + ${creditorInfo.id}}">上傳</a>
    </span>
</td>

② 在CreditorController中,完成下載的請求

● ResponseEntity通常用于返回文件流

● @ResponseBody可以直接返回Json結果,

● @ResponseEntity不僅可以返回json結果,還可以定義返回的HttpHeaders和HttpStatus

● ResponseEntity的優(yōu)先級高于@ResponseBody。在不是ResponseEntity的情況下才去檢查有沒有@ResponseBody注解。如果響應類型是ResponseEntity可以不寫@ResponseBody注解,寫了也沒有關系。

@GetMapping("/fastdfs/download")
public ResponseEntity<byte[]> download(@RequestParam("id") Integer id){
    //根據(jù)債權id獲取 債權對象
    CreditorInfo creditorInfo = creditorInfoService.getCreditorInfoById(id);
    String extName = creditorInfo.getRemotefilepath().substring(creditorInfo.getRemotefilepath().indexOf("."));
    byte [] fileBytes = FastDFS.fileDownload(creditorInfo.getGroupname(),creditorInfo.getRemotefilepath());


    HttpHeaders httpHeaders = new HttpHeaders();
    httpHeaders.setContentType(MediaType.APPLICATION_OCTET_STREAM);//流類型
    httpHeaders.setContentDispositionFormData("attachment",System.currentTimeMillis() + extName);

    ResponseEntity<byte[]> responseEntity = new ResponseEntity<byte[]>(fileBytes,httpHeaders, HttpStatus.OK);
    return responseEntity;
}

③ 在CreditorService接口中添加getCreditorInfoById的方法

/**
 * 根據(jù)合同id獲取債權信息
 * @param id
 * @return
 */
CreditorInfo getCreditorInfoById(Integer id);

④ 在CreditorServiceImpl中添加getCreditorInfoById方法的實現(xiàn)

@Override
public CreditorInfo getCreditorInfoById(Integer id) {
    return creditorInfoMapper.selectByPrimaryKey(id);
}

⑤ 修改FastDFS類中fileDown方法的實現(xiàn),傳遞參數(shù)

//下載文件的方法
public static byte[] fileDownload(String group,String remoteFile){
    byte[] fileBytes = null;
    try {
        //1. 獲取StorageClient對象
        StorageClient storageClient = getStorageClient();
        //2.下載文件 返回0表示成功,其它均表示失敗
        fileBytes = storageClient.download_file(group,remoteFile);
    } catch (IOException e) {
        e.printStackTrace();
    } catch (MyException e) {
        e.printStackTrace();
    } finally {
        closeFastDFS();
    }
    return fileBytes;
}

⑥ 瀏覽器訪問下載測試效果

6. 功能實現(xiàn)-刪除某一個債權合同,使用ajax實現(xiàn)異步刪除

① 在index.html頁面為刪除加超鏈接

<span th:if="${creditorInfo.getGroupname() ne null && creditorInfo.remotefilepath ne null}">
    <a th:href="@{'/fastdfs/download?id=' + ${creditorInfo.id}}">下載</a>
    <a th:href="@{'javascript:deleteFile('+ ${creditorInfo.id} +')'}">刪除</a>
</span>

② 在index.html頁面提供js方法,并發(fā)送ajax請求,對響應結果進行處理

<script type="text/javascript" th:inline="javascript">
    function deleteFile(id){
        //獲取項目的上下文根
        var contextPath = [[${#request.getContextPath()}]];
        $.ajax({
            url:contextPath +"/fastdfs/fileDelete",
            type:"post",
            data:{
                "id":id
            },
            success:function(responseMsg){
                if(responseMsg==0){
                    alert("刪除成功");
			window.location.reload();
                }else{
                    alert("刪除失敗");
                }
            }
        });
    }
</script>

③ 在CreditorController中處理刪除請求

注意:刪除FastDFS和清除數(shù)據(jù)庫,所以我們將這些業(yè)務都放在service中進行事務的處理

@RequestMapping("/fastdfs/fileDelete")
public @ResponseBody String fileDelete(@RequestParam("id") Integer id){
    int result = 1;
    try {
        result = creditorService.deleteContract(id);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return String.valueOf(result);
}

④ 在CreditorService接口中加刪除合同的方法deleteContract

因為目前提供的方法,如果group和remoteFilePath為空就不更新,所以我們需要自己提供

/**
 * 刪除合同
 * @param id
 * @return
 */
int deleteContract(Integer id);

⑤ 在CreditorServiceImpl類中對deleteContract方法進行實現(xiàn)

@Override
@Transactional //加上該注解控制事務
public int deleteContract(Integer id) {
    // 1 刪除失??;0 刪除成功
    int result = 1;
    //根據(jù)債權id獲取債權信息
    CreditorInfo creditorInfo = creditorInfoMapper.selectByPrimaryKey(id);
    /**
     * 注意:事務控制的數(shù)據(jù)庫,所以我們先對數(shù)據(jù)庫進行更新,在操作FastDFS
     * 如果操作FastDFS失敗了,那么對數(shù)據(jù)庫的操作回滾
     */
    //更新數(shù)據(jù)庫債權表的合同路徑及組
    int updateRow = creditorInfoMapper.updateConstractById(id);
    if(updateRow > 0){
        //如果數(shù)據(jù)庫更新成功,那么刪除FastDFS上的文件
        int num = FastDFS.fileDelete(creditorInfo.getGroupname(),creditorInfo.getRemotefilepath());
        if(num == 0){
            //如果刪除成功,那么將整個操作結果設置為0,表示成功
            result = 0;
        }else{
            //如果刪除FastDFS上的文件失敗,我們拋出一個運行異常,回滾事務
            throw new RuntimeException("FastDFS文件刪除失敗");
        }
    }

    return result;
}

⑥ 在CreditorMapper類中添加更新的方法

/**
 * 根據(jù)債權的id,將組和合同路徑更新為null
 * @param id
 * @return
 */
int updateConstractById(Integer id);

⑦ 在CreditorMapper.xml中添加更新的方法

<update id="updateConstractById" parameterType="java.lang.Integer">
  update creditor_info
  set 
  groupName = NULL ,
  remoteFilePath = NULL 
  where id = #{id,jdbcType=INTEGER}
</update>

⑧ 修改FastDFS類中的fileDelete方法,提供參數(shù)

//刪除文件的方法
public static int fileDelete(String group ,String remoteFile){
    int num = 1;
    try {
        //1. 獲取StorageClient對象
        StorageClient storageClient = getStorageClient();
        //2.刪除文件 返回0表示成功,其它均表示失敗
        num = storageClient.delete_file(group,remoteFile);
    } catch (IOException e) {
        e.printStackTrace();
    } catch (MyException e) {
        e.printStackTrace();
    } finally {
        closeFastDFS();
    }
    return num; 
}

⑨ 在Application類上開啟事務支持

@SpringBootApplication
@EnableTransactionManagement
public class Application {
   public static void main(String[] args) {
      SpringApplication.run(Application.class, args);
   }
}

7. 功能實現(xiàn)-彈層組建layer的使用(簡單介紹)

官網:https://www.layui.com

2018開源軟件排行比較靠前

全部教程
丝袜av在线丝袜av天堂国产| 国产日视频在线观看| 挺进老妇的肉91九色| 男生的天堂亚洲男人| 性感丝袜美女诱惑大鸡吧| 天天干天天日天天超| 免费在线观看国产成人大片| www国产精品久久久久久| 黄片免费观看久久av| 91 chinese 在线播放| 国产精品精品3d动漫| 色片免费在线观看喷水| 亚洲av永久久久久久久蜜桃 | 亚洲欧美另类专区第一页| 亚洲自拍偷拍清纯唯美| 91人妻人人做人人爽九色全集| 久久99精品久久久久久小说| 亚洲在线一区二区三区免费| 人妻熟女免费一区二区萩原| 97色 国产精品综合| 男生日女生逼的视频| 勾引小哥鸡巴操逼视频下载| 在线人妻视频网站免费| 国产伊人 av 自拍| 国产盗摄女子私密保健视频| 国产视频精品在线免费观看| 久久精品视频全部视频在线| m3u8在线播放91| 亚洲精品成人a8198| 日韩最新视频在线播放| 天天操天天摸天天摸| 国产91精品久久久久高潮| 午夜网在线观看视频| 熟女免费在线观看视频 | 国产精品亚洲综合av| 欧美精品第5页在线观看视频| 女抽插流出张开淫水视频| 手机在线免费视频一区二区三区 | 不卡黄色免费在线观看| 欧美成年性精品三级网站| 国产成人女人毛毛片视频| 俄罗斯第一次处破女| 亚洲国产日韩欧美在线观看 | 91精品人妻一区二区三区水蜜桃| 伊人情人综合成人久久网小说| 少妇美女大极品内射| av手机在线免费播放| 操白嫩人妻少妇真爽视频| 超碰人妻中文字幕在线| 久久久激情视频网站| 精品一区二区三区在线免费播放| 天天碰天天摸人人看| 日本公与妇电影三级| 欧美日韩国产在线观看了| 久久久国产视频91| 亚洲另类熟女国产精品老| 久久这里精品视频3| xfplay亚洲资源| 成人大片免费看45分钟| 挺进老妇的肉91九色| 国产a v一区二区三区香蕉| 亚洲一区二区成人综合| 日韩成人在线电影,| 久久精品国产亚洲av视瓶| 啪啪男女日韩网站蜜桃| 91麻豆精品一二三区在线成人| 亚洲国产欧美一区二区三区久久| 国产成人女人毛毛片视频| 午夜性色福利视频自拍偷拍| 亚洲一区二区成人综合| 超级碰碰碰97免费视频97| 国产在线观看一区二区不卡| 亚洲视频免费观看不卡| 国产福利中文字幕导航| 欧美久久久久亚洲综合| 成人教育 在线学习| 性色av一区二区三区观看| 精品岛国产熟女人妻欲求不满| 亚洲国产精品国自产拍a∨| 欧美成年性精品三级网站| 日韩毛片基地免费看| 2012在线国语中文字幕| 日韩中文字幕乱码一区| 88888欧美精品久久久| 亚洲人成青青操免费观看| av男人天堂精品久久| 精品一区二区三区大全| 国产白丝美女在线网站| 97超碰在线视频观看| 国产成人啪精品视频免费 | 人妻少妇精品专区一二三| 国产午夜在线免费视频| 日本美国亚洲一区二区| 超碰在线观看97视频| 2018免费天天干夜夜操| 无人码一区二区三区视频| 日韩三级中文字幕熟女| 好吊视频一区二 区三区视频| 美女 激情 欧美 日韩| 夜夜操夜夜操夜夜爽| 午夜男女激情福利视频| 黄色污污污网站免费观看 | 91表用白丝脚帮我脚交| 亚洲精品综合视频自拍| 免费在线观看视频色播| 91大屁股人妻porn| 欧美色一区二区三区在线观看| 免费一级黄色片麻豆系列| 一级黄色片美女吃春满| 成人性生交大免费三人| 国产mm视频在线观看| av在线播放网站资源| 97超级碰最新在线视频| 国产剧情星空无限传媒| 综合久久天天搞天天]| 五月婷婷综合大香蕉五月天| 97精品国产高清在线| 亚洲一区二区成人综合| 国产精品黄色自拍视频| 中文字幕一区三区二区国产黄色 | 国语对白xxxx乱大交| 一区二区三区国产欧美日韩| 亚洲国产日韩欧美高清片vr| 欧美精品黑人粗大破除| 国产又色又爽又黄又免费的小说| 亚洲国产精品国自产拍av在线| 青草视频在在线成人av| 亚洲天堂欧美中文字幕| 丁香激情五月天综合网| 97国产婷婷在线观看| 亚洲一区二区视频在线免费观看| 久久久久久久久久久蜜桃| 手机视频在线观看99精品视频| 国产av综合av国产精品| 少妇的激情夜夜爽爽爽爽爽| 五月婷婷免费在线观看视频| 97超碰在线视频观看| 特黄特猛aaaaaaaaa片| 亚洲av性色在线观看黄色| 精品人妻欧美一区二区| heyzo久久综合色88| 日本老太婆老熟妇av| 免费熟女精品一区二区三区| 亚洲欧美另类专区第一页| 免费二区三区四区在线观看| 亚洲欧美国产其他二区| 粉嫩av入口一区二区三区| 色婷婷亚洲久久97成人| 91人妻精品动漫一区二区三区| 亚洲国产aⅴ成人精品无吗| 91免费观看国产精品| 99精品国产自在现线观看| 欧美熟妇亚洲中文不卡少妇| 98久久久久98久久久久| 天天日天天添天天爽| 特黄特猛aaaaaaaaa片| 国产一区三区四区五区| 日韩加勒比东京热二区| 中文字幕 日韩在线播放| 亚洲精品成人a8198| 免费人妻av一区二区| 性感的人妻在线观看| 少妇的激情夜夜爽爽爽爽爽| 日本伦理在线免费视频| 亚洲国内自拍愉拍影音先锋| 天天操天天色天天天| av蜜桃网在线观看| 青青青青青青青青草青青| 日韩avapp在线| 超碰超碰超碰超碰超碰超| 日韩国产亚洲在线视频 | 亚洲免费淫网站在线观看 | 亚洲熟妇av一区二区蜜桃第1集| 一区二区人妻丝袜粉嫩| 96人妻一区=区三区| 免费成视频人免费91| 激情综合网激情俺她去| 狠狠干狠狠操五月天| 91大屁股人妻porn| 偷拍自拍 中文字幕| 91大神视频在线观看视频| 欧美三级一区二区三区四区五区| 国产粉嫩粉嫩的在线18观看| 蜜桃一区二区17c| 亚洲精品专区一区二区| 天天色天天爱天天舔| 亚洲va欧美va人人爽午夜| 奇米一区二区三区视频在线观看 | 日韩加勒比东京热二区| 欧美激情自拍2020| 日韩不伦高清一区二区三区| 日韩精品一区二区三区中文精| 欧美精品黑人粗大破除| 精品岛国产熟女人妻欲求不满| 亚洲天堂男人的天堂av| 久久久久久久国产精品人妻| 黄色 成年人 免费观看| 6080日韩伦理片| 二亚洲女同性同志熟女| 免费在线观看网址你懂的| 搡四十路e五十路熟女av| 亚洲自偷自拍另类18p| 午夜男女激情福利视频| 久久精品亚洲国产| 五月婷婷免费在线观看视频| 91av国产在线观看| 草草影院黄色在线观看| 四川操bb操bb操b| av网站在线免费浏览| 91精品国产国语自拈产在| 91色porny 在线播放| 亚洲欧美日韩偷窥自拍| 欧美一级性生活片人与动物| 黄色污污污网站免费观看| 人妻精品久久久久中文字幕19| 少妇人妻中文字幕专区视频| 欧美午夜不卡一区二区三区| 精品视频在线观看久久| lisaann在线观看| mm在线视频观看免费观看| 中文字幕第一区久久| 日韩破处精品在线观看| 久久精品视频全部视频在线| 天天色天天情天天透| 99热6在线播放免费| 久久91精品国产91久久分享| 丝袜美腿国产在线观看| 两个人午夜免费看视频| 99久久精品国产欧美一区二区| 午夜偷拍福利小视频| 久re这里只有精品视频| 久久人人爽人人爽人人亚洲| 日韩国产亚洲在线视频| 夭天曰天天躁东京热天天摸| 国产女人露脸高潮对白视频| 99久久香蕉国产线看| 99久久精品免费看蜜桃的推荐词 | 人妻 日韩精品免费| 国产精品精品3d动漫| 99久在线精品99re8热视频| 又黑又硬又粗又黄又猛| 久久久激情视频网站| 人妻少妇偷人视频一| 欧美一区,二区三区高清视频| 91老熟女连续高潮对白| 在线观看国产影片| 熟女吧国产精品一区二区三区| 蜜桃精品在线观看一区| 91国内精品视频在线| 亚洲免费国产在线日韩| 韩国一区二区三区在线观看| 亚洲情品中文字幕人妻久久久边| 欧美亚洲国产校园春色| 日韩欧美亚洲在线第一页| 国产精品视频白浆免费网站| 国产白丝美女在线网站| 999在线精品视频观看| 97超级碰最新在线视频| yy111111少妇蜜桃| 91精品人妻中文字幕| 麻豆精品午夜福利在线| 亚洲综合一区二区人妻| fc2精品成人免费观看| 亚洲主要位于五带中的什么带? | 女人扒开逼逼让男人操| 国产精品精品3d动漫| 午夜福利免费福利视频| 韩国美女主播福利视频| 亚洲人成小说网站色在线| r人人妻人人澡人人爽| 狠狠操操操操操操操操操操| caoporn香蕉在线观看| 嗯嗯嗯啊啊啊不要好爽视频| 日韩欧美在线不卡一区二区三区| 67194久久一区二区| 超碰chaopeng 国产| 日韩中文字幕乱码一区| 新婚人妻聚会被中出| 国产精品午夜在线观看| 婷婷av一区二区三区7| 人人妻人人妻人人妻人人妻人人人 | 亚洲视频免费观看不卡| 一区二区三区在线中国| 天天日天天透天天操| 国产一级二级三级亚洲| 天天日天天添天天爽| 国产精品啪啪啪免费网站| 国产亚洲精品天堂在线观看| 精品久久久久aⅴ一区二区| 亚洲日产av一区二区在线| 亚洲自拍偷拍清纯唯美| 欧美亚洲校园春色另类| 久操视频精品在线观看| 91高清免费观看在线| 古典武侠校园春色亚洲| 99热6在线播放免费| 丝袜美腿色诱视频在线观看| 2018免费天天干夜夜操| 狂野小农民在线高清| 婷婷丁香花综合激情五月天 | 偷拍亚洲另类图片视频| 国产国语露脸在线视频播放| av色哟哟国产精品| 亚洲天堂欧美中文字幕| 美女被弄高潮喷水91视频9| 色淫骚色色色色色色美女| 亚洲主要位于五带中的什么带?| 9797人人妻人人澡| 啪啪啪在线播放视频| 天天日天天看天天摸| 色片免费在线观看喷水| 18人妻人碰人人做人人爽| 免费人妻av一区二区| 成年女人毛片免费在线播放| 国产综合av免费观看| 精品一区二区三区大全| 国产无遮挡精品视频观看| 91麻豆精品一二三区在线成人| 亚洲av性色在线观看黄色| 天天日天天看天天摸| 瑟瑟的网站在线观看| 亚洲少妇av在线播放| 国产综合av一区二区| 亚洲图色熟女五月天| 久操视频精品在线观看| 国产美女视频在线播放| av中文字幕在线播放| 爆操嫩逼黑丝袜美女小骚逼| 女人样男人用大鸡巴操她的逼逼| 亚洲免费淫网站在线观看| 高清日本欧美亚洲视频| 涩涩网站在线观看视频| 起碰97视频在线播放| 人妻少妇偷人视频一| 国产白丝美女在线网站| 国产一级免费黄色录像片| 6080日韩伦理片| 中文字幕av一区二区三区高| 一区二区人妻丝袜粉嫩| 亚洲欧美另类激情综合区动漫| www国产亚洲天堂| 日韩精品高清免费视频| 欧美日韩精品久久一区二区三区| 欧美丝袜熟女日韩亚洲| 国产精品视频白浆免费网站| 97午夜精品理论片在线| 筱田优在线播放一区二区三区| 美女诱惑福利在线视频| 欧洲日韩视频一区二区三区| 亚洲图色熟女五月天| 在线观看国产影片| 9色自拍视频在线观看| 成人大片精品在线观看| 丁香激情五月天综合网| 国产又粗又长又黄视频| 免费观看视频一区,二区,三区| 欧美日韩无卡一二三区| 亚洲视频 中文字幕 人妻| suv精品一区二区6| 人妻熟女免费一区二区萩原| 91精选视频在线播放| 美国黄色aa特黄色视拼| 欧美熟妇搡bbbb水蜜桃| 国产盗摄女子私密保健视频| 中文一区二区三区精品视频| 日韩国产精品高清中文在线 | 青青青青青青青青青青青青青草| 中文字幕久久久久久人妻| 伊人大香线蕉亚洲五月天| 欧美在线播放一二区不卡| 东游记中文字幕版哪里可以看到| 久操视频精品在线观看| 91精品久久久久久婷婷高清| 欧美1234不卡视频| 在线中文字幕综合一区| 99精品热视频在线观看| 五月天丁香婷久久爱| 亚洲人成青青操免费观看| 欧美午夜不卡一区二区三区| 日韩中文字幕乱码一区| 1777中文字幕字幕在线播放| 寂寞少妇一区二区三区| 亚洲av性色在线观看黄色| 91九色在线视频网站| 91老熟女连续高潮对白| 98久久久久98久久久久| 起碰97视频在线播放| 一级黄色片美女吃春满| 午夜剧场欧美一区二区| 91精彩刺激对白露脸偷拍| 久久久国产视频91| 99精品老司机免费视频| 亚洲三级伦理在线播放| 99,九九,久久精品| 天天大香蕉一区二区三区| 亚洲国产图片小说一区二区| 久久精品国产亚洲a| 91亚洲情色在线播放| 2022AV天堂免费在线观看| 亚洲少妇av在线播放| 亚洲国产精品av久久久| 偷拍亚洲另类图片视频| 91久久精一区二区三区大全| 日韩精品在线播放视频成年人| 在线观看av久久久| 成人一级黄色片免费看| ai给视频自动加字幕| 二根鸡巴日一个穴视频| 人妻天天操avxx| 99久久精品国产欧美一区二区| 国产精品久久久久白浆| 亚洲天堂欧美中文字幕 | 东方av在线免费进入| 日本黄色操碌缬巴| 国产粉嫩粉嫩的在线18观看| 日本黄色操碌缬巴| 欧美成年性精品三级网站| 亚洲精品成人原创视频| 国产乱人伦av麻豆网| 青青热久免费精品视频21| 日韩av在线区二区| 操白嫩人妻少妇真爽视频| 国产乱人伦av麻豆网| 可以直接在线观看的一区| 99久久免费国产特黄| 人妻天天爽夜夜爽麻豆av| 东京热av在线播放| 欧美 日韩 中文 字幕| 日本系列变态另类一区二区三区| youtube视频字幕中文| 中文字幕av一区二区三区高| 日韩欧美一区久久久久久| 五月婷婷免费在线观看视频| 97超碰在线come| 公一区二区三区高清99| 顶级销魂极品少妇在线观看| 97午夜精品理论片在线| 青青操成人免费在线视频| 蜜臀 av一区二区| 超碰在线97人人草| 在线观看国产精品123| 另类图片亚洲图区第一页| 精品视频在线视频精品| 97超碰在线视频观看| 亚洲精品少妇蜜桃久久久| 国产一区三区四区五区| 亚洲图片,自拍偷拍| 久久一区二区三区杨幂| 亚洲精品成人a8198| 夜夜骑加勒比天天操| 五月婷婷综合大香蕉五月天| 国内精品视频久久久久| 操人妻一区二区三区| 大香蕉大香蕉在线播放| 国产乱人伦av麻豆网| av国产在线观看网站| 日韩精品在线播放视频成年人| 色综合久久加勒比高清剧情| 国产成人啪精品视频免费| 蜜桃视频18在线观看| 91福利精品一区二区| 99久久香蕉国产线看| 国产又黄又粗又硬又大又猛的视频| 五月婷婷免费在线观看视频| 91精选视频在线播放| 中文字幕最新色片av| 高清日本欧美亚洲视频| 漂亮的人妻不敢呻吟被中出| 亚洲国产精品av久久久| 天天日天天看天天摸| 亚洲高清中文字幕在线的| av鲁丝一区鲁丝二区鲁丝四区| 亚洲国产精品国自产拍av在线| 色男人的天堂一区二区三区| 91人妻人人做人人爽九色全集 | 瑟瑟的网站在线观看| 91精品人妻中文字幕| 欧美福利视频一二三| 丁香激情五月天综合网| 久久精品在线观看免费视频| 欧美大长腿美女抽插网站| 亚洲视频 中文字幕 人妻| 9797人人妻人人澡| 国产91精品久久久久高潮| 久久视频十八岁亚洲精品久久视频| 一区二区三区四区免费福利视频 | 五月激情丁香久久亚洲| 另类图片亚洲图区第一页| 精品视频在线视频精品| 91 chinese 在线播放| 91久久综合九色综合欧美98| 天天操天天日天天啪| 中文字幕精品av在线观看| 久久亚洲日本精品视频| 91精品国产国语自拈产在| 看男破处女人逼黄色片观看| 亚洲精品一区二区三区新线路| 国产av大全网站天堂| 91麻豆精品国产91久久久平台| 高清日本wwwcom| 日本电影高清一区二区| 久久久亚洲精品熟妇少妇| 午夜在线小视频在线观看| 色婷婷亚洲久久97成人| 日本伦理在线免费视频| 人妻 日韩精品免费| av网站在线免费浏览| 色综合久久加勒比高清剧情| 日韩不伦高清一区二区三区| Av资源站中文字幕| 9色自拍视频在线观看| 91久久香蕉国产熟女| 国产粉嫩粉嫩的在线18观看| 日本很黄很黄的动态视频| 久精彩视频免费观看| 日韩成人在线电影,| 人妻少妇精品专区一二三| 可以免费看啪啪啪的网站| 亚洲va欧美va人人爽午夜| 午夜福利啪啪视频免费看| 天天舔天天做天天爱| 91精品人妻一区二区三区水蜜桃 | 亚洲av好看xx站| 蜜桃一区二区17c| 久久精品国产亚洲a| 亚洲无码精品中的精品| 99国产精品免费视频观看a| 91大屁股人妻porn| av男人天堂精品久久| www国产亚洲天堂| 好吊视频一区二 区三区视频 | 中文字幕第一区久久| 日韩三级中文字幕熟女| 天天干天天日天天超| 国产在线视频国产资源| 亚洲三级这里只有精品| 免费观看黄色韩日av| 欧美在线免费污污视频| 国产精品亚洲综合视频| 国内精品视频久久久久| 手机在线免费视频一区二区三区| 亚洲国产日韩欧美高清片vr| 国产av大全网站天堂| 日韩毛片综合在线观看网站| 午夜福利免费福利视频| 在线观看成人激情av| 91表用白丝脚帮我脚交| 天天操天天射天天综合网| av手机在线免费播放| 特黄特猛aaaaaaaaa片| 成人熟女一区二区三区| 欧美黑人天天干夜夜操| 骚白虎插入在线观看| 成年大片40分钟免费视频播放| 四川操bb操bb操b| 可以在线观看的黄色网页| 亚洲视频 中文字幕 人妻| 人人妻在线视频97| 亚洲妇熟xxxx妇色黄网站| 色就色欧美亚洲αv| 99久久精品免费看蜜桃的推荐词 | 亚洲精品专区一区二区| 激情综合网激情俺她去| 筱田优在线播放一区二区三区| 欧美1234不卡视频| 黑人熟女一区二区三区| 17c在线观看视频国产aa| 超碰超碰超碰超碰超碰情侣| 色噜噜在线综合亚洲欧美| 精品午夜国产福利观看| 一区二区三区四区免费福利视频| ai给视频自动加字幕| 欧美 激情 另类 自拍| 91精品国产国语自拈产在| 天天日天天色天天摸| 天天爱天天日天天干天天做| 欧美一区二区蜜桃视频| 97视频人人人人人性| 三级黄色亚洲成人av| 青青草手机视频在线观看| 天天色天天操综合网| 亚洲国产日韩欧美在线观看| 美女极品美女福利视频在线| 隔壁放荡人妻bd完整版| 午夜剧场欧美一区二区| 程嘉美日本全部三级| 欧美在线一区日韩国产| 欧美色一区二区三区在线观看| av鲁丝一区鲁丝二区鲁丝四区| 男人天堂新在线电影| 日韩高清视频在线播放| 中文字幕看日韩精品视频| 久久草大香蕉在线视频| 国产美女主播丝袜高潮白浆| 色吊最新在线视频免费观看| 五月天免费在线观看| 亚洲精品 国产成人| 91老熟女连续高潮对白| 亚洲图色熟女五月天| 色男人的天堂一区二区三区| 男人的坤插进女人的屁股里的视频 | 国产免费一级高清淫日本片| 五月桃花网婷婷伊人久久| 999久久久精品精品| 亚洲欧美在线色图动态图| 人妻少妇精品专区一二三| 中国熟妇丰满大乳大屁股| 东游记中文字幕版哪里可以看到| aaa222男人天堂| 丝袜av在线丝袜av天堂国产| 公一区二区三区高清99| 99久久精品美女高潮喷水| 亚洲国产精品自拍视频在线观看| 国产九九视频在线观看| 手机在线免费视频一区二区三区| 国产一区精品在线观看免费| 欧美日韩无卡一二三区| 天天日天天透天天操| 人人妻人人妻人人妻精品| 漂亮的人妻不敢呻吟被中出| 亚洲 网友 在线 观看| 丰满人妻被猛烈进入中文字幕四川| 怡红院精彩视频在线观看| 人妻熟女一区二区aⅴ佐佐木明希 五月婷婷丁香花激情网 | 亚洲欧洲自拍他拍av| 88888欧美精品久久久| 亚洲国产精彩中文乱码av| 国产精品午夜在线观看| 久久久老熟女一区二区| 中国熟妇丰满大乳大屁股| 欧美一区二区蜜桃视频 | 亚洲午夜免费精品久久久| 宝贝把腿张开让我添| 一区二区三区欧美高清| 91久久精一区二区三区大全| 午夜网在线观看视频| 风间由美亚洲一区二区三区| r人人妻人人澡人人爽| 亚洲国产精品成人久久动漫| 免费人妻av一区二区| 丝袜美图一区二区三区| 88888欧美精品久久久| 亚洲视频 中文字幕 人妻| 亚洲女同性同志熟女女同| 亚洲欧洲另类小说图片| 欧美黑人性色黄在线视频| 亚洲一区二区三区邪恶成人| 97国产在线精品观看| 欧美黑人抱着强干视频| 超碰在线97人人草| 熟女人妻av中文字幕| 99精品老司机免费视频| 黑人精品一区a一二区b| 东京热av在线播放| 4个黑人操素人视频网站精品91| 黄色成人激情福利在线影院| 婷婷亚洲综合在线五月天| 欧美一级性生活片人与动物 | 东游记中文字幕版哪里可以看到| 污污污视频在线观看91| 久久精品视频全部视频在线| 91精彩刺激对白露脸偷拍| 日韩最新视频在线播放| 最新亚洲成人黄色片| 欧美 激情 另类 自拍| 国产一级二级三级亚洲| 精品人人妻人人澡人人爽| 欧美日韩国产综合不卡| 亚洲熟妇色在线观看| 日韩av一区二区三区久久| 免费直接观看的麻豆黄色| 男生日女生逼的视频| 国产精品视频白浆免费网站| 亚洲国产日韩欧美高清片vr| 精品熟女后入一区二区三区| 欧美黑人天天干夜夜操| 国产1区2区在线视频| 大肉大捧一进一出免费视频网址 | 亚洲精久久久久久久久久久久久| 免费观看日本黄页网站| 欧美最猛黑人xxxx黑人猛交文 | 动漫av纯肉免费在线观看| 久久精品国产亚洲AV牛牛影视| 91精品国产自产在线大长腿| 人人咪咪一区二区三区| 适合黄黑皮的显白发色| 国内精品视频久久久久| 成人福利电影免费网址| 久久草大香蕉在线视频| 亚洲国产日韩欧美高清片vr| 久久亚洲日本精品视频| 999在线精品视频观看| 日韩欧美亚洲一区第一| 99久久精品免费看蜜桃的推荐词| 男生日女生逼的视频| 国产高清免费在线视频| 丰满雪白人妻人爽16av精品| 在线精品亚洲区一区二区| 色婷婷亚洲久久97成人| 风间由美亚洲一区二区三区| 激情综合网激情俺她去| 一区二区三区精品在线免费视频| 黄色性网站免费观看| 日本免费播放一区二区三区 | 天天干天天操天天日天天射| 天天日天天看天天摸| 黄色中文字幕在线观看| 可以直接在线观看的一区 | 日本a爱视频二区三区| 亚洲精品少妇久久久久久| 部长侵犯人妻一区二区三区| 999久久久无码精品免费看片| 国产av一区二区三区天堂| 自拍第一页免费视频| 精品成人午夜免费看| 青青草精品视频在线免费观看| 俄罗斯第一次处破女| 天天透天天插天天通| 成人午夜伦理在线观看| 91精品1080部在线播放| 精品国产日韩一区三区| 91福利精品一区二区| 欧美久久久久亚洲综合| 天天操天天色天天天| 亚州 欧美日韩人妻熟女| 女人被男人阳具抽插的呻吟视频| 88888欧美精品久久久| av中文字幕在线播放| 丰满雪白人妻人爽16av精品| 午夜啪啪啪免费视频网站| 在线高清视频你懂得| 干风骚美女av在线| 亚洲精品少妇蜜桃久久久| 自拍分享国产亚洲欧美| 国产黄色大片在线免费观看| 偷拍自拍 中文字幕| 国产成人a一区二区| 隔壁放荡人妻bd完整版| 欧美成人免费观看黄片| 亚洲精品国偷自产久色| 三级经典三级日本三级欧美 | 91高清免费观看在线| 欧美午夜不卡一区二区三区| 日韩破处精品在线观看| ai给视频自动加字幕| 丝袜av在线丝袜av天堂国产 | 欧美黑人性色黄在线视频| 午夜精品不卡视频在线观看| 偷拍自拍视频图片免费| 久操视频精品在线观看| 亚洲自拍偷拍清纯唯美| 午夜国产福利视频一区二区| 色就色欧美亚洲αv| 男人的天堂av最新| 神乃麻美三级在线观看视频| 亚洲天堂欧美中文字幕| 色婷婷亚洲久久97成人| 福利视频国产在线在线观看| 亚洲精品综合视频自拍| 亚洲一区二区综合网| Av资源站中文字幕| 亚洲av性色在线观看黄色| 三级三级三级日本99| 视频在线观看免费99| 中文字幕 日韩在线播放| 欧美一区视频不卡高清| 亚洲精品成人原创视频| 欧美图色 亚洲图色| 国内人人人妻狠狠狠操操| 亚洲熟妇av一区二区蜜桃第1集| 大肉大捧一进一出免费视频网址| 色淫骚色色色色色色美女| 午夜精品福利一区二区三区p| 日日夜夜狠狠干干亚洲| 丝袜制服 亚洲 国产 91| 久草免费资源视频在线观看| 青青青青青青青青草青青| 中文字幕一区三区二区国产黄色| 国产又粗又长又硬又猛又黄的视频| 亚洲人成亚洲人成在线观看com| 欧美大长腿美女抽插网站| 国产精品午夜在线观看| 欧美熟妇亚洲中文不卡少妇| 久草免费资源视频在线观看| 久草免费资源视频在线观看| 日韩精品高清免费视频| 久久人人爽人人爽人人亚洲| 午夜精品久久久久久99| 91高清免费观看在线| 欧美一区二区三区乱轮| 国产美女视频在线播放| 干 白虎 少妇 嫩 逼 视频| 国产欧美日韩经典一区| 久久精品国产亚洲av视瓶| 婷婷亚洲综合在线五月天| 97精品国产高清在线| 手机视频在线观看99精品视频| 精品人人妻人人澡人人爽| 美国黄色aa特黄色视拼| 国产传媒网址在线观看| 一区二区中文字幕18| 人人妻在线视频97| 深夜亚洲精品免费福利你懂的| 老鸭窝在线观看免费观看高清版| 色婷婷亚洲久久97成人 | 亚洲欧美在线色图动态图| 成人a毛片久久免费播放| 国产一级二级三级亚洲| 国产精品爽黄69天堂ai蜜乳| 国产免费av不卡免费| 亚洲国产精品成人久久动漫| 免费在线国产观看av| 在线观看高清日韩av| 日韩国产亚洲在线视频| 99热6在线播放免费| www国产亚洲天堂| 91麻豆精品国产乱码久久久久久| 久久草大香蕉在线视频| 国产成人午夜精品视频| 久久躁夜夜躁日日躁狠狠躁| ai给视频自动加字幕| 日本黄色操碌缬巴| 国产绿帽人妻精品系列| 欧洲野外激情性视频| 久久精品国产二区AV无码 | 欧美熟妇搡bbbb水蜜桃| av蜜桃网在线观看| 亚洲国产aⅴ成人精品无吗| 青青草青青草成人免费公开| 亚洲人成小说网站色在线| 偷拍自拍 中文字幕| 最新天堂一区二区三区| 成人麻豆免费视频精品区| 五月天免费在线观看| 亚洲国产精品日日夜夜| 欧美福利视频一二三| 在线播放国产免费av| 亚洲综合另类小说色区色噜噜,| 偷窥中国丰满多毛老熟女| 91久色porny视频在线| 亚洲免费国产在线日韩| 黄色免费2b网页18岁有声音| 日韩av卡一卡二卡三| 日韩不伦高清一区二区三区| 亚洲日本一区二区嫩草| 精品人人妻人人澡人人爽| 2018免费天天干夜夜操| 蜜桃一区二区17c| 日韩av免费福利在线观看| 91久久精品视频91| 亚洲美女乱1区2区3区| 麻豆精品午夜福利在线| 精品熟女后入一区二区三区| 大香蕉人妻少妇av| 天天透天天插天天通| 办公室被吃奶好爽在线观看视频 | 日日天天干夜夜夜操狠狠干| 国产国语露脸在线视频播放| 国产剧情星空无限传媒 | 五月婷婷丁香花激情网| 国产精品欧美日韩久久久免费观看| 神乃麻美三级在线观看视频| 欧美丝袜熟女日韩亚洲| 国产剧情星空无限传媒| 国产av综合av国产精品| av网站在线免费浏览| 美女诱惑福利在线视频| 人妻a∨在线中文字幕| 日韩最新视频在线播放| 久草视频免费在线视频观看| 中文字幕永久在线一区二区| 偷窥老熟女久久久av| 久久精品国产亚洲a| 91表用白丝脚帮我脚交| 91国内精品视频在线| 精品国产日韩一区三区| 少妇人妻不满足中文字幕| 在线中文字幕综合一区| 亚洲 网友 在线 观看| 精品欧美一亚洲精品午夜| 亚洲中文字幕在线观看黑人| 午夜福利啪啪视频免费看| 中文字幕永久在线一区二区| 四川操bb操bb操b| 三级黄色亚洲成人av| 亚洲 欧美在线视频| 1717精品视频在线观看| 日本电影高清一区二区| 五月天免费在线观看| 久久精品亚洲国产| 欧美,日本中文高清视频| 日韩加勒比东京热二区 | www国产精品久久久久久| 操白嫩人妻少妇真爽视频| 91在线免费观看成人| lisaann在线观看| 久久久国产视频91| 97视频人人人人人性| 欧美丝袜熟女日韩亚洲| 在线看片1024你懂得| 欧美综合自拍亚洲综合图区逼欠插 | 亚洲国产中文字幕在线视频| 嗯~啊~好舒服在线观看| 青青操在线视频精品| 国产高清在线免费视频| 亚洲欧美动漫卡通 另类| 小少妇被大鸡巴操手机在播放| 国产一区精品在线观看免费| 人妻熟女一区二区aⅴ佐佐木明希 五月婷婷丁香花激情网 | fc2精品成人免费观看| 午夜偷拍福利小视频| 在线91精品亚洲网站精品成人| 91在线免费观看成人| 91 chinese 在线播放| 成人教育 在线学习| 夜夜骑加勒比天天操| 午夜精选视频在线观看| 国产精品亚洲综合视频| 蜜桃成人av电影网站| 起碰97视频在线播放| 美女诱惑福利在线视频| 九九热在线这里只有精品| 日本熟妇wxw日本人妻| 亚洲免费观看高清在线| 国产美女主播丝袜高潮白浆| 国产一级免费黄色录像片| 日本不卡少妇视频在线观看| 日日躁夜夜躁狠狠久久av| 视频在线观看免费99| 天天扣天天日天天摸| 亚洲国产久久久久久| 日韩性爱视频无码三级片| 97精品在线观看视频| 亚洲中文有码一区二区| 国产又粗又长又硬又猛又黄的视频 | 日日天天干夜夜夜操狠狠干| 天天日天天透天天操| 国产欧美日韩经典一区 | 亚洲欧美伦理一区二区| 啪啪啪免费亚洲精品网站| 国产极品尤物粉嫩泬在线观看| 亚洲av欧美av在线播放| 午夜三级影片免费播放| 91人妻人人做人人爽九色全集| 日本熟妇wxw日本人妻| 2012在线国语中文字幕| 在线播放 国产 真实| 老司机免费福利视频网| 最新天堂一区二区三区| 国产av综合av国产精品| 精品人妻欧美一区二区| 天天日……天天操……天天喷| 操日本裸体美女骚逼| 17c在线观看视频国产aa| 97色 国产精品综合| 国产日韩欧美精品久久久一区二区| 操日本裸体美女骚逼| 久久精品国产二区AV无码| 国产成人啪精品视频免费| 五月色婷婷在线视频| 亚洲国产精品成人久久动漫| 色视频免费在线观看视频| 91精品人妻中文字幕| 神乃麻美三级在线观看视频| 在线免费看亚洲精品少妇69式| 午夜剧场欧美一区二区| 免费观看视频一区,二区,三区| 三级经典三级日本三级欧美| 亚洲国产日韩欧美高清片vr| 青草视频在在线成人av| 一区二区三区欧美日韩电影| 精品熟女后入一区二区三区| 亚洲欧洲美洲无码在线| 91福利精品一区二区| 日韩精品高清免费视频| 国产成人一区二区三区久| 可以免费看啪啪啪的网站| 欧美美女视频在线免费看| 国产美女视频在线播放| 国产成人女人毛毛片视频| 人操美女操美女操美女| 久操视频精品在线观看| 日本黄页网络站免费| 人人妻人人妻人人妻人人妻人人人| 9l九色自拍蝌蚪9l视频| 日本很黄很黄的动态视频| 日本公与妇电影三级| 中文一区二区三区精品视频| 五月天免费在线观看| 登录国产黄色一区二区三区| 亚洲精品乱码久久观看网| 男人天堂在线免费观看| 色吊最新在线视频免费观看| 女抽插流出张开淫水视频| 日韩最新视频在线播放| 天天干夜夜操日日操| 亚洲综合欧美熟一区| 在线视频一视频二视频三| 五月色婷婷在线视频| 手机能看的黄色av| 女人被男人阳具抽插的呻吟视频| 天天操天天摸天天摸| 超碰超碰超碰超碰超碰情侣| 午夜剧场欧美一区二区| 国产91精品久久久久高潮| 老师让我插进去69AV| 啪啪男女日韩网站蜜桃| 98视频在线免费观看| 亚洲天堂网久久av| 男生日女生逼的视频| 部长侵犯人妻一区二区三区| 五月天丁香婷久久爱| av影视在线免费观看| 1717精品视频在线观看| 欧美日韩aaaaa级黄片视频| 二亚洲女同性同志熟女| 日韩精品在线播放视频成年人| suv精品一区二区6| 女人张开双腿让男人捅视频| 国产美女高清免费av| 日韩美女精品一在线观看| 欧美一区二区蜜桃视频| 国产传媒中文字幕在线| 干 白虎 少妇 嫩 逼 视频| 都市激情校园春色av| caoporn香蕉在线观看| 亚洲欧美在线色图动态图| 天天色天天干天天操| 人人妻人人妻人人妻精品| 98久久久久98久久久久| 思思91精品国产综合在线| av一区二区三区蜜臀| 亚洲无码成人福利视频| 熟女免费在线观看视频 | 亚洲精久久久久久久久久久久久| 国产视频在线精品视频| 91国内精品视频在线| 免费人妻av一区二区| 少妇的激情夜夜爽爽爽爽爽| 青青青青青青青青青青青青青草| 91精品人妻一区二区三区水蜜桃 | 国产伦精品三区精品国偷自产在线| 欧美三级一区二区三区四区五区| 17c在线观看视频国产aa| 三级经典三级日本三级欧美| 99久久香蕉国产线看| 99精品热视频在线观看| 日本中文字幕人妻一区二区| www久久久久久久99| 男人的天堂av最新| 日韩一区二区视频在线看 | 一区二区三区欧美日韩电影| 不卡精品国产_亚洲人成在线| 嗯~啊~好舒服在线观看| 久久久999精品在线| 中文字幕av一区二区三区高| 日本视频免费大片| 午夜性色福利视频自拍偷拍| 动漫av纯肉免费在线观看| 亚洲欧洲另类小说图片| 高清日本wwwcom| 91精品人妻中文字幕| 在线视频 国产 日韩 欧美| 99国国视频在线播放| 丝袜美腿国产在线观看| 超碰超碰超碰超碰超碰超| 99热6在线播放免费| 免费熟女精品一区二区三区| 欧美福利视频一二三| 国产午夜在线免费视频| 欧美日韩国产综合不卡| 91人妻精品一区二区三区在线| 欧洲野外激情性视频| av影视在线免费观看| 亚洲国产精品美女久久久av| www久久久久久久99| 97色 国产精品综合| 男女精品久久久久久久久久| 亚洲免费淫网站在线观看 | 日本伦理在线免费视频| 亚洲精品在线观看高清资源| 国产日韩欧美精品久久久一区二区| 欧美 激情 另类 自拍| 欧美黑人性色黄在线视频| 在线高清视频你懂得| 91人妻精品动漫一区二区三区| 天天天天拍天天天天天天| 大鸡巴爆操美女骚逼| 日韩精品高清免费视频| mm在线视频观看免费观看| 大奶子美女免费操逼视频| 久久精品国产亚洲av视瓶| 浪荡人妻共32部分黑人| 日韩破处精品在线观看| 亚洲综合另类小说色区色噜噜,| 夭天曰天天躁东京热天天摸| 婷婷色综合久久五月天| 精品无人区高清免费看| 免费在线国产观看av| 免费在线观看网址你懂的| 日韩精品一区二区三区中文精 | 十八禁视频一区二区三区四区 | 涩涩网站在线观看视频| 超碰人妻中文字幕在线| 可以在线观看的黄色网页| 天天操天天日天天啪| 久re这里只有精品视频| 亚洲一区二区成人综合| 99久久999久久久hd| 亚洲综合久久综合网| 免费av区在线观看| 成av一区二区三区久久| 欧美亚洲国产校园春色 | 99热这里只有的精品666| av一区二区三区蜜臀| 亚洲国产精品成人久久动漫| 色片网站在线看亚洲精品| 天天大香蕉一区二区三区| 午夜福利啪啪视频免费看| 成全视频免费观看在线下载| 98视频在线免费观看| 在线看片1024你懂得| 天天色天天情天天透| 国产免费一级高清淫日本片| 在线观看免费a亚洲| 麻豆精品午夜福利在线| 日本老熟妇色狠狠一区| 中国福利在线黄色片| 国产成人女人毛毛片视频| 久操视频精品在线观看| 国产精品自拍亚洲春色| 99精品视频中文字幕| 偷窥老熟女久久久av| 男人的天堂av最新| 97人妻碰碰碰久久久| 人妻熟女免费一区二区萩原| 日本vvvv操操操| 亚洲精品综合视频自拍| 国自产拍偷拍福利精品免费观看| 免费直接观看的麻豆黄色| 97久久精品熟女超碰| 欧美激情性4一级完整版| 91久久精一区二区三区大全| 三上悠亚和黑人665番号| 亚洲天堂都市激情av| 午夜在线看1000集| 大肉大捧一进一出免费视频网址| av一区二区二十四小时| 日韩美女精品一在线观看| 东京热av在线播放| 亚洲成年人三级电影| 欧美一区二区蜜桃视频| 亚洲精品专区一区二区| 免费成视频人免费91| 欧美色一区二区三区在线观看| 一区二区中文字幕18| 亚洲自偷自拍另类18p| 日本公与妇电影三级| 99,九九,久久精品| 163黄页网在线观看,| 高清日本欧美亚洲视频| 97偷偷碰在线视频| 九九热在线这里只有精品| 都市激情校园春色av| 久久久999精品在线| 天天色天天情天天透| 亚洲va欧美va人人爽午夜| 久久三级片一区二区毛片| 日韩三级中文字幕熟女| 久久亚洲伊人99精品影院| 亚洲欧美在线色图动态图| 精精品久久久久久琪琪| 欧美视频精品免费观看| 18人妻人碰人人做人人爽| 五月天开心激情深爱激情| 日本一区二区不卡电影| 五月婷婷综合大香蕉五月天| 中文字幕亚洲日韩第一页| 一区二区三区在线 日韩| 欧美,偷拍,另类,综合| 久久精品国产亚洲a| 欧美av色香蕉一区二区小说| 在线人妻视频网站免费| 日韩av一区二区三区久久| 狠狠操 在线视频 轻轻草| 1777中文字幕字幕在线播放| 狠狠操 在线视频 轻轻草| 天天日天天透天天操| 黄色中文字幕在线观看| 黄色成人激情福利在线影院| 91人妻人人做人人爽九色全集|