日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

学生体温打卡系统Java+MySQL

發布時間:2023/12/31 数据库 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 学生体温打卡系统Java+MySQL 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學生體溫打卡系統


//寫的很丑,方便給一個小朋友!
//去年寫的,自己也看不懂了,輕點罵
任務要求:
基本功能:
1、采用JAVA和數據庫知識完成此次實驗
2、實現學生的登錄
3、實現實時打卡檢測體溫
4、可保存體溫打卡記錄
5、可查看體溫打卡記錄
擴展功能:
1、用戶登錄后可查看打卡體溫和時間繪制成一條曲線
2、打卡時,自動獲取當前地理位置,使打卡體溫的表格信息更完善

package work;//LoginListener的類 import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;import javax.swing.JTextField;import java.awt.FlowLayout; import java.awt.event.ActionEvent;//監聽事件 //實現界面二,驗證用戶是否登錄成功,并自定義選擇打卡或者是查看 public class LoginListener implements ActionListener{String Stu_Id;Connection conn = null;Statement st=null;ResultSet rs = null;PreparedStatement ps=null;String url = "jdbc:mysql://localhost:3306/my1?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8";//確定用哪一個數據庫,此處我用的是my1String user = "root";String passwd = "wf@0819";//輸入我的MySQL賬號和密碼private javax.swing.JTextField number;//賬號輸入框對象private javax.swing.JTextField pswd;//密碼輸入框對象private javax.swing.JFrame login;//定義一個窗體對象public LoginListener(javax.swing.JFrame login,javax.swing.JTextField jt,JTextField textpass) {this.login=login;//獲取登錄界面this.number=jt;//獲取登錄界面中的賬號輸入框對象this.pswd=textpass;//獲取登錄界面中的密碼輸入框對象}public void actionPerformed(ActionEvent e) {String op1=null, op2=null;try {conn = DriverManager.getConnection(url, user, passwd);op1=number.getText();op2=pswd.getText();Stu_Id=number.getText(); String sql = "select * from student where stu_id =? and stu_pass=?";//查看表bodyclockps=conn.prepareStatement(sql);ps.setString(1, op1);ps.setString(2, op2);rs = ps.executeQuery();if(rs.next()){System.out.println("歡迎"+op1+",登錄成功!");javax.swing.JFrame jf=new javax.swing.JFrame();jf.setTitle("歡迎登錄學生打卡系統");jf.setSize(380,120);//只對頂級容器有效java.awt.FlowLayout fl=new java.awt.FlowLayout(FlowLayout.CENTER,1,2);jf.setLayout(fl);//設置頂級容器的布局為流式布局jf.setLocationRelativeTo(null);//居中jf.setResizable(false);java.awt.Dimension dim4=new java.awt.Dimension(100, 40);//按鈕的//大小 javax.swing.JButton button1=new javax.swing.JButton();javax.swing.JButton button2=new javax.swing.JButton();button1.setText("打卡");button2.setText("查看");button1.setPreferredSize(dim4);button2.setPreferredSize(dim4);jf.add(button1);jf.add(button2);button1.addActionListener(new ButtonAct1(Stu_Id));// 注冊給ButtonAct對象button2.addActionListener(new ButtonAct2(Stu_Id));// 注冊給//ButtonAct對象jf.setVisible(true);// 通過我們獲取的登錄界面對象,用dispose方法關閉它login.dispose();}else {System.out.println("學號或密碼輸入錯誤,登錄失敗!");javax.swing.JFrame jf=new javax.swing.JFrame();jf.setTitle("登陸失敗");jf.setSize(340,200);//只對頂級容器有效jf.setLocationRelativeTo(null);//居中jf.setResizable(false);jf.setVisible(true);}} catch (SQLException q) {q.printStackTrace();}finally{try{if(rs!= null){rs.close();rs = null;}if(ps!= null){ps.close();ps = null;}if(conn != null){conn.close();conn = null;}} catch(Exception w){w.printStackTrace();}}} } package work;import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.math.BigDecimal; import java.net.HttpURLConnection; import java.net.InetAddress; import java.net.URL; import java.net.UnknownHostException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.sql.Timestamp;import javax.swing.JLabel; import javax.swing.JTextField; //點擊確認·按鈕,將輸入的體溫和時間等信息存入到數據庫表中 class ButtonAct3 implements ActionListener {// 內部類2,按鈕處理String urlstr=null;String Stu_Id=null;String Loction=null;Connection conn = null;Statement st=null;ResultSet rs = null;PreparedStatement ps=null;String url = "jdbc:mysql://localhost:3306/my1?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8";//確定用哪一個數據庫,此處我用的是my1String user = "root";String passwd = "wf@0819";//輸入我的MySQL賬號和密碼private javax.swing.JTextField temp;//賬號輸入框對象private javax.swing.JTextField time;//密碼輸入框對象private javax.swing.JFrame login;//定義一個窗體對象public ButtonAct3(javax.swing.JFrame login,javax.swing.JTextField jt,JTextField textpass,String str) {this.login=login;//獲取登錄界面this.temp=jt;//獲取登錄界面中的賬號輸入框對象this.time=textpass;//獲取登錄界面中輸入框對象Stu_Id=str;}public void actionPerformed(ActionEvent e) {InetAddress addr = null;try {addr = InetAddress.getLocalHost();//獲取當前IP地址addr;} catch (UnknownHostException q) {// TODO 自動生成的 catch 塊q.printStackTrace();}String urlStr = "http://pv.sohu.com/cityjson?ie=utf-8&ip=addr.getHostAddress()"; String returnStr = getResult(urlStr, addr.getHostAddress(), "utf-8");if (returnStr != null) { int index ;for(int i=3;i>0;i--){index = returnStr.indexOf(":");returnStr = returnStr.substring(index + 1);}int leth=returnStr.length();returnStr = returnStr.substring(2,leth-3);Loction=returnStr;System.out.println("地址獲取成功!"); //獲取我的打卡地址}//獲取當前地址信息try {conn = DriverManager.getConnection(url, user, passwd);String sql = "insert into stuinfor values(null,?,?,?,?)";//注意這里的列的數量必須和我的表對應//影響的行數, ,如果大于0 表明操作成功。 否則失敗ps=conn.prepareStatement(sql);ps.setString(1, Stu_Id);ps.setBigDecimal(2,new BigDecimal(temp.getText()));ps.setTimestamp(3, Timestamp.valueOf(time.getText()));ps.setString(4, Loction);// System.out.println(Loction);int result;result = ps.executeUpdate();if(result >0 ){javax.swing.JFrame jf=new javax.swing.JFrame();jf.setTitle("打卡成功");jf.setSize(340,200);//只對頂級容器有效jf.setLocationRelativeTo(null);//居中JLabel labname=new JLabel();labname.setText("打卡成功了哦");jf.add(labname);jf.setResizable(false);jf.setVisible(true);//彈出小窗口,提示打卡成功了}else{javax.swing.JFrame jf=new javax.swing.JFrame();jf.setTitle("打卡失敗");jf.setSize(340,200);//只對頂級容器有效jf.setLocationRelativeTo(null);//居中jf.setResizable(false);jf.setVisible(true);//彈出小窗口,提示打卡失敗了}// TODO 自動生成的方法存根} catch (SQLException t) {// TODO 自動生成的 catch 塊t.printStackTrace();}finally{try{if(rs!= null){rs.close();rs = null;}if(ps!= null){ps.close();ps = null;}if(conn != null){conn.close();conn = null;}} catch(Exception u){u.printStackTrace();}}}private static String getResult(String urlStr, String content, String encoding) {// TODO 自動生成的方法存根URL url = null; HttpURLConnection connection = null; try { url = new URL(urlStr); connection = (HttpURLConnection) url.openConnection();// 新建連接實例 connection.setConnectTimeout(2000);// 設置連接超時時間,單位毫秒 connection.setReadTimeout(2000);// 設置讀取數據超時時間,單位毫秒 connection.setDoOutput(true);// 是否打開輸出流 true|false connection.setDoInput(true);// 是否打開輸入流true|false connection.setRequestMethod("POST");// 提交方法POST|GET connection.setUseCaches(false);// 是否緩存true|false connection.connect();// 打開連接端口 DataOutputStream out = new DataOutputStream(connection.getOutputStream());// 打開輸出流往對端服務器寫數據 out.writeBytes(content);// 寫數據,也就是提交你的表單 name=xxx&pwd=xxx out.flush();// 刷新 out.close();// 關閉輸出流 BufferedReader reader = new BufferedReader(new InputStreamReader( connection.getInputStream(), encoding));// 往對端寫完數據對端服務器返回數據 // ,以BufferedReader流來讀取 StringBuffer buffer = new StringBuffer(); String line = null; while ((line = reader.readLine()) != null) { buffer.append(line); } reader.close(); return buffer.toString(); } catch (IOException e) { e.printStackTrace(); } finally { if (connection != null) { connection.disconnect();// 關閉連接 } } return null; }} package work; //點擊查看按鈕監聽,將學生體溫-時間繪制成一條折線圖輸出 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.sql.Time; import java.awt.Color; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartFrame; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.CategoryPlot; import org.jfree.chart.plot.PlotOrientation; import org.jfree.data.category.CategoryDataset; import org.jfree.data.category.DefaultCategoryDataset; //點擊查看按鈕,將學生個人體溫信息用曲線圖描繪出來,加油!!!文鳳 package work; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.sql.Time; import java.awt.Color; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartFrame; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.CategoryPlot; import org.jfree.chart.plot.PlotOrientation; import org.jfree.data.category.CategoryDataset; import org.jfree.data.category.DefaultCategoryDataset;//點擊查看按鈕,將學生個人體溫信息用曲線圖描繪出來,加油!!!文鳳 public class ButtonAct2 implements ActionListener { static String Stu=null; static Connection conn = null; static Statement st=null; static ResultSet rs = null; static PreparedStatement ps=null; static String url = "jdbc:mysql://localhost:3306/my1?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8";//確定用哪一個數據庫,此處我用的是my1 static String user = "root"; static String passwd = "wf@0819";//輸入我的MySQL賬號和密碼public ButtonAct2(String stu_Id) {// TODO 自動生成的構造函數存根Stu=stu_Id;}@Overridepublic void actionPerformed(ActionEvent e) {// TODO 自動生成的方法存根CategoryDataset mDataset = GetDataset();JFreeChart mChart = ChartFactory.createLineChart("Temperature clock in curve",//圖名字"time",//橫坐標"temp",//縱坐標mDataset,//數據集PlotOrientation.VERTICAL,true, // 顯示圖例true, // 采用標準生成器false);// 是否生成超鏈接CategoryPlot mPlot = (CategoryPlot)mChart.getPlot();mPlot.setBackgroundPaint(Color.LIGHT_GRAY);mPlot.setRangeGridlinePaint(Color.BLUE);//背景底部橫虛線mPlot.setOutlinePaint(Color.RED);//邊界線ChartFrame mChartFrame = new ChartFrame("您的體溫打卡折線圖", mChart);mChartFrame.pack();mChartFrame.setVisible(true);}public static CategoryDataset GetDataset(){try {conn = DriverManager.getConnection(url, user, passwd);String sql = "select * from stuinfor where stu_id =? order by time ";//查看表bodyclock,條件查找且按時間順序排序ps=conn.prepareStatement(sql);ps.setString(1, Stu);rs = ps.executeQuery();DefaultCategoryDataset mDataset = new DefaultCategoryDataset();while(rs.next()){mDataset.addValue(rs.getBigDecimal("temp"), "My temperature curve",rs.getTimestamp("time")); //第一個表示縱軸表示體溫是temp,,,第二個表示時間是time}return mDataset;} catch (SQLException e1) {// TODO 自動生成的 catch 塊e1.printStackTrace();}return null;} }

