最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中日期時(shí)間的用法總結(jié)

 更新時(shí)間:2023年09月08日 11:21:06   作者:god23bin  
在日常開發(fā)中,我們經(jīng)常需要處理日期和時(shí)間,所以這篇文章小編為大家總結(jié)了下?Java?中日期與時(shí)間的基本概念與一些常用的用法,希望對(duì)大家有所幫助

前言

在日常開發(fā)中,我們經(jīng)常需要處理日期和時(shí)間,日期和時(shí)間可以說是一定會(huì)用到的,現(xiàn)在總結(jié)下 Java 中日期與時(shí)間的基本概念與一些常用的用法。

基本概念

日期(年月日,某一天):2023-01-05

時(shí)間(時(shí)分秒,可具體到某一天某一刻):18:00:002023-01-05 18:00:00

本地時(shí)間:平常我們說的,比如現(xiàn)在說明天早上七點(diǎn)鐘,這里說的時(shí)間就是本地時(shí)間,在咱們中國(guó),指的就是北京時(shí)間。但是在明天早上七點(diǎn)鐘,對(duì)于其他國(guó)家的人來說,他們的本地時(shí)間就不一樣了。

時(shí)區(qū):由于世界各個(gè)國(guó)家與地區(qū)經(jīng)度不同,本地時(shí)間也有所不同,所以劃分了不同的時(shí)區(qū),目前劃分的是24個(gè)時(shí)區(qū),咱們就位于東八區(qū)。目前需要了解的時(shí)區(qū)的表達(dá)方式知道兩種就可以了。

  • 以 GMT 或者 UTC 加時(shí)區(qū)偏移量表示,例如:GMT+08:00 或者 UTC+08:00 表示東八區(qū)
  • 以 洲/城市 表示,例如,Asia/Shanghai,表示上海所在地的時(shí)區(qū)。不過這里的城市名稱不是任意的城市,而是由國(guó)際標(biāo)準(zhǔn)組織規(guī)定的城市。

Java 8 之前日期時(shí)間相關(guān)的類

在 Java 8 之前,主要使用的日期和時(shí)間 API 包括:

  • java.util.Date
  • java.util.Calendar
  • java.text.SimpleDateFormat

1. Date

Date 是 Java 中表示日期和時(shí)間的類,一般用于獲取當(dāng)前的日期和時(shí)間,比如更新數(shù)據(jù)庫中記錄的時(shí)候,需要更新某個(gè)日期時(shí)間,那么就直接 new Date(),這樣實(shí)例化的 Date 對(duì)象就是當(dāng)前的這一時(shí)刻。

Date date = new Date();
// 可以打印當(dāng)前日期時(shí)間
System.out.println(date.toString()); // 控制臺(tái)輸出 Thu Jan 05 18:41:11 CST 2023

2. SimpleDateFormat

SimpleDateFormat 是 Java 中用于格式化日期和時(shí)間的類,此處所謂格式化,就是字面意思,統(tǒng)一格式,即它允許你將日期和時(shí)間按照指定的格式轉(zhuǎn)換成字符串,也可以將對(duì)應(yīng)格式的字符串解析成日期和時(shí)間對(duì)象。

主要用法就是:

  • 格式化日期和時(shí)間
  • 解析字符串格式的日期和時(shí)間

format 方法-格式化日期時(shí)間,從 Date 到 String

使用 public final String format(Date date) 方法格式化日期時(shí)間。上面輸出的格式,不是我們想要的,所以需要進(jìn)行日期時(shí)間的格式化。

最常用的一個(gè)格式化的模型是:yyyy-MM-dd HH:mm:ss

其中,yyyy 是年份,MM 是月份,dd 是天數(shù),后面同理,HH:mm:ss 是時(shí)、分、秒。

