人口普查系統實現過程

2022-09-10 03:24:14 字數 4108 閱讀 6979

這次任務是實現乙個簡單的人口普查系統,功能是從介面輸入人口資訊,修改人口資訊,刪除人口資訊,查詢人口資訊,以及瀏覽已有的人口資訊。

剛開始也是不知道從**下手,東邊學一點,西邊學一點,但是連不起來。好在,臨近期末的時候,終於把所有的東西連在了一起,實現了乙個簡單的增刪改查,不至於老師一發布測試,倆眼就黑了。

對於乙個j**aweb專案來說,首先要具備j**a編譯器,tomcat,資料庫,最好有資料庫視覺化軟體。然後就是程式設計,我把它理解為三個板塊,分別為前端,中端,後端。大體思路就是,從前端輸入東西,然後由前端傳到中端,也就是servlet介面,再由selvlet傳到後端進行操作。前端一般就是jsp介面,中端就是乙個srevlet裡面包括各個函式,後端就是實現功能的函式。在函式部分,通常分為4個包,bean包包括類的封裝,dao包包括對資料庫的操作,dbutil包是資料庫的連線,servlet包是中端操作。

先建立乙個web專案,file->new->other->dynamic web project

然後先來看一下總體的各個頁面的布局:

前端介面建立jsp file,以我的命名講解,命名不規範,主要講的是思路:

這個是對資料庫進行的操作,所以首先把連線資料庫的函式完成,在dbutil中建立類:

**://db是資料庫的名稱,user是資料庫使用者名稱,pastword是資料庫密碼

private static string url="jdbc:mysql://localhost:3306/db?servertimezone=utc";

private static string user="";

private static string pastword="";

private static string jdbcname="com.mysql.cj.jdbc.driver";

private connection con=null;

public static connection getconnection() catch (exception e)

return con;

}public static void close(connection con) catch (sqlexception e)

}public static void close(statement state, connection conn) catch (sqlexception e)

}if(conn!=null) catch (sqlexception e) }}

public static void close(resultset rs, statement state, connection conn) catch (sqlexception e)

}if(state!=null) catch (sqlexception e)

}if(conn!=null) catch (sqlexception e) }}

然後寫前端介面,因為由5個功能,所以我第乙個介面(login.jsp)建立5個鏈結,分別鏈結到各個實現功能的介面。

第乙個介面:人口增加資訊介面(peopledengji.jsp),錄入所需要的各個資訊,介面設計自己設計。

**:效果展示:

提交到servlet中(servlet是建立servlet,不是建立包,在建立類)在servlet中寫增加資訊的**實現:

request.setcharacterencoding("utf-8");

//從前端介面傳入資料

string hubie=request.getparameter("hubie");

string haoma=request.getparameter("haoma");

string minzu=request.getparameter("minzu");

string leixing=request.getparameter("leixing");

string mianji=request.getparameter("mianji");

string shuliang=request.getparameter("shuliang");

string xingming=request.getparameter("xingming");

string xingbie=request.getparameter("xingbie");

string jiaoyu=request.getparameter("jiaoyu");

//封裝到類中

peopledengji people=new peopledengji(hubie,leixing,mianji,shuliang,xingming,haoma,xingbie,minzu,jiaoyu);

//用creatdao類中add方法,在add中實現傳入資料庫

creatdao.add(people);

creatdao中add方法:

public static void add(peopledengji people) catch (sqlexception e) finally

}第2個jsp介面:人口資訊修改

**:效果:

傳到servlet中:

在後端updatedao中修改資料庫資訊:

public static void update(string xingming,string haoma,string xingbie,string minzu,string jiaoyu) catch(sqlexception e) finally

}第三個jsp介面:人口刪除介面

效果:

servlet中方法:

shandao方法:

public static void shanchu(string xingming) catch(sqlexception e) finally

}第四個介面,查詢介面

戶別住房型別

住房面積

住房數量

姓名號碼

性別民族

受教育程度

$.ajax(

liulan方法:

connection connection=dbutil.getconnection();

preparedstatement preparedstatement = null;

resultset rs=null;

listlist=new arraylist();

string sql="select * from people";

try

}catch(sqlexception e) finally

return list;

}以上就是功能的實現,資料庫的連線可以去菜鳥j**a裡學習,資料庫操作去菜鳥搜尋sql學習,增刪改查**比較簡單,但是要把他顯示到前端相對有點難,但同時方法也有很多,我用的是ajax方法,可以自己選擇方法。同時還要匯入包,資料庫匯入mysql包,在lib下,別的就是根據顯示介面的方法不同,用到的東西不一樣,這個需要學一下。

人口普查 20

題目描述 某城鎮進行人口普查,得到了全體居民的生日。現請你寫個程式,找出鎮上最年長和最年輕的人。這裡確保每個輸入的日期都是合法的,但不一定是合理的 假設已知鎮上沒有超過200歲的老人,而今天是2014年9月6日,所以超過200歲的生日和未出生的生日都是不合理的,應該被過濾掉。輸入描述 輸入在第一行給...

人口普查 20

題目描述 某城鎮進行人口普查,得到了全體居民的生日。現請你寫個程式,找出鎮上最年長和最年輕的人。這裡確保每個輸入的日期都是合法的,但不一定是合理的 假設已知鎮上沒有超過200歲的老人,而今天是2014年9月6日,所以超過200 歲的生日和未出生的生日都是不合理的,應該被過濾掉。輸入描述 輸入在第一行...

PTA人口普查

某城鎮進行人口普查,得到了全體居民的生日。現請你寫個程式,找出鎮上最年長和最年輕的人。這裡確保每個輸入的日期都是合法的,但不一定是合理的 假設已知鎮上沒有超過 200 歲的老人,而今天是 2014 年 9 月 6 日,所以超過 200 歲的生日和未出生的生日都是不合理的,應該被過濾掉。這個是我最開始...