人口普查1
阿新 • • 發佈:2020-12-19
package tool; import java.sql.*; public class linkMYSQL { // MySQL 8.0 以上版本 - JDBC 驅動名及資料庫 URL static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver"; //*************************************************伺服器埠/資料庫名稱?useSS********************** static final String DataBasName="learnmysql";static final String URL_Fornt="jdbc:mysql://localhost:3307/"; static final String URL_Tail="?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC"; static final String URL =URL_Fornt+DataBasName+URL_Tail; // 資料庫的使用者名稱與密碼 static final String USER = "root";static final String PASS = "123456"; public static Connection link_mysql() { Connection conn=null; try { Class.forName(JDBC_DRIVER); System.out.println("連線資料庫..."); conn = DriverManager.getConnection(URL,USER,PASS); System.out.println("已連線資料庫"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return conn; } public static void stop_link_mysql(Connection conn) { if(conn!=null) try { conn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void stop_link_mysql(PreparedStatement pre) { if(pre!=null) try { pre.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void stop_link_mysql(Statement pre) { if(pre!=null) try { pre.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void stop_link_mysql(ResultSet res) { if(res!=null) try { res.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
package tool; import java.sql.*; import java.util.ArrayList; import java.util.List; public class operationMYSQL { final static String table_name=" people"; final static String table_key="(house,housesize,houseroom,name,id,sex,nation,edu)"; final static String table_value="values (?,?,?,?,?,?,?,?)"; /*******************************************************************/ public void addData(userData data) { Connection connection=linkMYSQL.link_mysql();//連結資料庫 PreparedStatement ps=null; try { String input="insert into "+table_name+table_key+table_value; ps=connection.prepareStatement(input); System.out.println("test use 1"); /********************************/ ps.setString(1, data.getHouse()); ps.setString(2, data.getHousesize()); ps.setString(3, data.getHouseroom()); ps.setString(4, data.getName()); ps.setString(5, data.getId()); System.out.println("test use 2"); ps.setString(6, data.getSex()); ps.setString(7, data.getNation()); ps.setString(8, data.getEdu()); /*****************************/ ps.executeUpdate(); System.out.println("資料匯入成功"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { linkMYSQL.stop_link_mysql(connection); linkMYSQL.stop_link_mysql(ps); } } public void deleteData(String id){ Connection connection=linkMYSQL.link_mysql();//連結資料庫 Statement ps=null; try { ps = connection.createStatement(); String output="delete from "+table_name+" where house='"+id+"';"; System.out.println("test delete 1"); ps.executeUpdate(output); System.out.println("刪除成功"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } linkMYSQL.stop_link_mysql(connection); linkMYSQL.stop_link_mysql(ps); } public void update(userData data) { Connection connection=linkMYSQL.link_mysql();//連結資料庫 Statement ps=null; try { ps = connection.createStatement(); String house= data.getHouse(); String hs= data.getHousesize(); String hr= data.getHouseroom(); String name= data.getName(); String id= data.getId(); String sex= data.getSex(); String nation= data.getNation(); String edu= data.getEdu(); String output="update"+table_name+" set where house='"+house+"',housesize='"+hs+"',houseroom='"+hr+"',name='"+name+"',id='"+id+"',sex='"+sex+"',nation='"+nation+"',edu='"+edu+"';"; ps.executeUpdate(output); System.out.println("更新成功"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { linkMYSQL.stop_link_mysql(connection); linkMYSQL.stop_link_mysql(ps); } } public List<userData> getAllData() { List<userData> date=new ArrayList<userData>(); Connection connection=linkMYSQL.link_mysql();//連結資料庫 Statement ps=null; try { ps = connection.createStatement(); String output="select * from "+table_name+";"; System.out.println("test use 1"); ResultSet rs = ps.executeQuery(output); System.out.println("test use 2"); while(rs.next()){ System.out.println("test use"); userData temp=new userData(rs.getString("house"),rs.getString("housesize"),rs.getString("houseroom"),rs.getString("name"),rs.getString("id"),rs.getString("sex"),rs.getString("nation"),rs.getString("edu")); System.out.println("戶別:"+temp.getHouse()+" 現住房面積:"+temp.getHousesize()+" 現住房房間數:"+temp.getHouseroom()+" 姓名:"+temp.getName()+" 身份證號:"+temp.getId()+" 性別:"+temp.getSex()+" 民族:"+temp.getNation()+" 受教育程度:"+temp.getEdu()); date.add(temp); } System.out.println("獲取成功"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { linkMYSQL.stop_link_mysql(connection); linkMYSQL.stop_link_mysql(ps); } return date; } public userData getData(String a) { //List<String> date=new ArrayList<String>(); userData save = null; Connection connection=linkMYSQL.link_mysql();//連結資料庫 Statement ps=null; try { ps = connection.createStatement(); String output="select * from "+table_name+" where house='"+a+"';"; System.out.println("test use 1"); ResultSet rs = ps.executeQuery(output); System.out.println("test use 2"); while(rs.next()){ save=new userData(rs.getString("house"),rs.getString("housesize"),rs.getString("houseroom"),rs.getString("name"),rs.getString("id"),rs.getString("sex"),rs.getString("nation"),rs.getString("edu")); System.out.println("獲取成功"); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { linkMYSQL.stop_link_mysql(connection); linkMYSQL.stop_link_mysql(ps); } return save; } public String get(String a) { //List<String> date=new ArrayList<String>(); String save = null; Connection connection=linkMYSQL.link_mysql();//連結資料庫 Statement ps=null; try { ps = connection.createStatement(); String output="select * from "+table_name+" where house like '"+a+"';"; System.out.println("test use 1"); ResultSet rs = ps.executeQuery(output); System.out.println("test use 2"); while(rs.next()){ save="姓名:"+rs.getString("house")+"性別:"+rs.getString("housesize")+"民族:"+rs.getString("edu")+"受教育程度"+rs.getString("nation")+"<br>"; System.out.println("獲取成功"); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { linkMYSQL.stop_link_mysql(connection); linkMYSQL.stop_link_mysql(ps); } return save; } }
package tool; public class userData { private String house; private String housesize; private String houseroom; private String name; private String id; private String sex; private String nation; private String edu; public userData(){ id="*"; name="***"; sex="male"; house="0"; houseroom="0"; housesize="0"; edu="*"; nation="*"; } public userData(String i,String na,String se,String ho,String hr,String hs,String ed,String n){ id=i; name=na; sex=se; house=ho; houseroom=hr; housesize=hs; edu=ed; nation=n; } public String getEdu() { return edu; }public String getHouse() { return house; }public String getHouseroom() { return houseroom; }public String getHousesize() { return housesize; }public String getId() { return id; }public String getName() { return name; }public String getNation() { return nation; }public String getSex() { return sex; }public void setEdu(String edu) { this.edu = edu; }public void setHouse(String house) { this.house = house; }public void setHousesize(String housesize) { this.housesize = housesize; }public void setHouseroom(String houseroom) { this.houseroom = houseroom; }public void setId(String id) { this.id = id; }public void setName(String name) { this.name = name; }public void setNation(String nation) { this.nation = nation; }public void setSex(String sex) { this.sex = sex; } }
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>資訊錄入</title> </head> <body> <h3>請選擇</h3> <h4>1.查詢資訊</h4> <script type="text/javascript"> function myfuc(){ window.location.href='查詢.jsp'; } </script> <button onclick="myfuc()">確定</button> <h4>2.資訊登記</h4> <script type="text/javascript"> function myfuc1(){ window.location.href='登記.jsp'; } </script> <button onclick="myfuc1()">確定</button> <h4>3.資訊修改</h4> <script type="text/javascript"> function myfuc2(){ window.location.href='修改.jsp'; } </script> <button onclick="myfuc2()">確定</button> <h4>4.資訊刪除</h4> <script type="text/javascript"> function myfuc3(){ window.location.href='刪除.jsp'; } </script> <button onclick="myfuc3()">確定</button> </body> </html>
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>刪除</title> </head> <body> <h3>輸入要查詢的關鍵詞:</h3> <form action="查詢.jsp" method="get"> <input type="text" name="name"> <input type="submit" value="確定刪除"><br> </form> <br> <script type="text/javascript"> function myfuc3(){ window.location.href='顯示全部資訊.jsp'; } </script> <button onclick="myfuc3()">顯示全部資訊</button> <script type="text/javascript"> function myfuc3(){ window.location.href='人口普查系統.jsp'; } </script> <button onclick="myfuc3()">返回總頁面</button> <% operationMYSQL get=new operationMYSQL(); if(request.getParameter("name")!=null){ String t=get.get(request.getParameter("name")); out.println(t); } %> </body> </html>
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>錄入</title> </head> <body> <h3>輸入要錄入的學生資訊;</h3> <form action="登記.jsp" method="get"> 戶別:<input type="radio" name="house" value="家庭戶">家庭戶 <input type="radio" name="house" value="集體戶">集體戶<br> 現住房面積:<input type="number" name="housesize" min="0"><br> 現住房房間數:<input type="number" name="houseroom" min="0"><br> 姓名:<input type="text" name="name" ><br> 身份證:<input type="text" name="id"><br> 性別:<input type="radio" name="sex" value="male">Male <input type="radio" name="sex" value="female">Female<br> 民族:<input type="text" name="nation" ><br> 受教育程度:<input list="edus" name="edu"> <datalist id="edus"> <option value="小學" > <option value="初中" > <option value="高中" > <option value="大專" > <option value="大學本科" > <option value="碩士" > <option value="博士" > </datalist><br> <input type="submit" value="確定"> </form> <script type="text/javascript"> var cardId=/^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|31)|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}([0-9]|x|X)$/; var aa = '<%=(String)request.getParameter("id")%>'; if(cardId.test(aa)){ console.log("正確") </script> <%System.out.println(request.getParameter("house")+request.getParameter("housesize")+request.getParameter("houseroom")+request.getParameter("name")+request.getParameter("id")+request.getParameter("sex")+request.getParameter("nation")+request.getParameter("edu")); userData save=new userData(request.getParameter("house"),request.getParameter("housesize"),request.getParameter("houseroom"),request.getParameter("name"),request.getParameter("id"),request.getParameter("sex"),request.getParameter("nation"),request.getParameter("edu")); operationMYSQL add=new operationMYSQL(); add.addData(save); %> <script type="text/javascript"> }else{ console.log("格式不正確") } </script> <script type="text/javascript"> function myfuc3(){ window.location.href='人口普查系統.jsp'; } </script> <button onclick="myfuc3()">點選返回主頁面</button> </body> </html>
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>刪除</title> </head> <body> <h3>輸入要刪除的戶主姓名:</h3> <form action="刪除.jsp" method="get"> <input type="text" name="name"> <input type="submit" value="確定刪除"><br> </form> <% String name=null; userData pa=new userData(); operationMYSQL get=new operationMYSQL(); if(request.getParameter("name")!=null){ name=request.getParameter("name"); pa=get.getData(name); out.println("戶別:"+pa.getHouse()+" 現住房面積:"+pa.getHousesize()+" 現住房房間數:"+pa.getHouseroom()+" 姓名:"+pa.getName()+" 身份證號:"+pa.getId()+" 性別:"+pa.getSex()+" 民族:"+pa.getNation()+" 受教育程度:"+pa.getEdu()); %> <script type="text/javascript"> window.alert(確定要刪除); </script> <% get.deleteData(name); } else{ %> <script type="text/javascript"> window.alert(賬號或密碼為空); </script> <% } %><br> <script type="text/javascript"> function myfuc3(){ window.location.href='人口普查系統.jsp'; } </script> <button onclick="myfuc3()">返回總頁面</button> </body> </html>
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>all</title> </head> <body> <% List<userData>date=new ArrayList<userData>(); operationMYSQL get=new operationMYSQL(); date=get.getAllData(); userData pa=new userData(); for(int i=0;i<=date.size();i++){ pa=date.get(i); out.println("戶別:"+date.get(i).getHouse()+" 現住房面積:"+date.get(i).getHousesize()+" 現住房房間數:"+date.get(i).getHouseroom()+" 姓名:"+date.get(i).getName()+" 身份證號:"+date.get(i).getId()+" 性別:"+date.get(i).getSex()+" 民族:"+date.get(i).getNation()+" 受教育程度:"+date.get(i).getEdu()); } %> <script type="text/javascript"> function myfuc3(){ window.location.href='人口普查系統.jsp'; } </script> <button onclick="myfuc3()">點選返回主頁面</button> </body> </html>
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>修改</title> </head> <body> <h3>輸入要修改的戶主名:</h3> <form action="執行修改.jsp" method="get"> <input type="text" name="name"> <input type="submit" value="確定刪除"><br> </form> <% String name=null; userData pa=new userData(); operationMYSQL get=new operationMYSQL(); if(request.getParameter("name")!=null){ name=request.getParameter("name"); pa=get.getData(name); if(pa!=null){ out.println("戶別:"+pa.getHouse()+" 現住房面積:"+pa.getHousesize()+" 現住房房間數:"+pa.getHouseroom()+" 姓名:"+pa.getName()+" 身份證號:"+pa.getId()+" 性別:"+pa.getSex()+" 民族:"+pa.getNation()+" 受教育程度:"+pa.getEdu()); %><h3>輸入要錄入的學生資訊;</h3> <form action="登記.jsp" method="get"> 戶別:<input type="radio" name="house" value="家庭戶">家庭戶 <input type="radio" name="house" value="集體戶">集體戶<br> 現住房面積:<input type="number" name="housesize" min="0"><br> 現住房房間數:<input type="number" name="houseroom" min="0"><br> 姓名:<input type="text" name="name" ><br> 身份證:<input type="text" name="id"><br> 性別:<input type="radio" name="sex" value="male">Male <input type="radio" name="sex" value="female">Female<br> 民族:<input type="text" name="nation" ><br> 受教育程度:<input list="edus" name="edu"> <datalist id="edus"> <option value="小學" > <option value="初中" > <option value="高中" > <option value="大專" > <option value="大學本科" > <option value="碩士" > <option value="博士" > </datalist><br> <input type="submit" value="確定"> </form> <script type="text/javascript"> var cardId=/^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|31)|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}([0-9]|x|X)$/; var aa = '<%=(String)request.getParameter("id")%>'; if(cardId.test(aa)){ console.log("正確") }</script> <% get.update(pa); } }%> <br> <script type="text/javascript"> function myfuc3(){ window.location.href='人口普查系統.jsp'; } </script> <button onclick="myfuc3()">返回總頁面</button> </body> </html>
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>查詢</title> </head> <body> <% String name=null; userData pa=new userData(); operationMYSQL get=new operationMYSQL(); if(request.getParameter("name")!=null){ name=request.getParameter("name"); pa=get.getData(name); out.println("戶別:"+pa.getHouse()+" 現住房面積:"+pa.getHousesize()+" 現住房房間數:"+pa.getHouseroom()+" 姓名:"+pa.getName()+" 身份證號:"+pa.getId()+" 性別:"+pa.getSex()+" 民族:"+pa.getNation()+" 受教育程度:"+pa.getEdu()); %> <script type="text/javascript"> window.alert(確定要刪除); </script> <% get.deleteData(name); } else{ %> <script type="text/javascript"> window.alert(賬號或密碼為空); </script> <% } %><br> <script type="text/javascript"> function myfuc3(){ window.location.href='人口普查系統.jsp'; } </script> <button onclick="myfuc3()">返回總頁面</button> </body> </html>
<!DOCTYPE html> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*"%> <%@page import="tool.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>錄入</title> </head> <body> <h3>輸入要錄入的學生資訊;</h3> <form action="執行修改.jsp" method="get"> 戶別:<input type="radio" name="house" value="家庭戶">家庭戶 <input type="radio" name="house" value="集體戶">集體戶<br> 現住房面積:<input type="number" name="housesize" min="0"><br> 現住房房間數:<input type="number" name="houseroom" min="0"><br> 姓名:<input type="text" name="name" ><br> 身份證:<input type="text" name="id"><br> 性別:<input type="radio" name="sex" value="male">Male <input type="radio" name="sex" value="female">Female<br> 民族:<input type="text" name="nation" ><br> 受教育程度:<input list="edus" name="edu"> <datalist id="edus"> <option value="小學" > <option value="初中" > <option value="高中" > <option value="大專" > <option value="大學本科" > <option value="碩士" > <option value="博士" > </datalist><br> <input type="submit" value="確定"> </form> <script type="text/javascript"> var cardId=/^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|31)|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}([0-9]|x|X)$/; var aa = '<%=(String)request.getParameter("id")%>'; if(cardId.test(aa)){ console.log("正確") </script> <%System.out.println(request.getParameter("house")+request.getParameter("housesize")+request.getParameter("houseroom")+request.getParameter("name")+request.getParameter("id")+request.getParameter("sex")+request.getParameter("nation")+request.getParameter("edu")); userData save=new userData(request.getParameter("house"),request.getParameter("housesize"),request.getParameter("houseroom"),request.getParameter("name"),request.getParameter("id"),request.getParameter("sex"),request.getParameter("nation"),request.getParameter("edu")); operationMYSQL add=new operationMYSQL(); add.update(save); %> <script type="text/javascript"> }else{ console.log("格式不正確") } </script> <script type="text/javascript"> function myfuc3(){ window.location.href='人口普查系統.jsp'; } </script> <button onclick="myfuc3()">點選返回主頁面</button> </body> </html>