// 常用的格式化
String pattern1 = "yyyy-MM-dd HH:mm:ss";
SimpleDateFormat sdf1 = new SimpleDateFormat(pattern1);
System.out.println(sdf1.format(date3)); // 輸出 2023-01-05 18:19:50
String pattern2 = "yyyy年MM月dd日 HH時(shí)mm分ss秒";
SimpleDateFormat sdf2 = new SimpleDateFormat(pattern2);
System.out.println(sdf2.format(date3)); // 輸出 2023年01月05日 18時(shí)19分50秒

parse 方法-字符串日期時(shí)間解析,從 String 到 Date

使用 public Date parse(String source) 方法將 String 轉(zhuǎn)成 Date

String input = "2023-01-01 00:00:01";
String pattern1 = "yyyy-MM-dd HH:mm:ss";
SimpleDateFormat sdf3 = new SimpleDateFormat(pattern1);
try {
    // 將 String 類型的日期解析成 Date 類型的日期
    Date parsed = sdf3.parse(input);
    System.out.println(parsed);
} catch (ParseException e) {
    e.printStackTrace();
}

3. Calendar

Calendar 是 Java 中用于處理日期和時(shí)間的抽象基類。它提供了一個(gè)類似于日歷的機(jī)制,允許我們進(jìn)行日期和時(shí)間的計(jì)算、格式化和解析。

簡(jiǎn)而言之,這個(gè)類主要用于日期的計(jì)算,比如你想得到此刻前一天的日期。

Calendar 是一個(gè)抽象類,不能直接實(shí)例化。所以我們需要使用 getInstance() 方法獲取 Calendar 的實(shí)例:

Calendar calendar = Calendar.getInstance();

當(dāng)我們有一個(gè) Calendar 對(duì)象后,就可以表示日期和時(shí)間了,通過設(shè)置各個(gè)字段,如年、月、日、時(shí)、分、秒等來表示一個(gè)具體的日期和時(shí)間。

calendar.set(Calendar.YEAR, 2023);          // 設(shè)置年份為2023
calendar.set(Calendar.MONTH, Calendar.MAY); // 設(shè)置月份為5(從0開始,5表示六月)
calendar.set(Calendar.DAY_OF_MONTH, 16);    // 設(shè)置日期為16號(hào)

日期和時(shí)間的計(jì)算

Calendar允許你進(jìn)行日期和時(shí)間的加減操作,例如:

calendar.add(Calendar.DAY_OF_MONTH, 7); // 增加7天

這將在當(dāng)前日期的基礎(chǔ)上增加 7 天。

下表列出了 Java 中 Calendar 類常用的方法及其描述:

方法描述
get(int field)返回給定字段的值。例如,calendar.get(Calendar.MONTH) 返回月份。
set(int field, int value)設(shè)置給定字段的值。例如,calendar.set(Calendar.YEAR, 2023) 設(shè)置年份為2023。
add(int field, int amount)增加或減少給定字段的值。例如,calendar.add(Calendar.DAY_OF_MONTH, 1) 將日期增加一天。
getTime()返回表示此Calendar時(shí)間點(diǎn)的Date對(duì)象。
setTime(Date date)使用指定的Date對(duì)象設(shè)置此Calendar的時(shí)間點(diǎn)。
getTimeInMillis()返回以毫秒為單位表示此Calendar時(shí)間點(diǎn)的時(shí)間值。
setTimeInMillis(long millis)使用指定的時(shí)間值設(shè)置此Calendar的時(shí)間點(diǎn)。
getTimeZone()返回此Calendar使用的時(shí)區(qū)。
setTimeZone(TimeZone zone)設(shè)置此Calendar的時(shí)區(qū)。
isLenient()返回Calendar是否寬松,即是否允許非法日期。
setLenient(boolean lenient)設(shè)置Calendar是否寬松。
getActualMaximum(int field)返回給定字段的最大允許值。例如,calendar.getActualMaximum(Calendar.DAY_OF_MONTH) 返回當(dāng)前月份的最大天數(shù)。

Java 8 引入的新的日期時(shí)間相關(guān)的類

