激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Java教程 - 微信開(kāi)發(fā)準(zhǔn)備第二步 springmvc mybatis項(xiàng)目結(jié)構(gòu)搭建

微信開(kāi)發(fā)準(zhǔn)備第二步 springmvc mybatis項(xiàng)目結(jié)構(gòu)搭建

2020-09-14 14:18dapengniao Java教程

這篇文章主要為大家詳細(xì)介紹了微信開(kāi)發(fā)準(zhǔn)備第二步,springmvc和mybatis項(xiàng)目結(jié)構(gòu)的搭建,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

前面一篇有說(shuō)道如何在MyEclipse中搭建maven項(xiàng)目,這里將繼續(xù)介紹如何在搭建好的基礎(chǔ)maven項(xiàng)目中引入我們常用的javaweb框架——SpringMVC!

①在建立好的maven項(xiàng)目中的pom.xml文件引入依賴,代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<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/maven-v4_0_0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <groupId>wechat.cuiyongzhi.com</groupId>
 <artifactId>wechat</artifactId>
 <packaging>war</packaging>
 <version>0.0.1-SNAPSHOT</version>
 <name>wechat</name>
 <url>http://maven.apache.org</url>
 <dependencies>
  <!-- spring -->
  <dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-test</artifactId>
   <version>3.2.0.RELEASE</version>
  </dependency>
  <dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-webmvc</artifactId>
   <version>3.2.0.RELEASE</version>
  </dependency>
  <dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-core</artifactId>
   <version>3.2.0.RELEASE</version>
  </dependency>
 
  <!-- mybatis -->
  <dependency>
   <groupId>org.mybatis</groupId>
   <artifactId>mybatis</artifactId>
   <version>3.1.1</version>
  </dependency>
  <dependency>
   <groupId>org.mybatis</groupId>
   <artifactId>mybatis-spring</artifactId>
   <version>1.1.1</version>
  </dependency>
 
  <!-- mysql -->
  <dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>5.1.21</version>
  </dependency>
 
  <!-- junit測(cè)試 -->
  <dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>4.11</version>
   <scope>test</scope>
  </dependency>
 
  <!-- mysql阿里連接池druid -->
  <dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>druid</artifactId>
   <version>0.2.9</version>
  </dependency>
 
  <!-- spring aop包 -->
  <dependency>
   <groupId>org.aspectj</groupId>
   <artifactId>aspectjweaver</artifactId>
   <version>1.7.1</version>
  </dependency>
 
  <!-- json包 -->
  <dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>fastjson</artifactId>
   <version>1.2.7</version>
  </dependency>
 
  <!-- 文件上傳包 -->
  <dependency>
   <groupId>commons-fileupload</groupId>
   <artifactId>commons-fileupload</artifactId>
   <version>1.2.2</version>
  </dependency>
 
  <!--servlet包 -->
  <dependency>
   <groupId>javax.servlet</groupId>
   <artifactId>servlet-api</artifactId>
   <version>3.0-alpha-1</version>
  </dependency>
 
  <dependency>
   <groupId>javax.servlet.jsp</groupId>
   <artifactId>jsp-api</artifactId>
   <version>2.1</version>
   <scope>provided</scope>
  </dependency>
 
  <dependency>
   <groupId>javax.servlet</groupId>
   <artifactId>jstl</artifactId>
   <version>1.2</version>
  </dependency>
 
  <!-- 日志包 -->
  <dependency>
   <groupId>log4j</groupId>
   <artifactId>log4j</artifactId>
   <version>1.2.17</version>
  </dependency>
 </dependencies>
 <build>
  <finalName>wechat</finalName>
 </build>
</project>