總結

以上是生活随笔為你收集整理的学生体温打卡系统Java+MySQL的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人免费观看网址 | 国产又粗又长又硬免费视频 | 干美女少妇| 久久不雅视频 | 免费看欧美一级特黄a大片 国产免费的av | 在线看福利影 | 亚洲激情另类 | 金鱼妻日剧免费观看完整版全集 | 亚洲中文字幕97久久精品少妇 | 黑人极品videos精品欧美裸 | 怡红院成永久免费人全部视频 | 国产美女网站视频 | 精品毛片 | 国产精品极品白嫩在线 | 免费成人在线观看动漫 | 精品无码人妻一区二区三区 | 西西人体44www大胆无码 | 人与嘼交av免费 | 亚洲午夜久久久久久久久 | 视频二区在线 | 中文字幕人妻熟女在线 | 成人不卡视频 | 欧美性色视频 | 日本xxxx免费 | 色婷视频 | 亚洲欧洲国产日韩 | 久久久久久av | 123成人网 | 影音先锋成人资源网站 | 少妇色| 久久成人高清 | 日韩毛片在线视频 | www.蜜臀av| 五月天婷婷基地 | 天天射天天射天天射 | 亚洲精品第一 | 麻豆回家视频区一区二 | 日本成人午夜视频 | 日韩不卡一二区 | 温柔女教师在线观看 | 一级视频免费观看 | 在线超碰av| 华人永久免费 | 干干操操| 国产淫| 久草美女 | 秋霞影院一区二区 | 国产精品日韩一区二区 | 97av在线| 亚洲操操 | av在线伊人 | 男生和女生操操 | 少妇无码一区二区三区 | 18做爰免费视频网站 | 女性裸体视频网站 | 用力使劲高潮了888av | 黄色免费视频网站 | 色老头综合网 | 中国少妇乱子伦视频播放 | 91国产在线播放 | 免费三片在线视频 | 中国videosex高潮hd | 久热只有精品 | 丁香花激情网 | www国产精品内射老熟女 | 亚洲天堂日韩在线 | 国产乱人伦app精品久久 | 久久久久久av无码免费网站下载 | 午夜在线观看视频18 | 精品国产一区二区三区久久久蜜月 | 欧美日韩国产一级 | 激情婷婷丁香 | 亚洲激情综合网 | 国产农村妇女aaaaa视频 | 欧美三级在线看 | 国产精品一二三四 | 婷综合| 久久精品一区二区国产 | 国产精品无码一区二区桃花视频 | 成人免费毛片嘿嘿连载视频 | 91污网站 | 国产18禁黄网站免费观看 | 国产精品99久久久久久动医院 | 亲切的金子餐桌片段的金子 | 国产黄a三级三级看三级 | 亚洲特级片 | 四虎国产精品永久免费观看视频 | 黑人巨大精品欧美一区二区免费 | 国产三级全黄裸体 | 日日插插 | 污漫在线观看 | 人人干人人艹 | 成 年 人 黄 色 大 片大 全 | 神马久久春色 | 国产第九页 | 亚洲深爱 | 日韩一区二区视频在线播放 | 亚洲第一综合网站 | 日日艹夜夜艹 |