當(dāng) Java 8 引入 java.time 包時(shí),它引入了一些新的日期和時(shí)間 API,這些 API 旨在提供更強(qiáng)大、更易于使用、線程安全且具有本地化支持的日期和時(shí)間處理方式。

以下是這些 API 的概述:

  • LocalDate:表示日期,但不包含時(shí)間和時(shí)區(qū)信息。它提供了各種方法來處理日期,如創(chuàng)建、解析、格式化、計(jì)算日期差等。
  • LocalTime:表示時(shí)間,但不包含日期和時(shí)區(qū)信息。它用于處理時(shí)間,包括小時(shí)、分鐘、秒和毫秒。
  • LocalDateTime:它是 LocalDate 和 LocalTime 的組合,表示日期和時(shí)間,但仍不包含時(shí)區(qū)信息。它是處理日期和時(shí)間的主要類之一。
  • ZonedDateTime:表示帶有時(shí)區(qū)信息的日期和時(shí)間。它是 LocalDateTime 的擴(kuò)展,可以處理時(shí)區(qū)的轉(zhuǎn)換和計(jì)算。
  • Duration:表示時(shí)間段的持續(xù)時(shí)間,以秒和納秒為單位。它用于測(cè)量?jī)蓚€(gè)時(shí)間點(diǎn)之間的時(shí)間差。
  • Period:表示日期之間的時(shí)間段,以年、月和日為單位。它用于測(cè)量?jī)蓚€(gè)日期之間的時(shí)間差。
  • DateTimeFormatter:主要用于將日期和時(shí)間格式化為字符串,或?qū)⒆址?strong>解析為日期和時(shí)間。它提供了各種預(yù)定義的格式化方式,并支持自定義格式。

1. LocalDate

直接通過調(diào)用其相關(guān)靜態(tài)方法就可以進(jìn)行相關(guān)的日期處理:

LocalDate now = LocalDate.now(); 			// 獲取當(dāng)前日期
LocalDate date = LocalDate.of(2023, 5, 15); // 創(chuàng)建指定日期
LocalDate parsedDate = LocalDate.parse("2023-05-15"); // 解析日期
int year = date.getYear(); 			// 獲取年份
int month = date.getMonthValue(); 	// 獲取月份
int day = date.getDayOfMonth(); 	// 獲取日期

2. LocalTime

同理,也是類似的,對(duì)時(shí)間進(jìn)行處理:

LocalTime time = LocalTime.now(); 					// 獲取當(dāng)前時(shí)間
LocalTime specificTime = LocalTime.of(14, 30, 0); 	// 創(chuàng)建指定時(shí)間
LocalTime parsedTime = LocalTime.parse("14:30:00"); // 解析時(shí)間
int hour = time.getHour(); 		// 獲取小時(shí)
int minute = time.getMinute(); 	// 獲取分鐘
int second = time.getSecond(); 	// 獲取秒

3. LocalDateTime

處理日期和時(shí)間:

LocalDateTime dateTime = LocalDateTime.now(); 								// 獲取當(dāng)前日期和時(shí)間
LocalDateTime specificDateTime = LocalDateTime.of(2023, 5, 15, 14, 30); 	// 創(chuàng)建指定日期和時(shí)間
LocalDateTime parsedDateTime = LocalDateTime.parse("2023-05-15T14:30:00"); 	// 解析日期和時(shí)間,字母'T'用于分隔日期部分和時(shí)間部分。它的作用是明確表示日期和時(shí)間的分界線。

4. ZonedDateTime

處理帶有時(shí)區(qū)的日期和時(shí)間,我們可以使用 ZoneId.of("時(shí)區(qū)標(biāo)識(shí)") 來獲取相應(yīng)的時(shí)區(qū)對(duì)象:

ZoneId zone = ZoneId.of("America/New_York"); 			// 創(chuàng)建時(shí)區(qū)
ZonedDateTime zonedDateTime = ZonedDateTime.now(zone); 	// 獲取帶有時(shí)區(qū)的當(dāng)前日期和時(shí)間