②修改項(xiàng)目路徑下的web.xml文件如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:web="http://java.sun.com/xml/ns/javaee" xmlns="http://java.sun.com/xml/ns/javaee"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd
 http://www.springframework.org/schema/websocket http://www.springframework.org/schema/websocket/spring-websocket.xsd"
 id="WebApp_ID" version="3.0">
 <display-name>com.cuiyongzhi.wechat</display-name>
 <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:spring.xml,classpath:spring-mybatis.xml</param-value>
  <!-- ,classpath:spring-quartz.xml 用于做任務(wù)調(diào)度 任務(wù)定時(shí)都可以 -->
 </context-param>
 <context-param>
  <param-name>log4jConfigLocation</param-name>
  <param-value>classpath:log4j.properties</param-value>
 </context-param>
 <listener>
  <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
 </listener>
 <context-param>
  <param-name>spring.profiles.active</param-name>
  <param-value>dev</param-value>
 </context-param>
 <context-param>
  <param-name>spring.profiles.default</param-name>
  <param-value>dev</param-value>
 </context-param>
 <context-param>
  <param-name>spring.liveBeansView.mbeanDomain</param-name>
  <param-value>dev</param-value>
 </context-param>
 <filter>
  <filter-name>encodingFilter</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
  </init-param>
  <init-param>
   <param-name>forceEncoding</param-name>
   <param-value>true</param-value>
  </init-param>
 </filter>
 <listener>
  <description>spring監(jiān)聽(tīng)器</description>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>
 <!-- 防止內(nèi)存溢出 -->
 <listener>
  <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
 </listener>
 <servlet>
  <description>spring mvc servlet</description>
  <servlet-name>springMvc</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <init-param>
   <description>spring mvc 配置文件</description>
   <param-name>contextConfigLocation</param-name>
   <param-value>classpath:spring-mvc.xml</param-value>
  </init-param>
  <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet>
  <servlet-name>interface_url-init_servlet</servlet-name>
  <servlet-class>com.cuiyongzhi.web.start.InterfaceUrlIntiServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
  <servlet-name>springMvc</servlet-name>
  <url-pattern>/</url-pattern>
 </servlet-mapping>
 
 <welcome-file-list>
  <welcome-file>/index.jsp</welcome-file>
 </welcome-file-list>
 <session-config>
  <session-timeout>300</session-timeout>
 </session-config>
 
 <error-page>
  <error-code>404</error-code>
  <location>/WEB-INF/error/error.jsp</location>
 </error-page>
 
 <error-page>
  <error-code>500</error-code>
  <location>/WEB-INF/error/error.jsp</location>
 </error-page>
 
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.css</url-pattern>
 </servlet-mapping>
 
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.gif</url-pattern>
 </servlet-mapping>
 
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.jpg</url-pattern>
 </servlet-mapping>
 
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.js</url-pattern>
 </servlet-mapping>
 
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.xhtml</url-pattern>
 </servlet-mapping>
 
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.html</url-pattern>
 </servlet-mapping>
 
 <filter>
  <filter-name>DruidWebStatFilter</filter-name>
  <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
  <init-param>
   <param-name>exclusions</param-name>
   <param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*</param-value>
  </init-param>
 </filter>
 <filter-mapping>
  <filter-name>DruidWebStatFilter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 <servlet>
  <servlet-name>DruidStatView</servlet-name>
  <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
  <init-param>
   <!-- 允許清空統(tǒng)計(jì)數(shù)據(jù) -->
   <param-name>resetEnable</param-name>
   <param-value>true</param-value>
  </init-param>
  <init-param>
   <!-- 用戶名 -->
   <param-name>loginUsername</param-name>
   <param-value>cuiyongzhi</param-value>
  </init-param>
  <init-param>
   <!-- 密碼 -->
   <param-name>loginPassword</param-name>
   <param-value>123456</param-value>
  </init-param>
 </servlet>
 <servlet-mapping>
  <servlet-name>DruidStatView</servlet-name>
  <url-pattern>/druid/*</url-pattern>
 </servlet-mapping>
 <!-- 訪問(wèn)監(jiān)控頁(yè)面:http://ip:port/projectName/druid/index.html -->
 
 <jsp-config>
  <jsp-property-group>
   <display-name>jspConfiguration</display-name>
   <url-pattern>*.jsp</url-pattern>
   <el-ignored>false</el-ignored>
   <scripting-invalid>false</scripting-invalid>
   <include-prelude>/WEB-INF/common/head.jsp</include-prelude>
  </jsp-property-group>
 </jsp-config>
 
</web-app>

③添加數(shù)據(jù)庫(kù)配置信息,這里項(xiàng)目配置的數(shù)據(jù)庫(kù)為MySQL,在 resources下新建config.properties配置文件,設(shè)置如下:

?
1
2
3
4
validationQuery=SELECT 1
jdbc_url=jdbc:mysql://127.0.0.1:3306/wechat?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
jdbc_username=root
jdbc_password=123456789

④在 resources下新建spring.xml配置文件,設(shè)置如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
 <!-- 引入屬性文件 -->
 <context:property-placeholder location="classpath:config.properties" />
 <!-- 自動(dòng)掃描(自動(dòng)注入) -->
 <context:component-scan base-package="com.cuiyongzhi.web.service" />
 <context:component-scan base-package="com.cuiyongzhi.wechat.*" />
  
</beans>

⑤在 resources下新建spring-mvc.xml配置文件,設(shè)置如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
 
 <!-- 自動(dòng)掃描controller包下的所有類,使其認(rèn)為spring mvc的控制器 -->
 <context:component-scan base-package="com.cuiyongzhi.web.controller" />
 
 <!-- 避免IE執(zhí)行AJAX時(shí),返回JSON出現(xiàn)下載文件 -->
 <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
  <property name="supportedMediaTypes">
   <list>
    <value>text/html;charset=UTF-8</value>
   </list>
  </property>
 </bean>
 
 <!-- 啟動(dòng)Spring MVC的注解功能,完成請(qǐng)求和注解POJO的映射 -->
 <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
  <property name="messageConverters">
   <list>
    <ref bean="mappingJacksonHttpMessageConverter" /><!-- json轉(zhuǎn)換器 -->
   </list>
  </property>
 </bean>
 
 <!-- 對(duì)模型視圖名稱的解析,即在模型視圖名稱添加前后綴 -->
 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/views/" p:suffix=".jsp" />
 
 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  <property name="defaultEncoding">
   <value>UTF-8</value>
  </property>
  <property name="maxUploadSize">
   <value>32505856</value><!-- 上傳文件大小限制為31M,31*1024*1024 -->
  </property>
  <property name="maxInMemorySize">
   <value>4096</value>
  </property>
 </bean>
  
</beans>

⑥在 resources下新建spring-mybatis.xml配置文件,設(shè)置如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
">
 
 <!-- 配置數(shù)據(jù)源 -->
 <bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
  <property name="url" value="${jdbc_url}" />
  <property name="username" value="${jdbc_username}" />
  <property name="password" value="${jdbc_password}" />
 
  <!-- 初始化連接大小 -->
  <property name="initialSize" value="5" />
  <!-- 連接池最大使用連接數(shù)量 -->
  <property name="maxActive" value="100" />
  <!-- 連接池最大空閑 -->
  <property name="maxIdle" value="10" />
  <!-- 連接池最小空閑 -->
  <property name="minIdle" value="0" />
  <!-- 獲取連接最大等待時(shí)間 -->
  <property name="maxWait" value="60000" />
 
  <property name="poolPreparedStatements" value="true" />
  <property name="maxPoolPreparedStatementPerConnectionSize" value="33" />
 
  <property name="validationQuery" value="${validationQuery}" />
  <property name="testOnBorrow" value="false" />
  <property name="testOnReturn" value="false" />
  <property name="testWhileIdle" value="true" />
 
  <!-- 配置間隔多久才進(jìn)行一次檢測(cè),檢測(cè)需要關(guān)閉的空閑連接,單位是毫秒 -->
  <property name="timeBetweenEvictionRunsMillis" value="60000" />
  <!-- 配置一個(gè)連接在池中最小生存的時(shí)間,單位是毫秒 -->
  <property name="minEvictableIdleTimeMillis" value="25200000" />
 
  <!-- 打開(kāi)removeAbandoned功能 -->
  <property name="removeAbandoned" value="true" />
  <!-- 1800秒,也就是30分鐘 -->
  <property name="removeAbandonedTimeout" value="1800" />
  <!-- 關(guān)閉abanded連接時(shí)輸出錯(cuò)誤日志 -->
  <property name="logAbandoned" value="true" />
 
  <!-- 監(jiān)控?cái)?shù)據(jù)庫(kù) -->
  <!-- <property name="filters" value="stat" /> -->
  <property name="filters" value="mergeStat" />
 </bean>
 
 <!-- myBatis文件 -->
 <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  <property name="dataSource" ref="dataSource" />
  <!-- 自動(dòng)掃描entity目錄, 省掉Configuration.xml里的手工配置 -->
  <property name="mapperLocations" value="classpath:com/cuiyongzhi/web/mapping/*.xml" />
 </bean>
 
 <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  <property name="basePackage" value="com.cuiyongzhi.web.dao" />
  <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
 </bean>
 
 <!-- 配置事務(wù)管理器 -->
 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  <property name="dataSource" ref="dataSource" />
 </bean>
 
 <!-- 注解方式配置事物 -->
 <!-- <tx:annotation-driven transaction-manager="transactionManager" /> -->
 
 <!-- 攔截器方式配置事物 -->
 <tx:advice id="transactionAdvice" transaction-manager="transactionManager">
  <tx:attributes>
   <tx:method name="add*" propagation="REQUIRED" />
   <tx:method name="append*" propagation="REQUIRED" />
   <tx:method name="insert*" propagation="REQUIRED" />
   <tx:method name="save*" propagation="REQUIRED" />
   <tx:method name="update*" propagation="REQUIRED" />
   <tx:method name="modify*" propagation="REQUIRED" />
   <tx:method name="edit*" propagation="REQUIRED" />
   <tx:method name="delete*" propagation="REQUIRED" />
   <tx:method name="remove*" propagation="REQUIRED" />
   <tx:method name="repair" propagation="REQUIRED" />
   <tx:method name="delAndRepair" propagation="REQUIRED" />
   <tx:method name="get*" propagation="SUPPORTS" />
   <tx:method name="find*" propagation="SUPPORTS" />
   <tx:method name="load*" propagation="SUPPORTS" />
   <tx:method name="search*" propagation="SUPPORTS" />
   <tx:method name="datagrid*" propagation="SUPPORTS" />
   <tx:method name="*" propagation="SUPPORTS" />
  </tx:attributes>
 </tx:advice>
 <aop:config>
  <aop:pointcut id="transactionPointcut" expression="execution(* com.cuiyongzhi.web.service..*Impl.*(..))" />
  <aop:advisor pointcut-ref="transactionPointcut" advice-ref="transactionAdvice" />
 </aop:config>
 
 
 <!-- 配置druid監(jiān)控spring jdbc -->
 <bean id="druid-stat-interceptor" class="com.alibaba.druid.support.spring.stat.DruidStatInterceptor">
 </bean>
 <bean id="druid-stat-pointcut" class="org.springframework.aop.support.JdkRegexpMethodPointcut" scope="prototype">
  <property name="patterns">
   <list>
    <value>com.cuiyongzhi.web.service.*</value>
   </list>
  </property>
 </bean>
 <aop:config>
  <aop:advisor advice-ref="druid-stat-interceptor" pointcut-ref="druid-stat-pointcut" />
 </aop:config>
 
</beans>

⑦在 resources下新建log4j.properties配置文件,用于日志的輸出等級(jí)以及輸出位置設(shè)置,設(shè)置如下:

微信開(kāi)發(fā)準(zhǔn)備第二步 springmvc mybatis項(xiàng)目結(jié)構(gòu)搭建

到這里springmvc+mybatis的基本配置文件基本就完成了,大致的項(xiàng)目結(jié)構(gòu)如下:

微信開(kāi)發(fā)準(zhǔn)備第二步 springmvc mybatis項(xiàng)目結(jié)構(gòu)搭建

本篇主要以代碼示例為主,基本的的項(xiàng)目搭建就記錄到這里,下一篇我將簡(jiǎn)述在這個(gè)框架下的一些簡(jiǎn)單應(yīng)用,感謝你的翻閱,如有疑問(wèn)可以討論!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 午夜精品久久久久久久96蜜桃 | 99成人精品视频 | 国产精品久久在线观看 | 国产精品呻吟 | 国产毛片在线高清视频 | 美女很黄很黄免费的 | 日本在线观看高清完整版 | 国产91在线免费 | 国产亚洲精品久久久久久久久 | 国产亚洲精品久久久久5区 男人天堂免费 | 91网站免费在线观看 | 精品人伦一区二区三区蜜桃网站 | 8x成人在线电影 | av老司机久久 | 亚洲免费视频一区二区 | 中文在线日韩 | 久久精品中文字幕 | 欧美日本在线视频 | 色淫影院| 正在播放91 | 黄色免费av网站 | 黄在线免费 | 精品无码久久久久久国产 | 亚洲第一精品在线 | 一级黄色在线免费观看 | 国产91大片 | 91av久久| 国产亚洲激情 | 欧美高清在线精品一区二区不卡 | 色综av | 免费观看一级黄色片 | 夜间福利视频 | 国产亚洲精品久久久久久久久久 | 成人做爰高潮片免费视频韩国 | 欧美成人三级视频 | 欧美一级淫片免费播放口 | xxxx18韩国护士hd老师 | 国产午夜精品久久久久久久蜜臀 | 欧美性受ⅹ╳╳╳黑人a性爽 | 国产精品一区二区三区在线 | 小视频免费在线观看 |