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

Java實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)(使用數(shù)據(jù)庫(kù))

 更新時(shí)間:2022年01月24日 14:41:24   作者:吾人為學(xué)  
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)學(xué)生信息管理系統(tǒng),使用數(shù)據(jù)庫(kù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Java基礎(chǔ)—學(xué)生信息管理系統(tǒng)(使用數(shù)據(jù)庫(kù)),供大家參考,具體內(nèi)容如下

前一段時(shí)間寫(xiě)了學(xué)生信息管理系統(tǒng)(使用ArrayList),今天再來(lái)更新一下使用數(shù)據(jù)庫(kù)的管理系統(tǒng),總體上來(lái)說(shuō)要比用ArrayList簡(jiǎn)便一些,同時(shí)輸入的數(shù)據(jù)也能存儲(chǔ)起來(lái)。

這次程序是在上一篇的基礎(chǔ)上進(jìn)行修改的,所以結(jié)構(gòu)上來(lái)看十分相似。

在寫(xiě)程序之前,要先在MySQL上建立Student Info表。

create table Student (
?? ?ID varchar(50) primary key not null,
?? ?Name varchar(30) not null,
?? ?Gender char(5) not null,
?? ?Age int not null,
?? ?Score int not null
);

1、就和上一篇博客一樣,先將學(xué)生信息進(jìn)行封裝,這一步并不必要,只是修改起來(lái)方便些。

public class Student {
?? ?
?? ?private String stuName;
?? ?private String stuNo;
?? ?private String gender;
?? ?private int age;?? ?
?? ?private int score;
?? ?public String getStuName() {
?? ??? ?return stuName;
?? ?}

?? ?public void setStuName(String stuName) {
?? ??? ?this.stuName = stuName;
?? ?}

?? ?public String getStuNo() {
?? ??? ?return stuNo;
?? ?}

?? ?public void setStuNo(String stuNo) {
?? ??? ?this.stuNo = stuNo;
?? ?}

?? ?public String getGender() {
?? ??? ?return gender;
?? ?}

?? ?public void setGender(String gender) {
?? ??? ?this.gender = gender;
?? ?}

?? ?public int getAge() {
?? ??? ?return age;
?? ?}

?? ?public void setAge(int age) {
?? ??? ?this.age = age;
?? ?}

?? ?public int getScore() {
?? ??? ?return score;
?? ?}

?? ?public void setScore(int score) {
?? ??? ?this.score = score;
?? ?}
?? ?
}

2.新建操作類,因?yàn)檫@次要使用MySql數(shù)據(jù)庫(kù),所以要使用JDBC將Java與數(shù)據(jù)庫(kù)鏈接起來(lái)。

1> 先將mysql-connector-java.jar 加入到lib庫(kù)中,之后右鍵Add path。

2> 然后在程序中要先開(kāi)啟JDBC,加載驅(qū)動(dòng)器,如果驅(qū)動(dòng)器不存在,會(huì)拋出異常,所以需要加上try-catch

//開(kāi)啟JDBC

public void getDBconn(){
?? ?String url = "jdbc:mysql://localhost:3306/homework";
?? ?String user = "root";
?? ?String password = "root";
?? ??? ?
?? ??? ?try {
?? ??? ??? ?/**1.加載JDBC驅(qū)動(dòng)器*/
?? ??? ??? ?Class.forName("com.mysql.jdbc.Driver");
?? ??? ??? ?
?? ??? ??? ?/**2.獲取連接*/
?? ??? ??? ?conn = DriverManager.getConnection(url, user, password);
?? ??? ??? ?stat = conn.createStatement();
?? ??? ?} catch (ClassNotFoundException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}
?? ??? ?
?? ?}

3>同樣,在程序結(jié)束后一定要關(guān)閉連接,防止出問(wèn)題。如果關(guān)閉異常,也要拋出異常。

//關(guān)閉JDBC
public void closeRs(){
?? ?try{
?? ? ? ?if(rs != null){
?? ??? ?rs.close();
?? ??? ??? ?}
?? ??? ??? ?if(stat != null){
?? ??? ??? ??? ?stat.close();
?? ??? ??? ?}
?? ??? ??? ?if(conn != null){
?? ??? ??? ??? ?conn.close();
?? ??? ??? ?}
?? ??? ?}catch(Exception e){
?? ??? ??? ?e.printStackTrace();
?? ??? ?}
?? ?}

3.接下來(lái)就是程序的主體:增、刪、改、查四個(gè)操作部分,這部分因?yàn)楣P者偷懶,所以和上一篇使用ArrayList的結(jié)構(gòu)很像,但是內(nèi)容有較大的修改,每一個(gè)try-catch后都加上了finally,無(wú)論操作是否成功都要關(guān)閉連接