帶有時(shí)區(qū)信息的日期時(shí)間通常采用以下的格式:

2023-09-08T11:30:00+08:00[Asia/Shanghai]

這個(gè)例子表示的是 2023年9月8日11點(diǎn)30分,位于亞洲/上海時(shí)區(qū),時(shí)區(qū)偏移量為+08:00,也就是東八區(qū)。在這種表示中,日期時(shí)間后面跟著時(shí)區(qū)信息,方括號(hào)內(nèi)的部分為時(shí)區(qū)標(biāo)識(shí)。

下面是一些常見的時(shí)區(qū)標(biāo)識(shí)及其對(duì)應(yīng)的時(shí)區(qū):

時(shí)區(qū)標(biāo)識(shí)時(shí)區(qū)
Asia/Shanghai中國(guó)上海時(shí)區(qū)
America/New_York美國(guó)紐約時(shí)區(qū)
Europe/London英國(guó)倫敦時(shí)區(qū)
America/Los_Angeles美國(guó)洛杉磯時(shí)區(qū)
Asia/Tokyo日本東京時(shí)區(qū)
Europe/Paris法國(guó)巴黎時(shí)區(qū)
Australia/Sydney澳大利亞悉尼時(shí)區(qū)
Africa/Cairo埃及開羅時(shí)區(qū)
Pacific/Honolulu美國(guó)檀香山時(shí)區(qū)
Asia/Dubai阿拉伯迪拜時(shí)區(qū)

5. Duration

測(cè)量時(shí)間段的持續(xù)時(shí)間:

LocalDateTime start = LocalDateTime.of(2023, 9, 8, 11, 0);
LocalDateTime end = LocalDateTime.of(2023, 9, 8, 11, 30);
Duration duration = Duration.between(start, end); 	// 計(jì)算兩個(gè)時(shí)間點(diǎn)之間的時(shí)間差
long minutes = duration.toMinutes(); 				// 獲取分鐘數(shù)

6. Period

測(cè)量日期之間的時(shí)間段:

LocalDate startDate = LocalDate.of(2023, 9, 1);
LocalDate endDate = LocalDate.of(2023, 9, 8);
Period period = Period.between(startDate, endDate); // 計(jì)算兩個(gè)日期之間的時(shí)間差
int days = period.getDays(); 						// 獲取天數(shù)

7. DateTimeFormatter

格式化日期和時(shí)間:

LocalDateTime dateTime = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formattedDateTime = dateTime.format(formatter); // 格式化為字符串
LocalDateTime parsedDateTime = LocalDateTime.parse("2023-05-15 14:30:00", formatter); // 解析字符串為日期和時(shí)間

新日期時(shí)間 API 中常用的方法

以下是 Java 8 中新日期時(shí)間 API 中常用的方法,用于處理日期和時(shí)間的創(chuàng)建、獲取字段值、計(jì)算差異、格式化和解析等:

方法描述
LocalDate.now()獲取當(dāng)前日期。
LocalTime.now()獲取當(dāng)前時(shí)間。
LocalDateTime.now()獲取當(dāng)前日期和時(shí)間。
LocalDate.of(int year, int month, int day)創(chuàng)建指定日期。
LocalTime.of(int hour, int minute)創(chuàng)建指定時(shí)間。
LocalDateTime.of(int year, int month, int day, int hour, int minute)創(chuàng)建指定日期和時(shí)間。
LocalDate.parse(CharSequence text)解析日期字符串。
LocalTime.parse(CharSequence text)解析時(shí)間字符串。
LocalDateTime.parse(CharSequence text)解析日期時(shí)間字符串。
LocalDate.getYear()獲取年份。
LocalDate.getMonthValue()獲取月份。
LocalDate.getDayOfMonth()獲取日期。
LocalTime.getHour()獲取小時(shí)。
LocalTime.getMinute()獲取分鐘。
LocalTime.getSecond()獲取秒。
LocalDateTime.plus(Duration amount)增加持續(xù)時(shí)間。
LocalDateTime.minus(Duration amount)減少持續(xù)時(shí)間。
Duration.between(Temporal startInclusive, Temporal endExclusive)計(jì)算兩個(gè)時(shí)間點(diǎn)之間的時(shí)間差。
Period.between(LocalDate startDateInclusive, LocalDate endDateExclusive)計(jì)算兩個(gè)日期之間的時(shí)間差。
DateTimeFormatter.ofPattern(String pattern)創(chuàng)建日期時(shí)間格式化器。
Temporal.format(DateTimeFormatter formatter)格式化為字符串。
TemporalAccessor.parse(CharSequence text, DateTimeFormatter formatter)解析字符串為日期或時(shí)間。
ZoneId.of(String zoneId)創(chuàng)建時(shí)區(qū)。
ZonedDateTime.now(ZoneId zone)獲取帶有時(shí)區(qū)的當(dāng)前日期和時(shí)間。

開發(fā)中的用到的兩個(gè)注解

一般前端傳遞日期時(shí)間字符串,我們后端進(jìn)行接收,就需要將日期時(shí)間字符串轉(zhuǎn)成我們需要的 Date 類型的日期時(shí)間,即 String 到 Date 的轉(zhuǎn)化

當(dāng)我們從數(shù)據(jù)庫中查出日期時(shí)間,是 Date 類型的日期時(shí)間,返回給前端就提供 JSON 數(shù)據(jù),就需要講 Date 類型的日期時(shí)間轉(zhuǎn)成 字符串類型的日期時(shí)間,即 Date 到 String 的轉(zhuǎn)化

有兩個(gè)注解可以解決這兩件事:Spring 提供的 @DateTimeFormat 和 Jackson 提供的 @JsonFormat

Jackson 相關(guān)依賴:

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.13.4</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-annotations</artifactId>
    <version>2.13.4</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.13.4.2</version>
</dependency>

說明:

  • @DateTimeFormat :將 String 轉(zhuǎn)成 Date,主要用于處理前端傳遞的 String 類型的日期時(shí)間轉(zhuǎn)成 Java 中的 Date 類型的日期時(shí)間對(duì)象
  • @JsonFormat將 Date 轉(zhuǎn)成 String,主要用于處理后端從數(shù)據(jù)庫中查出的 Date 類型的日期時(shí)間,它可以用于標(biāo)記 Java 類的屬性,以指定日期在 JSON 中的格式。

日常用在各種域?qū)ο蟮娜掌趯傩陨希热?DTO、VO、PO。

public class A {
    @JsonFormat(pattern = "yyyy年MM月", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy年MM月")
    private Date startTime;
    @JsonFormat(pattern = "yyyy年MM月", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy年MM月")
    private Date endTime;
}
public class B {
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date startTime;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date endTime;
}

以上就是Java中日期時(shí)間的用法總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于Java日期時(shí)間的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • java實(shí)現(xiàn)停車場(chǎng)管理系統(tǒng)

    java實(shí)現(xiàn)停車場(chǎng)管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)停車場(chǎng)管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 基于request獲取訪問者真實(shí)IP代碼示例

    基于request獲取訪問者真實(shí)IP代碼示例

    這篇文章主要介紹了基于request獲取訪問者真實(shí)IP代碼示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Java多線程并發(fā)之線程池任務(wù)請(qǐng)求攔截測(cè)試實(shí)例

    Java多線程并發(fā)之線程池任務(wù)請(qǐng)求攔截測(cè)試實(shí)例

    這篇文章主要介紹了Java多線程并發(fā)之線程池任務(wù)請(qǐng)求攔截測(cè)試實(shí)例,隊(duì)列中永遠(yuǎn)沒有線程被加入,即使線程池已滿,也不會(huì)導(dǎo)致被加入排隊(duì)隊(duì)列,實(shí)現(xiàn)了只有線程池存在空閑線程的時(shí)候才會(huì)接受新任務(wù)的需求,需要的朋友可以參考下
    2023-12-12
  • 網(wǎng)關(guān)Gateway過濾器的使用詳解

