黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術(shù)文章
文章詳情頁

Spring Boot整合MybatisPlus逆向工程(MySQL/PostgreSQL)

瀏覽:2日期:2023-07-03 17:34:45
目錄一、創(chuàng)建表二、創(chuàng)建Spring Boot工程三、引入逆向工程依賴四、代碼中完成逆向工程配置五、測試

MyBatis-Plus是MyBatis的增強工具,Generator通過MyBatis-Plus快速生成Entity、Mapper、Mapper XML、Service、Controller等模塊的代碼,方便快捷。

一、創(chuàng)建表

我們先創(chuàng)建數(shù)據(jù)庫表:sys_log、sys_user

CREATE TABLE `sys_log` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `username` varchar(50) DEFAULT NULL COMMENT ’用戶名’, `operation` varchar(50) DEFAULT NULL COMMENT ’用戶操作’, `method` varchar(200) DEFAULT NULL COMMENT ’請求方法’, `params` varchar(5000) DEFAULT NULL COMMENT ’請求參數(shù)’, `time` bigint(20) NOT NULL COMMENT ’執(zhí)行時長(毫秒)’, `ip` varchar(64) DEFAULT NULL COMMENT ’IP地址’, `create_date` datetime DEFAULT NULL COMMENT ’創(chuàng)建時間’, PRIMARY KEY (`id`) USING BTREE) ENGINE=InnoDB AUTO_INCREMENT=66720 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;CREATE TABLE `sys_user` ( `id` varchar(255) NOT NULL, `company_id` varchar(64) NOT NULL COMMENT ’歸屬公司’, `office_id` varchar(64) NOT NULL COMMENT ’歸屬部門’, `login_name` varchar(30) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT ’唯一登錄名’, `password` varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT ’密碼’, `no` varchar(100) DEFAULT NULL COMMENT ’工號’, `name` varchar(100) NOT NULL COMMENT ’姓名’, `email` varchar(200) DEFAULT NULL COMMENT ’郵箱’, `phone` varchar(200) DEFAULT NULL COMMENT ’電話’, `mobile` varchar(200) DEFAULT NULL COMMENT ’手機’, `user_type` char(1) DEFAULT NULL COMMENT ’用戶類型’, `photo` varchar(1000) DEFAULT NULL COMMENT ’用戶頭像’, `login_ip` varchar(100) DEFAULT NULL COMMENT ’最后登陸IP’, `login_date` datetime DEFAULT NULL COMMENT ’最后登陸時間’, `login_flag` varchar(64) DEFAULT NULL COMMENT ’是否可登錄’, `create_by` varchar(64) NOT NULL COMMENT ’創(chuàng)建者’, `create_time` datetime NOT NULL COMMENT ’創(chuàng)建時間’, `update_by` varchar(64) NOT NULL COMMENT ’更新者’, `update_date` datetime NOT NULL COMMENT ’更新時間’, `remarks` varchar(255) DEFAULT NULL COMMENT ’備注信息’, `del_flag` char(1) NOT NULL DEFAULT ’0’ COMMENT ’刪除標(biāo)記’, `device_alias` varchar(255) DEFAULT NULL, `device_type` varchar(255) DEFAULT NULL, `token` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE, KEY `sys_user_office_id` (`office_id`) USING BTREE, KEY `sys_user_login_name` (`login_name`) USING BTREE, KEY `sys_user_company_id` (`company_id`) USING BTREE, KEY `sys_user_update_date` (`update_date`) USING BTREE, KEY `sys_user_del_flag` (`del_flag`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT=’用戶表’;二、創(chuàng)建Spring Boot工程

創(chuàng)建Spring Boot項目,網(wǎng)上很多教程,這里不再贅述。

三、引入逆向工程依賴

MyBatis-Plus本來是集成了代碼生成器的,但是在3.0.3以后的版本移除了對應(yīng)的依賴,需要我們手動添加相關(guān)的依賴:

<!--就不需要手動引入mybatis --><dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>3.3.2</version></dependency><!--mybatisplus 代碼生成器--><dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.2</version></dependency>

添加模板引擎:

<!-- 模板引擎 --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.1.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.1.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.1.5.RELEASE</version></dependency><dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity</artifactId> <version>1.7</version></dependency>

全部依賴如下:

<?xml version='1.0' encoding='UTF-8'?><project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <groupId>com.gaspipn.app</groupId> <artifactId>Generator</artifactId> <version>1.0-SNAPSHOT</version> <!--<name>GeneratorCommon</name> <description>GeneratorCommon</description>--> <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.0.RELEASE</version><relativePath/> <!-- lookup parent from repository --> </parent> <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version><mybatisplus.spring.boot.version>1.0.5</mybatisplus.spring.boot.version><mybatisplus.version>2.2.0</mybatisplus.version><mysql.version>8.0.11</mysql.version><mssql.version>4.0</mssql.version><oracle.version>11.2.0.3</oracle.version><druid.version>1.1.10</druid.version><quartz.version>2.3.0</quartz.version><commons.lang.version>2.6</commons.lang.version><commons.fileupload.version>1.2.2</commons.fileupload.version><commons.io.version>2.5</commons.io.version><commons.codec.version>1.10</commons.codec.version><commons.configuration.version>1.10</commons.configuration.version><shiro.version>1.4.0</shiro.version><jwt.version>0.7.0</jwt.version><kaptcha.version>0.0.9</kaptcha.version><qiniu.version>[7.2.0, 7.2.99]</qiniu.version><aliyun.oss.version>2.8.3</aliyun.oss.version><qcloud.cos.version>4.4</qcloud.cos.version><swagger.version>2.7.0</swagger.version><joda.time.version>2.9.9</joda.time.version><fastjson.version>1.2.47</fastjson.version><hutool.version>4.1.1</hutool.version><!--wagon plugin 配置--><service-path>/work/renren</service-path><pack-name>${project.artifactId}-${project.version}.jar</pack-name><remote-addr>localhost:22</remote-addr><remote-username>root</remote-username><remote-passwd>123456</remote-passwd> </properties> <dependencies><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>2.1.14.RELEASE</version></dependency><!-- 模板引擎 --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.1.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.1.5.RELEASE</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.1.5.RELEASE</version></dependency><dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity</artifactId> <version>1.7</version></dependency><!--就不需要手動引入mybatis --><dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>3.3.2</version></dependency><!--mybatisplus 代碼生成器--><dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.2</version></dependency><!-- mysql依賴 --><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.45</version></dependency><!-- 連接池和fastjson --><dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.31</version></dependency><dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.51</version></dependency><!-- lombok模型 --><dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.20</version></dependency><!--slf4j--><dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.6.1</version></dependency><!-- swagger --><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.10.5</version></dependency><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.10.5</version></dependency><dependency> <groupId>io.swagger</groupId> <artifactId>swagger-annotations</artifactId> <version>1.5.24</version></dependency><dependency> <groupId>io.swagger</groupId> <artifactId>swagger-models</artifactId> <version>1.5.24</version></dependency><!--postgresql數(shù)據(jù)庫--><dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId></dependency> </dependencies></project>四、代碼中完成逆向工程配置

代碼里面的注釋已經(jīng)很全面,就不再進(jìn)行代碼的詳細(xì)解析了,如下:

package com.johan.generator;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.generator.AutoGenerator;import com.baomidou.mybatisplus.generator.InjectionConfig;import com.baomidou.mybatisplus.generator.config.*;import com.baomidou.mybatisplus.generator.config.converts.MySqlTypeConvert;import com.baomidou.mybatisplus.generator.config.po.TableInfo;import com.baomidou.mybatisplus.generator.config.rules.DbColumnType;import com.baomidou.mybatisplus.generator.config.rules.IColumnType;import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;import java.io.File;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * @author JohanChan * @ProjectName Generator * @Description MySQL/PostGre 生成演示 * @time 2021/7/7 16:49 */public class GeneratorCommon { /** * <p> Mr.Chen * MySQL/PostGre 生成演示 * </p> */ //獲取 項目絕對路徑 private static String canonicalPath = ''; public static void main(String[] args) {//獲取項目路徑try { canonicalPath = new File('').getCanonicalPath();} catch (Exception e) { e.printStackTrace();}System.out.println('canonicalPath=' + canonicalPath);//String filePath = canonicalPath+'mybatisPlusGersrcmain';String filePath = canonicalPath + 'srcmain';AutoGenerator mpg = new AutoGenerator();// 選擇 freemarker 引擎,默認(rèn) Veloctiy//mpg.setTemplateEngine(new FreemarkerTemplateEngine());// 全局配置GlobalConfig gc = new GlobalConfig();gc.setAuthor('Johan');//作者名gc.setSwagger2(true); //實體屬性 Swagger2 注解gc.setOutputDir(filePath + 'java');//代碼生成路徑gc.setFileOverride(true);// 是否覆蓋同名文件,默認(rèn)是falsegc.setActiveRecord(true);// 不需要ActiveRecord特性的請改為falsegc.setEnableCache(false);// XML 二級緩存gc.setBaseResultMap(true);// XML ResultMapgc.setBaseColumnList(false);// XML columListgc.setOpen(false);//生成后打開文件夾/* 自定義文件命名,注意 %s 會自動填充表實體屬性! */gc.setControllerName('%sController');gc.setServiceName('%sService');gc.setServiceImplName('%sServiceImpl');gc.setMapperName('%sMapper');gc.setXmlName('%sMapper');mpg.setGlobalConfig(gc);// 數(shù)據(jù)源配置DataSourceConfig dsc = new DataSourceConfig();//指定數(shù)據(jù)庫類型,DbType中有對應(yīng)的枚舉類型,pom文件中要添加對應(yīng)的數(shù)據(jù)庫引用dsc.setDbType(DbType.MYSQL);//MySQL數(shù)據(jù)庫//dsc.setDbType(DbType.POSTGRE_SQL);//PostGre數(shù)據(jù)庫dsc.setTypeConvert(new MySqlTypeConvert() { // 自定義數(shù)據(jù)庫表字段類型轉(zhuǎn)換【可選】 @Override public IColumnType processTypeConvert(GlobalConfig gc, String fieldType) {System.out.println('轉(zhuǎn)換類型:' + fieldType);// 注意!!processTypeConvert 存在默認(rèn)類型轉(zhuǎn)換,如果不是你要的效果請自定義返回、非如下直接返回。//默認(rèn)會把日期類型 轉(zhuǎn)為LocalDateTime ,在查詢的時候會報錯,這里改為DateString t = fieldType.toLowerCase();if (t.contains('date') || t.contains('time') || t.contains('year')) { return DbColumnType.DATE;} else { return super.processTypeConvert(gc, fieldType);} }});//數(shù)據(jù)庫連接配置dsc.setDriverName('com.mysql.jdbc.Driver');// dsc.setDriverName('com.mysql.cj.jdbc.Driver'); //mysql8.0使用dsc.setUsername('root');dsc.setPassword('123456');dsc.setUrl('jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8');//PostGre數(shù)據(jù)庫連接/*dsc.setDriverName('org.postgresql.Driver');dsc.setUsername('postgres');dsc.setPassword('123456');dsc.setUrl('jdbc:postgresql://127.0.0.1:5432/sjz_db?characterEncoding=utf8');*/mpg.setDataSource(dsc);// 策略配置StrategyConfig strategy = new StrategyConfig();//strategy.setCapitalMode(true);// 全局大寫命名 ORACLE 注意//strategy.setTablePrefix('tb_');// 此處可以修改為您的表前綴strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略strategy.setColumnNaming(NamingStrategy.underline_to_camel);//采用駝峰映射strategy.setEntityLombokModel(true);//【實體】是否為lombok模型(默認(rèn) false)strategy.setInclude(new String[]{'node','zy'}); // 需要生成的表.如果需要生成所有的, 注釋掉此行就可以// strategy.setExclude(new String[]{'test'}); // 排除生成的表// 自定義實體父類// strategy.setSuperEntityClass('com.baomidou.demo.TestEntity');// 自定義實體,公共字段// strategy.setSuperEntityColumns(new String[] { 'test_id', 'age' });// 自定義 mapper 父類// strategy.setSuperMapperClass('com.baomidou.demo.TestMapper');// 自定義 service 父類// strategy.setSuperServiceClass('com.baomidou.demo.TestService');// 自定義 service 實現(xiàn)類父類// strategy.setSuperServiceImplClass('com.baomidou.demo.TestServiceImpl');// 自定義 controller 父類// strategy.setSuperControllerClass('com.baomidou.demo.TestController');// 【實體】是否生成字段常量(默認(rèn) false)// public static final String ID = 'test_id';// strategy.setEntityColumnConstant(true);// 【實體】是否為構(gòu)建者模型(默認(rèn) false)// public User setName(String name) {this.name = name; return this;}// strategy.setEntityBuilderModel(true);mpg.setStrategy(strategy);// 包配置PackageConfig pc = new PackageConfig();pc.setParent('com.johan.generator.manage.modules');// 自定義包路徑pc.setController('controller');// 這里是控制器包名,默認(rèn) webpc.setMapper('mapper');// 設(shè)置Mapper包名,默認(rèn)mapperpc.setService('service');// 設(shè)置Service包名,默認(rèn)servicepc.setEntity('model.entity');// 設(shè)置Entity包名,默認(rèn)entity,繼承的父類 已序列化pc.setXml('mapper.xml');// 設(shè)置Mapper XML包名,默認(rèn)mapper.xmlmpg.setPackageInfo(pc);// 注入自定義配置,可以在 VM 中使用 cfg.abc 設(shè)置的值InjectionConfig cfg = new InjectionConfig() { @Override public void initMap() {Map<String, Object> map = new HashMap<String, Object>();map.put('abc', this.getConfig().getGlobalConfig().getAuthor() + '-mp');this.setMap(map); }};// 調(diào)整 xml 生成目錄演示List<FileOutConfig> focList = new ArrayList<>();focList.add(new FileOutConfig('/templates/mapper.xml.vm') { @Override public String outputFile(TableInfo tableInfo) {return filePath + 'resourcesmapperxml' + tableInfo.getEntityName() + 'Mapper.xml'; }});cfg.setFileOutConfigList(focList);mpg.setCfg(cfg);// 注入自定義配置,可以在 VM 中使用 cfg.abc 【可無】//InjectionConfig cfg = new InjectionConfig() {// @Override// public void initMap() {//Map<String, Object> map = new HashMap<String, Object>();//map.put('abc', this.getConfig().getGlobalConfig().getAuthor() + '-mp');//this.setMap(map);// }//};////// 自定義 xxList.jsp 生成//List<FileOutConfig> focList = new ArrayList<>();//focList.add(new FileOutConfig('/template/list.jsp.vm') {// @Override// public String outputFile(TableInfo tableInfo) {//// 自定義輸入文件名稱//return 'D://my_' + tableInfo.getEntityName() + '.jsp';// }//});//cfg.setFileOutConfigList(focList);//mpg.setCfg(cfg);////// 調(diào)整 xml 生成目錄演示//focList.add(new FileOutConfig('/templates/mapper.xml.vm') {// @Override// public String outputFile(TableInfo tableInfo) {//return '/develop/code/xml/' + tableInfo.getEntityName() + '.xml';// }//});//cfg.setFileOutConfigList(focList);//mpg.setCfg(cfg);////// 關(guān)閉默認(rèn) xml 生成,調(diào)整生成 至 根目錄//TemplateConfig tc = new TemplateConfig();//tc.setXml(null);//mpg.setTemplate(tc);// 自定義模板配置,可以 copy 源碼 mybatis-plus/src/main/resources/templates 下面內(nèi)容修改,// 放置自己項目的 src/main/resources/templates 目錄下, 默認(rèn)名稱一下可以不配置,也可以自定義模板名稱// TemplateConfig tc = new TemplateConfig();// tc.setController('...');// tc.setEntity('...');// tc.setMapper('...');// tc.setXml('...');// tc.setService('...');// tc.setServiceImpl('...');// 如上任何一個模塊如果設(shè)置 空 OR Null 將不生成該模塊。// mpg.setTemplate(tc);// 執(zhí)行生成mpg.execute(); }}五、測試

直接啟動系統(tǒng)運行,運行結(jié)束后發(fā)現(xiàn)相關(guān)代碼已經(jīng)生成,如圖:

Spring Boot整合MybatisPlus逆向工程(MySQL/PostgreSQL)

到此這篇關(guān)于Spring Boot整合MybatisPlus逆向工程(MySQL/PostgreSQL)的文章就介紹到這了,更多相關(guān)Spring Boot MybatisPlus逆向工程 內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 成人网页在线观看 | 久久好在线视频 | 中文字幕123 | 国产午夜精品一区二区三区 | 中国老妇xxxx性开放 | 国产成人在线网站 | 日本a级老少配 | 国产成人综合久久精品免费 | 国精产品一二三区传媒公司 | 国产精品久久久乱弄 | 日韩不卡在线观看 | 欧美色综合色 | 天天插伊人| 亚洲欧美高清一区二区三区 | 欧美成人午夜剧场 | 天天干人人 | 国产日韩欧美亚洲精品中字 | 欧美二区三区91 | 18禁真人抽搐一进一出在线 | 1000部精品久久久久久久久 | 97精品人人a片免费看 | 麻豆传媒av在线播放 | 欧美视频在线播放 | 国产一区二区三区四区hd | 午夜爽爽影院 | 欧美色欧美亚洲高清在线视频 | аⅴ资源中文在线天堂 | 国产精品奇米一区二区三区小说 | 欧美高清性xxxxhd | 狠狠地日 | 夜色综合网| 亚洲一区欧美二区 | 亚洲ww中文在线 | 久草在线播放视频 | 欧美精品性视频 | 欧美一级视频在线观看 | www.四虎影视 | 波多野结衣乳巨码无在线观看 | 日b影院 | 毛色毛片免费观看 | 久久久久久久黄色 | 乱人伦精品视频在线观看 | 欧美 日本 国产 | 青青青爽久久午夜综合久久午夜 | 99热网址| 精品视频在线观看 | 极品主播超大尺度福利视频在线 | 91香蕉视频在线看 | 天堂网av在线 | av小四郎最新地址入口 | 一本色道久久综合狠狠躁篇的优点 | 亚洲三区在线观看内射后入 | 日本va欧美va欧美va精品 | 国产一二三精品 | 日本高清无卡码一区二区久久 | 国产无吗一区二区三区在线欢 | 欧美国产乱视频 | 精品久久久久久一区二区 | www.久久艹| 国产成人一级 | 欧美日韩一区二区在线播放 | 亚洲国产成人无码网站大全 | 影音先锋啪啪 | 成人免费直播 | 国产免费又爽又色又粗视频 | 国产精品99久久久久久人 | 日韩 欧美 亚洲 国产 | 精品午夜一区二区三区在线观看 | 欧美髙清性xxxxhdvid | 噜噜噜视频在线观看 | 久草热在线视频 | 少妇精品视频 | 久久99精品久久久久久久青青日本 | 精品自拍第一页 | 色人人| 亚洲乱亚洲乱妇无码 | 筱田优全部av免费观看 | 一本色道久久综合狠狠躁篇的优点 | 青青成人 | 天天热天天干 | 乱日视频 | 亚洲精品免费av | 亚洲国产成人精品无码区在线秒播 | 午夜免费高清视频 | 天天做天天摸天天爽天天爱 | 无码国产69精品久久久久网站 | 99久久久无码国产精品不卡 | 天天综合天天添夜夜添狠狠添 | 天天射天天射 | a天堂资源 | 男女爽爽无遮挡午夜视频 | 欧洲黄视频 | 久久噜噜噜精品国产亚洲综合 | 色综合久久精品亚洲国产 | 波多野结衣免费在线视频 | 国产精品第一页在线观看 | 国产女同玩人妖 | 亚洲中文字幕久久久一区 | 爱爱视频网站 | 欧美理伦 | 亚洲乱码国产乱码精品精不卡 | 色妞www精品免费视频 | 亚洲www久久久 | 成人影片麻豆国产影片免费观看 | 久久久久欧美 | 日本无遮挡大尺度床戏网站 | 久久精品日产第一区二区 | 波多野结衣美乳人妻hd电影欧美 | 三级毛片子 | 色琪琪久久草在线视频 | 亚洲一区二区三区四区的 | 91社区在线观看高清 | av在线播放器 | 成人国产午夜在线观看 | 做爰aa女r高潮 | 中文天堂av | 国产高清一区 | 91手机在线视频 | 精品久久久久久久国产性色av | av老司机在线播放 | 桃色视频m3u8 | 91尤物视频在线观看 | 色图综合网 | 亚洲精品在线免费观看视频 | 奇米影视第四色首页 | 欧亚日韩精品一区二区在线 | 黄色片成人 | 青青视频免费在线观看 | 57pao国产精品一区 | 免费性爱视频 | 粉嫩av渣男av蜜乳av | 国产黄色观看 | 8x福利精品第一导航 | 黄在线网站| 国产艹逼网站 | 国产精品久久久久久久免费大片 | 亚洲国产日韩av | 亚洲18在线看污www麻豆 | 四虎影裤| 男女男精品视频站 | 久草aⅴ | 超碰在线免费97 | 国产手机在线视频 | 51国偷自产一区二区三区的 | 巨爆乳无码视频在线观看 | 中文字幕日本一区二区 | 欧美xxxx黑人又粗又长精品 | 91香蕉国产 | 男人放进女人阳道动态图 | 狠狠色丁香婷婷久久综合五月 | 日韩三级一区二区三区 | 亚洲91精品 | 欧美熟妇另类久久久久久不卡 | 自拍欧美日韩 | 日韩中文一区二区三区 | 亚洲国产人午在线一二区 | 神马午夜dy888| 美女扒开尿口让男人桶 | 九一精品国产 | 国产精品一区二区av | 精品一区二区三区波多野结衣 | 天天看天天干 | 国产在线精品国自产拍影院同性 | 亚洲乱码日产精品bd在线观看 | 五月婷婷六月丁香综合 | 成熟丰满熟妇高潮xxxxx视频 | 国产嘿咻 | 无码一区二区三区视频 | 亚洲乱妇熟女爽到高潮的片 | 亚洲精品久久久久999中文字幕 | 婷色| 免费福利av| 午夜视频黄色 | 久草资源网 | 亚洲精品久久中文字幕 | 超清 忍不住的亲子伦中文字幕 | 91精品国产综合久久香蕉麻豆 | 天天天色综合a | 一久久久久 | 1级片在线观看 | 国产精品人妻一区二区三区四 | 波多av在线 | 精品欧美乱码久久久久久1区2区 | 五月天婷婷缴情五月免费观看 | 国产亚洲欧美一区 | 乱淫交换粗大多p | 高清人人天天夜夜曰狠狠狠狠 | 亚洲三区在线观看无套内射 | 精品国产一区二区三区四 | 伊人久久成人 | 69免费视频 | 强迫凌虐淫辱の牝奴在线观看 | 欧美视频一区 | 久久精品国产99国产精品澳门 | 91精品国产91久久久久 | 国产精品黄色大片 | 国产网站在线免费观看 | 大陆熟妇丰满多毛xxxx | 国产肥臀一区二区福利视频 | 亚洲最大成人综合网720p | 337p西西人体大胆瓣开下部 | 最近中文字幕mv | 天天影视亚洲 | 天天看片天天操 | 超薄肉色丝袜一二三 | 日韩精品一区二区三区中文在线 | 国产精品视频久久久 | 午夜黄色小视频 | 国产精品人人做人人爽 | 乱色熟女综合一区二区三区 | 国产午夜啪啪 | 麻豆视频一区二区 | 吃奶揉捏奶头高潮视频在线观看 | av中文字幕一区二区三区 | 国产精品天天狠天天看 | 国产伦理一区二区三区 | 国产精品嫩草影院入口日本一区二 | 国产传媒一区二区三区 | 狠狠干狠狠干 | 日韩欧美亚洲天堂 | 91在线高清视频 | 日韩精品在线观看视频 | 国产中文字二暮区 | 久久爱另类一区二区小说 | 狠狠色丁香久久婷婷综合_中 | 日本丰满白嫩大屁股ass | 国内少妇偷人精品视频免费 | 五月婷婷导航 | 美国成人在线 | 五月婷网站 | 免费看又黄又无码的网站 | 色婷婷综合久久久中文一区二区 | 成人av网站在线观看 | 美女视频黄的全免费视频网站 | 日韩福利在线观看 | 日韩免费精品视频 | 少妇精品久久久一区二区三区 | 久久精品噜噜噜成人av | 国产九色在线 | 91精品区 | 牲高潮99爽久久久久777 | 五月天激情四射 | 国产播放隔着超薄丝袜进入 | 亚洲区欧美区综合区自拍区 | 偷拍盗摄高潮叫床对白清晰 | 爱情岛论坛自拍 | 日本sm/羞辱/调教/捆绑视频 | 免费视频亚洲 | 高柳家动漫在线观看 | 羞羞答答国产xxdd亚洲精品 | 牛牛在线视频 | 乌克兰丰满少妇毛片 | 国产在线拍偷自揄拍视频 | 国产黄a三级三级三级看三级黑人 | 九一av | 久久国产成人午夜av影院武则天 | 香蕉视频在线观看免费 | 农村少妇一区二区三区蜜桃 | 水野朝阳av一区二区三区 | 一本到久久 | 日本成人在线视频网站 | 欧美3p激情一区二区三区猛视频 | 成人淫片免费视频95视频 | 亚洲日韩国产av无码无码精品 | 美女隐私黄www网站免费 | 看曰本女人大战黑人视频 | 国产日产精品久久快鸭的功能介绍 | 一本大道卡一卡二卡三乱码全集资源 | 欧美乱人伦人妻中文字幕 | 中午字幕无线码一区2020 | 男人扒女人添高潮视频 | 久草视频资源 | 搡老熟女老女人一区二区 | 日韩精品视频在线一区 | 97国产suv精品一区二区62 | 免费人成无码大片在线观看 | 国产真实偷伦视频 | 日韩少妇内射免费播放 | 欧美日韩一二三四 | 强开乳罩摸双乳吃奶羞羞www | 无码少妇精品一区二区免费动态 | 美女三级毛片 | 亚洲乱码国产乱码精品精在线网站 | 区二区欧美性插b在线视频网站 | 日韩精品91亚洲二区在线观看 | 熟女人妻aⅴ一区二区三区60路 | 无人码一区二区三区视频 | 波多野结衣国产在线 | 嫩草影院中文字幕 | 国精品产品区三区 | 精品国产一区二区三区av性色 | 国产亚洲美女精品久久久2020 | 91久久国产婷婷一区二区 | 手机在线看a | 免费在线不卡av | av黄色大片 | 爱弓凉在线视频一区二区 | 国内露脸中年夫妇交换 | 九七在线视频 | 亚洲乱码国产乱码 | 国产区一区二 | 免费三级大片 | 欧美少妇毛茸茸 | 巨胸喷奶水www久久久免费动漫 | 日韩精品视频免费在线观看 | 乱人伦中文视频在线观看 | 国产女人十八毛片 | 毛片国产精品 | 羞羞视频在线观看 | 国产情侣一区二区三区 | 免费看男女www网站入口在线 | 性生交生活大片1 | 无码国产69精品久久久久网站 | 97色在线观看免费视频 | 日韩欧美三级视频 | 五月天婷婷亚洲 | 色综合久久天天综合网 | 一级国产20岁美女毛片 | 老司机亚洲精品影院 | 成人免费av在线播放 | 天堂av网在线 | 大尺度做爰黄9996片视频 | 国产免费自拍 | 成人久久久久久久 | 亚洲国产一二三 | 日韩 高清 无码 人妻 | 国产农村乱对白刺激视频 | 国产区123| 久久亚洲综合色 | 看免费黄色大片 | 黑人精品xxx一区一二区 | 2021精品亚洲中文字幕 | 日韩一级片av | 精品国产一区二区三区久久久 | 无码精品视频一区二区三区 | 亚洲天堂视频网站 | www.成人| 亚洲欭美日韩颜射在线二 | wwwxxxx日本| 亚洲国产精品福利 | 免费观看黄色一级片 | 亚洲熟女乱色综合亚洲图片 | 97久久超碰精品视觉盛宴 | 色欲人妻aaaaaaa无码 | 久久国产情侣 | 久久久亚洲成人 | 久久夜色精品国产 | 精品人伦一区二区三区蜜桃免费 | av一级免费 | 又黄又爽又色的网站 | 国产人妻aⅴ色偷 | 我和岳疯狂性做爰全过程视频 | 国产极品美女高潮无套久久久 | 日本亚洲欧洲色α | a天堂在线 | 蜜臀av首页 | 天天操夜夜操 | 国产交换配乱淫视频免费 | 国产又色又爽又刺激在线播放 | 久久99国产精一区二区三区 | 香蕉久久人人爽人人爽人人片av | 亚洲精品美女在线观看播放 | 99国产欧美精品久久久蜜芽 | 国内自拍视频一区二区三区 | 亚洲欧美国产精品18p | 久久精品成人无码观看免费 | 婷婷久久国产对白刺激五月99 | 亚洲国产精品无码久久久久高潮 | 欧美自拍区 | 国产又粗又猛又爽又黄的免费视频 | 亚洲а∨天堂久久精品9966 | 国内精品一区二区三区 | 色噜噜狠狠色综合中文字幕 | 性8电台性8成人电台 | 香蕉av777xxx色综合一区 | 女朋友闺蜜奶好大下面好紧视频 | 黄色免费成人 | 国产欧美一区二区三区视频 | 国产偷人爽久久久久久老妇app | 在线天堂中文 | 成人免费激情视频 | av小说区 | 国产精品久久久久久久久久免费 | 国产思思99re99在线观看 | 色婷婷噜噜久久国产精品12p | 国产伦精品一区二区三区四区 | 真实的国产乱xxxx在线 | 久久一区视频 | 国产黄色免费观看 | av免费观看大全 | 男人扒开女人腿桶到爽免费 | 台湾绝版午夜裸体写真秀 | 五月色婷婷俺来也在线观看 | 中文字幕精品久久久久人妻 | 在线观看视频毛片 | 一本大道av日日躁夜夜躁 | 黄色免费网站在线 | 免费一级欧美片在线播放 | 波多野结衣av无码 | 99精品久久 | 亚洲综合色自拍一区 | 一本视频在线 | 国产精品高潮呻吟av久久动漫 | 成人小网站| 日韩精品一区二区午夜成人版 | 日本免费一区二区三区最新vr | 免费一本色道久久一区 | 国产精品夜色一区二区三区 | 性荡视频播放在线视频 | 国产精品久久久久久久久久直播 | 日本亚洲欧美在线 | 久久久久久久艹 | av基地网 | 少妇熟女久久综合网色欲 | 欧美成人精品三级在线观看播放 | 4hu四虎永久在线观看 | 五月天精品视频 | 免费观看全黄做爰大片国产 | 性猛交ⅹxxx乱大交大片 | 鲁丝一区二区三区免费 | 国产精品视频一区二区三区不卡 | 精品久久久久久亚洲综合网站 | 一道本毛片 | 国产成人愉拍精品久久 | 日产国产亚洲精品系列 | 男人和女人黄 色大片 | 国产乱人伦真实精品视频 | 色欧美片视频在线观看 | 国产成人小视频在线观看 | 国产无套护士在线观看 | jizz在线看| 丰满亚洲大尺度无码无码专线 | 精品无码人妻一区二区三区不卡 | 国产日韩一区二区在线 | 丰满大乳一级淫片免费播放 | 动漫av网站免费观看 | 无套内射无矿码免费看黄 | 国产国产成人免费c片 | mm1313亚洲国产精品无码试看 | 波多野结衣一区二区三区 | 精品久久久久久久久久久久久久久久 | 久久综合色综合 | 国内精品久久久久久久影视麻豆 | 国产美女一区二区三区 | 超高清欧美videossex4 | 91精品国产欧美一区二区成人 | 91二区 | 日本在线色 | 国产精品66| 欧美激情一区二区三级高清视频 | 日本三级视频在线观看 | 三级亚洲| 无码午夜人妻一区二区不卡视频 | 91官网入口 | а√天堂8资源中文在线 | 国产高清免费视频 | 日本aⅴ在线观看 | 欧美性受xxxx狂喷水 | 啪啪免费视频网站 | 国产激情精品一区二区三区 | 乱亲女h秽乱长久久久 | 国产99免费| 欧美v亚洲 | 加勒比中文无码久久综合色 | 国产同性野外打野战 | 国产综合第一页 | 日本国产一区二区三区 | 全黄h全肉边做边吃奶视频 熟妇人妻av无码一区二区三区 | 91视频免费在观看 | 国产人伦精品一区二区三区 | 免费看操片 | 日韩理论在线观看 | 亚洲第一成年免费网站 | 蜜桃精品在线 | 日本亲近相奷中文字幕 | 精品乱子伦 | 日本三级日本三级韩国三级视 | av免播放器在线观看 | 国产精品30p| 男人和女人做爽爽视频 | 欧美 亚洲 另类 制服 自拍 | 秋霞av国产精品一区 | 一本岛在免费一二三区 | 男女性网站 | 丁香久久婷婷 | 国产内射在线激情一区 | 开心五月综合亚洲 | 91成人在线观看喷潮蘑菇 | 精品国产一级片 | 午夜神器在线观看 | 蜜桃视频一区二区在线观看 | 少妇淫片| 人妻中出无码一区二区三区 | 全肉乱妇杂乱视频在线观看 | 野花社区视频www官网 | 乱色欧美激惰 | 肥臀浪妇太爽了快点再快点 | 污片免费网站 | 中文字幕一区二区三区人妻少妇 | 五月六月婷婷 | gv手机在线观看 | 国产精品综合视频 | 中国国产黄色片 | 国产精品乱码久久久久久 | 人操人爽 | 国产福利一区视频 | 亚洲精品久久久久久久久久 | 日本最新免费二区三区 | 一本岛高清乱码2020叶美 | 亚洲日本乱码在线观看 | 在线天堂新版资源www在线 | av无码久久久久不卡网站下载 | 无码国产精品一区二区免费式芒果 | 国产精品女同一区二区软件 | 丰满少妇被猛烈进av毛片 | 色情久久久av熟女人妻网站 | 国内精品久久久久影院中文字幕 | 欧美精品一区二区免费 | 女超人h版av在线看 女儿的朋友4在线观看 | av午夜久久蜜桃传媒软件 | 大动漫美女禁视频 | 51永久免费观看国产nbamba | 日韩精品无码一区二区三区不卡 | 亚洲精品一区二区三区四区乱码 | 人妻无码久久一区二区三区免费 | 国产小精品 | 国产婷婷精品av在线 | 99久久久久国产精品免费人果冻 | www.狠狠艹| 疯狂欧美牲乱大交777 | 精品欧洲av无码一区二区 | 色老板av| 丰满少妇高潮在线播放不卡 | 亚洲东方av | 99re免费视频 | 国产乱人偷精品免费视频 | 国产精品系列在线播放 | 亚洲综合激情在线 | 特级西西444www大胆免费看 | 一 级 黄 色 片免费网站 | 尼姑福利影院 | 色五月丁香五月综合五月 | 欧美性啪啪 | 97免费在线观看视频 | 国产精品国产免费无码专区不卡 | 最近最新中文字幕高清免费 | 久久精品无码专区免费东京热 | 无码精品视频一区二区三区 | 寂寞少妇让水电工爽了一小说 | 国内少妇偷人精品免费 | 亚洲精品69| 精品一区二区三区久久 | 国产成人免费视频 | 欧美日韩午夜群交多人轮换 | 亚洲产国偷v产偷v自拍色戒 | 粉嫩绯色av一区二区在线观看 | 日韩高清在线播放 | 黄色一级欧美 | 男女高潮又爽又黄又无遮挡 | 青春草在线视频免费观看 | 亚洲人成色7777在线观看不卡 | 极品无码国模国产在线观看 | 亚洲一级二级三级 | 国产一区二区三区a | 午夜888 | 色臀av | 疯狂做受xxxx高潮不断 | 亚洲午夜一区二区三区 | 一区二区三区在线 | 欧洲 | 嫩草精品 | 国产成人久久久77777 | 色哟哟在线观看视频 | 国产伦精品一区二区三区免.费 | 免费国产成人 | 在线看亚洲十八禁网站 | 妇女伦子伦视频国产 | 一个人在线免费观看www视频 | 国产成人高清视频 | 国产精品国产三级国产三级人妇 | 性猛交波兰xxxxx | 日韩成人免费观看视频 | 亚洲一区二区三区无码中文字幕 | 国产亚洲欧美日韩高清 | 欧美在线网 | 天天操天天操天天操天天操 | 午夜国产福利在线 | 97国精产品无人区一码二码 | 波多野结衣三区 | 日本色妞 | 亚洲欧美日韩成人在线 | 亚洲 欧美 中文 在线 视频 | 日本网站在线免费观看 | 激情一区二区 | 免费一区在线观看 | 亚洲免费视频网 | 99爱视频在线观看 | 国产学生美女无遮拦高潮视频 | 国产精品丝袜久久久久久不卡 | 国产黄色精品视频 | 韩国三级做爰楼梯在线 | 国产精选av | 亚洲图片欧美另类 | 精品亚洲欧美无人区乱码 | 99视频在线观看视频 | 亚洲制服无码 | 久久免费视频网 | 爱情岛论坛亚洲品质自拍 | 大人和孩做爰av | 动漫精品专区一区二区三区 | 日本强伦姧人妻一区二区 | 欧美性生交活xxxxxdddd | 日本特黄特色aaa大片免费 | 无码一区二区三区视频 | av无码不卡在线观看免费 | 婷婷伊人久久 |