//增加學(xué)生信息
public void addStu(Student stu){
?? ??? ?
?? ?String sql = "insert into studentinfo values ( '" + stu.getStuNo()+ "', '" + stu.getStuName() + "', '"
?? ??? ?+ stu.getGender() + "', " + stu.getAge() + " , " + stu.getScore() + ")";
?? ??? ?
?? ??? ?try {
?? ??? ??? ?int affectedRows = stat.executeUpdate(sql);
?? ??? ??? ?if(affectedRows > 0){
?? ??? ??? ??? ?System.out.println("該學(xué)生信息已添加!");
?? ??? ??? ?}else{
?? ??? ??? ??? ?System.out.println("操作有誤,請(qǐng)重新添加!");
?? ??? ??? ??? ?append();
?? ??? ??? ?}
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}finally{
?? ??? ??? ?closeRs();
?? ??? ?}
?? ??? ?
?? ?}
?? ?
?? ?//輸入學(xué)生信息
?? ?public void append(){
?? ??? ?
?? ??? ?Student stu = new Student();
?? ??? ?
?? ??? ?/**
?? ??? ? * 通過(guò)封裝方法,將學(xué)生信息賦給stus
?? ??? ? */
?? ??? ?stu.setStuName(name());
?? ??? ?stu.setStuNo(stuNum());?? ??? ?
?? ??? ?stu.setGender(gender());?? ??? ?
?? ??? ?stu.setAge(age());?? ??? ?
?? ??? ?stu.setScore(score());?? ?
?? ??? ?//將stu中的信息增添到stus中
?? ??? ?addStu(stu);
?? ??? ?
?? ?}
?? ?
?? ?
?? ?//得到學(xué)生姓名
?? ?public String name(){?? ?
?? ??? ?String name;?? ??? ?
?? ??? ?System.out.println("請(qǐng)輸入學(xué)生的姓名:");
?? ??? ?name = scanner.next();?? ??? ?
?? ??? ?return name;
?? ?}
?? ?
?? ?
//得到學(xué)生學(xué)號(hào)
public String stuNum(){
?? ??? ?String stuNum;?? ??? ?
?? ??? ?System.out.println("請(qǐng)輸入學(xué)生的學(xué)號(hào):");
?? ??? ?stuNum = scanner.next();?? ??? ?
?? ??? ?
?? ??? ?//如果學(xué)號(hào)不為11位,則重新輸入,直到學(xué)號(hào)正確
?? ??? ?if(stuNum.length() != 11){
?? ??? ??? ?System.out.println("您輸入的學(xué)號(hào)有誤!請(qǐng)重新輸入!");
?? ??? ??? ?stuNum();?? ?
?? ??? ?}
?? ??? ??? ??? ?
?? ??? ?return stuNum;
?? ?}
?? ?
?? ?//得到學(xué)生的性別
?? ?public String gender(){
?? ??? ?
?? ??? ?String stuGender;
?? ??? ?
?? ??? ?System.out.println("請(qǐng)輸入學(xué)生的性別:");
?? ??? ?stuGender = scanner.next();
?? ??? ?
?? ??? ?if(!stuGender.equals("男") && !stuGender.equals("女") ){
?? ??? ??? ?System.out.println("您輸入的學(xué)生性別有誤!請(qǐng)重新輸入!");
?? ??? ??? ?gender();
?? ??? ?}
?? ??? ?
?? ??? ?return stuGender;
?? ?}
?? ?
?? ?//得到學(xué)生的年齡
?? ?public int age(){
?? ??? ?
?? ??? ?int stuAge;
?? ??? ?
?? ??? ?System.out.println("請(qǐng)輸入學(xué)生的年齡:");
?? ??? ?stuAge = scanner.nextInt();
?? ??? ?
?? ??? ?if(stuAge < 0 || stuAge >= ?80){
?? ??? ??? ?System.out.println("您輸入的年齡有誤!請(qǐng)重新輸入!");
?? ??? ??? ?age();
?? ??? ?}
?? ??? ?
?? ??? ?return stuAge;
?? ?}
?? ?
?? ?//得到學(xué)生的成績(jī)
?? ?public int score(){
?? ??? ?int stuScore;
?? ??? ?
?? ??? ?System.out.println("請(qǐng)輸入學(xué)生的成績(jī):");
?? ??? ?stuScore = scanner.nextInt();
?? ??? ?
?? ??? ?if(stuScore < 0 || stuScore > 100){
?? ??? ??? ?System.out.println("您輸入的成績(jī)有誤!請(qǐng)重新輸入!");
?? ??? ??? ?score();
?? ??? ?}
?? ??? ?
?? ??? ?return stuScore;
?? ?}
?? ?
?? ?
?? ?/**
?? ? *?
?? ? * 刪除學(xué)生信息
?? ? *?
?? ? * @param stuNo
?? ? */
?? ?public void delStu(){
?? ??? ?
?? ??? ?System.out.println("請(qǐng)輸入您想刪除的學(xué)號(hào):");
?? ??? ?String stuNo = scanner.next();
?? ??? ?

?? ??? ?String sql = "delete from studentinfo where ID = '" + stuNo + "' ";
?? ??? ?
?? ??? ?try {
?? ??? ??? ?int affectedRows = stat.executeUpdate(sql);
?? ??? ??? ?if(affectedRows > 0){
?? ??? ??? ??? ?System.out.println("該學(xué)生信息已刪除!");
?? ??? ??? ?}else{
?? ??? ??? ??? ?System.out.println("操作有誤,請(qǐng)重新輸入!");
?? ??? ??? ??? ?delStu();
?? ??? ??? ?}
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}finally{
?? ??? ??? ?closeRs();
?? ??? ?}
?? ?}
?? ?
?? ?
?? ?/**
?? ? * 修改學(xué)生信息:
?? ? * 1.姓名
?? ? * 2.學(xué)號(hào)
?? ? * 3.性別
?? ? * 4.年齡
?? ? * 5.成績(jī)
?? ? * @param stu
?? ? */
?? ?public void updateStu(String stuNo){
?? ??? ?
?? ??? ?String sql = null;
?? ?
?? ??? ?information();
?? ??? ?int choose = scanner.nextInt();
?? ??? ?
?? ??? ?switch(choose){
?? ??? ??? ?case 1:
?? ??? ??? ??? ?System.out.println("請(qǐng)輸入要更新的名字:");
?? ??? ??? ??? ?String Name = scanner.next();
?? ??? ??? ??? ?sql = "update studentinfo set Name = '" + Name +"' where ID = '" + stuNo + "'";
?? ??? ??? ??? ?break;
?? ??? ??? ?case 2:
?? ??? ??? ??? ?System.out.println("請(qǐng)輸入要更新的性別:");
?? ??? ??? ??? ?String Gender = scanner.next();
?? ??? ??? ??? ?sql = "update studentinfo set Gender = '" + Gender +"' where ID = '" + stuNo + "'";
?? ??? ??? ??? ?break;
?? ??? ??? ?case 3:
?? ??? ??? ??? ?System.out.println("請(qǐng)輸入要更新的年齡:");
?? ??? ??? ??? ?int Age = scanner.nextInt();
?? ??? ??? ??? ?sql = "update studentinfo set Age = " + Age +" where ID = '" + stuNo + "'";
?? ??? ??? ??? ?break;
?? ??? ??? ?case 4:
?? ??? ??? ??? ?System.out.println("請(qǐng)輸入要更新的成績(jī):");
?? ??? ??? ??? ?int Score = scanner.nextInt();
?? ??? ??? ??? ?sql = "update studentinfo set Score = " + Score +" where ID = '" + stuNo + "'";
?? ??? ??? ??? ?break;
?? ??? ??? ?case 0:
?? ??? ??? ??? ?System.exit(0);
?? ??? ??? ??? ?break;
?? ??? ?}?? ?
?? ??? ?
?? ??? ?try {
?? ??? ??? ?int affectedRows = stat.executeUpdate(sql);
?? ??? ??? ?if(affectedRows > 0){
?? ??? ??? ??? ?System.out.println("該學(xué)生信息已修改!");
?? ??? ??? ?}else{
?? ??? ??? ??? ?System.out.println("操作有誤!");
?? ??? ??? ?}
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}finally{
?? ??? ??? ?closeRs();
?? ??? ?}
?? ?}
?? ?
?? ?public void information(){
?? ??? ?System.out.println("請(qǐng)選擇您要修改的信息:");
?? ??? ?System.out.println("1.姓名");
?? ??? ?System.out.println("2.性別");
?? ??? ?System.out.println("3.年齡");
?? ??? ?System.out.println("4.成績(jī)");
?? ??? ?System.out.println("0.退出");
?? ??? ?System.out.println("請(qǐng)輸入序號(hào):");
?? ?}
?? ?/**
?? ? * 根據(jù)學(xué)號(hào)查詢學(xué)生信息
?? ? * 如果存在,輸出學(xué)生信息
?? ? * @param stuNo
?? ? */
?? ?public void queryStuByStuNo(String stuNo){
?? ??? ?
?? ??? ?String sql = "select * from studentinfo where ID = '" + stuNo + "'";
?? ??? ?
?? ??? ?try {
?? ??? ??? ?if(stuNo.equals("0")){
?? ??? ??? ??? ?
?? ??? ??? ??? ?sql = "select * from studentinfo";
?? ??? ??? ??? ?rs = stat.executeQuery(sql);
?? ??? ??? ??? ?
?? ??? ??? ??? ?while(rs.next()){
?? ??? ??? ??? ??? ?System.out.print("學(xué)號(hào):" + rs.getString("ID") + "\t");
?? ??? ??? ??? ??? ?System.out.print("姓名:" + rs.getString("Name") + "\t");
?? ??? ??? ??? ??? ?System.out.print("性別:" + rs.getString("Gender") + "\t");
?? ??? ??? ??? ??? ?System.out.print("年齡:" + rs.getInt("Age") + "\t");
?? ??? ??? ??? ??? ?System.out.println("成績(jī):" + rs.getInt("Score") + "\t");
?? ??? ??? ??? ?}
?? ??? ??? ?}else{
?? ??? ??? ??? ?if(rs.next()){
?? ??? ??? ??? ??? ?rs = stat.executeQuery(sql);
?? ??? ??? ??? ??? ?System.out.print("學(xué)號(hào):" + rs.getString("ID") + "\t");
?? ??? ??? ??? ??? ?System.out.print("姓名:" + rs.getString("Name") + "\t");
?? ??? ??? ??? ??? ?System.out.print("性別:" + rs.getString("Gender") + "\t");
?? ??? ??? ??? ??? ?System.out.print("年齡:" + rs.getInt("Age") + "\t");
?? ??? ??? ??? ??? ?System.out.println("成績(jī):" + rs.getInt("Score") + "\t");
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}finally{
?? ??? ??? ?closeRs();
?? ??? ?}
?? ??? ?
?? ?
?? ?}

4.定義操作菜單,允許用戶輸入選擇要操作的功能。

import java.util.Scanner;
public class SystemService {

?? ?Scanner scanner = new Scanner(System.in);
?? ?StudentSystem ss = new StudentSystem();
?? ?
?? ?public void serviceChoose(){
?? ??? ?
?? ??? ?System.out.println("-----歡迎使用學(xué)生信息管理系統(tǒng)-----");
?? ??? ?
?? ??? ?while(true){
?? ??? ??? ?
?? ??? ??? ?ss.getDBconn();
?? ??? ??? ?
?? ??? ??? ?System.out.println("1.添加學(xué)生信息");
?? ??? ??? ?System.out.println("2.刪除學(xué)生信息");
?? ??? ??? ?System.out.println("3.修改學(xué)生信息");
?? ??? ??? ?System.out.println("4.查詢學(xué)生信息");
?? ??? ??? ?System.out.println("0.退出系統(tǒng)");
?? ??? ??? ?
?? ??? ??? ?System.out.println("請(qǐng)輸入序號(hào):");
?? ??? ??? ?switch(scanner.nextInt()){
?? ??? ??? ??? ?
?? ??? ??? ??? ?case 1:
?? ??? ??? ??? ??? ?ss.append();
?? ??? ??? ??? ??? ?System.out.println();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 2:
?? ??? ??? ??? ??? ?ss.delStu();
?? ??? ??? ??? ??? ?System.out.println();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 3:
?? ??? ??? ??? ??? ?System.out.println("請(qǐng)輸入要修改的學(xué)生的學(xué)號(hào):");
?? ??? ??? ??? ??? ?ss.updateStu(scanner.next());
?? ??? ??? ??? ??? ?System.out.println();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 4:
?? ??? ??? ??? ??? ?System.out.println("請(qǐng)輸入要查詢的學(xué)生的學(xué)號(hào)(若為0,則查詢所有學(xué)生信息):");
?? ??? ??? ??? ??? ?ss.queryStuByStuNo(scanner.next());
?? ??? ??? ??? ??? ?System.out.println();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 0:
?? ??? ??? ??? ??? ?System.exit(0);//退出系統(tǒng)
?? ??? ??? ??? ??? ?ss.closeRs();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ?}
}

5.定義主方法,使用該系統(tǒng)

public class Main {

?? ?public static void main(String[] args) {
?? ??? ?SystemService ss = new SystemService();
?? ??? ?ss.serviceChoose();
?? ?}
?? ?
}

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

相關(guān)文章

  • RocketMQ中的消費(fèi)者啟動(dòng)流程解讀

    RocketMQ中的消費(fèi)者啟動(dòng)流程解讀

    這篇文章主要介紹了RocketMQ中的消費(fèi)者啟動(dòng)流程解讀,RocketMQ是一款高性能、高可靠性的分布式消息中間件,消費(fèi)者是RocketMQ中的重要組成部分,消費(fèi)者負(fù)責(zé)從消息隊(duì)列中獲取消息并進(jìn)行處理,需要的朋友可以參考下
    2023-10-10
  • Spring Cloud動(dòng)態(tài)配置刷新@RefreshScope與@Component的深度解析

    Spring Cloud動(dòng)態(tài)配置刷新@RefreshScope與@Component的深度解析

    在現(xiàn)代微服務(wù)架構(gòu)中,動(dòng)態(tài)配置管理是一個(gè)關(guān)鍵需求,Spring Cloud 提供了 @RefreshScope 注解,允許應(yīng)用在運(yùn)行時(shí)動(dòng)態(tài)更新配置,而無(wú)需重啟服務(wù),本文深入探析Spring Cloud動(dòng)態(tài)配置刷新@RefreshScope與@Component,感興趣的朋友一起看看吧
    2025-04-04
  • Guava自動(dòng)加載緩存LoadingCache使用實(shí)戰(zhàn)詳解

    Guava自動(dòng)加載緩存LoadingCache使用實(shí)戰(zhàn)詳解

    這篇文章主要為大家介紹了Guava自動(dòng)加載緩存LoadingCache使用實(shí)戰(zhàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Java系統(tǒng)環(huán)境變量配置全過(guò)程

    Java系統(tǒng)環(huán)境變量配置全過(guò)程

    本文介紹了如何配置Windows系統(tǒng)中的PATH和CLASSPATH環(huán)境變量,以及如何使用這些變量來(lái)運(yùn)行Java程序,步驟包括查看系統(tǒng)屬性、編輯環(huán)境變量、添加路徑、驗(yàn)證設(shè)置等,通過(guò)這些步驟,用戶可以永久性地保存PATH和CLASSPATH環(huán)境變量的設(shè)置,從而方便地運(yùn)行Java程序
    2024-11-11
  • Java四種常用線程池的詳細(xì)介紹

    Java四種常用線程池的詳細(xì)介紹

    今天小編就為大家分享一篇關(guān)于Java四種常用線程池的詳細(xì)介紹,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • java求數(shù)組最大值和最小數(shù)示例分享

    java求數(shù)組最大值和最小數(shù)示例分享

    這篇文章主要介紹了java求數(shù)組最大值和最小數(shù)示例,需要的朋友可以參考下
    2014-03-03
  • Java提取兩個(gè)字符串中的相同元素方法

    Java提取兩個(gè)字符串中的相同元素方法

    今天小編就為大家分享一篇Java提取兩個(gè)字符串中的相同元素方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • Java21增強(qiáng)對(duì)Emoji表情符號(hào)處理示例詳解

    Java21增強(qiáng)對(duì)Emoji表情符號(hào)處理示例詳解

    這篇文章主要為大家介紹了Java21增強(qiáng)對(duì)Emoji表情符號(hào)處理示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • Mybatis Log Plugin的使用方式

    Mybatis Log Plugin的使用方式

    這篇文章主要介紹了Mybatis Log Plugin的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java泛型常見(jiàn)面試題(面試必問(wèn))

    Java泛型常見(jiàn)面試題(面試必問(wèn))

    泛型在java中有很重要的地位,在面向?qū)ο缶幊碳案鞣N設(shè)計(jì)模式中有非常廣泛的應(yīng)用。java泛型知識(shí)點(diǎn)也是Java開(kāi)發(fā)崗位必問(wèn)的一個(gè)話題,今天小編就給大家普及下Java泛型常見(jiàn)面試題,感興趣的朋友一起看看吧
    2021-06-06

最新評(píng)論

临武县| 晋城| 忻州市| 吉首市| 枣强县| 吉木萨尔县| 承德县| 民县| 龙胜| 朔州市| 普陀区| 临洮县| 改则县| 高陵县| 萝北县| 玉屏| 宜州市| 长葛市| 太谷县| 霍城县| 曲水县| 时尚| 连平县| 嫩江县| 镇平县| 谢通门县| 葵青区| 涟水县| 丰台区| 惠东县| 开封市| 海南省| 白城市| 合川市| 龙门县| 隆尧县| 探索| 同江市| 长海县| 攀枝花市| 平凉市|