    網(wǎng)關(guān)Gateway過濾器的使用詳解

    Gateway網(wǎng)關(guān)的過濾器分為兩種,一種是局部過濾器,一種是全局過濾器,過濾器就是過濾一些請(qǐng)求,在這里,全局過濾器的作用是處理一切進(jìn)入網(wǎng)關(guān)的請(qǐng)求和微服務(wù)響應(yīng),與GatewayFilter的作用一樣,本文給大家介紹網(wǎng)關(guān)Gateway過濾器的使用,感興趣的朋友一起看看吧
    2022-07-07
  • springboot整合jcasbin權(quán)限管理

    springboot整合jcasbin權(quán)限管理

    jcasbin的權(quán)限控制非常簡(jiǎn)單,本文就來介紹一下springboot整合jcasbin權(quán)限管理,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • idea64.exe.vmoptions文件如何設(shè)置調(diào)整VM配置文件

    idea64.exe.vmoptions文件如何設(shè)置調(diào)整VM配置文件

    這篇文章主要介紹了idea64.exe.vmoptions文件如何設(shè)置調(diào)整VM配置文件問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • Java預(yù)防SQL注入的具體實(shí)踐方法

    Java預(yù)防SQL注入的具體實(shí)踐方法

    在?Java?中預(yù)防?SQL?注入的核心是?避免直接拼接?SQL?語句,并通過參數(shù)化查詢、ORM?框架和嚴(yán)格的輸入驗(yàn)證來實(shí)現(xiàn)安全防護(hù),以下是具體實(shí)踐方法,感興趣的小伙伴跟著小編一起來看看吧
    2025-01-01
  • SpringBoot項(xiàng)目實(shí)現(xiàn)統(tǒng)一異常處理的最佳方案

    SpringBoot項(xiàng)目實(shí)現(xiàn)統(tǒng)一異常處理的最佳方案

    在前后端分離的項(xiàng)目開發(fā)過程中,我們通常會(huì)對(duì)數(shù)據(jù)返回格式進(jìn)行統(tǒng)一的處理,這樣可以方便前端人員取數(shù)據(jù),后端發(fā)生異常時(shí)同樣會(huì)使用此格式將異常信息返回給前端,本文介紹了如何在SpringBoot項(xiàng)目中實(shí)現(xiàn)統(tǒng)一異常處理,如有錯(cuò)誤,還望批評(píng)指正
    2024-02-02
  • spring boot中使用http請(qǐng)求的示例代碼

    spring boot中使用http請(qǐng)求的示例代碼

    本篇文章主要介紹了spring boot中 使用http請(qǐng)求的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-12
  • Java詳解線上內(nèi)存暴漲問題定位和解決方案

    Java詳解線上內(nèi)存暴漲問題定位和解決方案

    本篇文章介紹了我在開發(fā)過程中遇到的線上內(nèi)存暴漲的問題,以及定位問題原因和解決該問題的過程及思路,通讀本篇對(duì)大家的學(xué)習(xí)或工作具有一定的價(jià)值,需要的朋友可以參考下
    2021-10-10

最新評(píng)論

黔南| 崇信县| 全州县| 宜城市| 陆川县| 邻水| 广饶县| 宁德市| 丰台区| 策勒县| 鹤山市| 罗田县| 临潭县| 新和县| 中牟县| 沾益县| 海口市| 金塔县| 铜川市| 苏州市| 柘城县| 海丰县| 策勒县| 津市市| 平乐县| 青田县| 新巴尔虎左旗| 黄大仙区| 襄城县| 来安县| 怀宁县| 九龙县| 兴业县| 大连市| 嵊州市| 南澳县| 黄冈市| 秦皇岛市| 醴陵市| 杭锦后旗| 运城市|