软概(lesson 2):课堂测试
一、測(cè)試題目
?
二、完成過(guò)程
1.設(shè)計(jì)思想
①連接mysql數(shù)據(jù)庫(kù)
②設(shè)計(jì)user類,增加參數(shù)
③設(shè)計(jì)add類,向數(shù)據(jù)庫(kù)內(nèi)增加內(nèi)容
④設(shè)計(jì)addInput頁(yè)面,完成錄入操作
⑤設(shè)計(jì)add頁(yè)面,接收錄入的參數(shù),并調(diào)用add類函數(shù)
2.源代碼
user.java
package xihuan;public class User {private String kcmc;private String rkjs;private String skdd;public String getKcmc() {return kcmc;}public void setKcmc(String kcmc) {this.kcmc = kcmc;}public String getRkjs() {return rkjs;}public void setRkjs(String rkjs) {this.rkjs = rkjs;}public String getSkdd() {return skdd;}public void setSkdd(String skdd) {this.skdd = skdd;}}add.java
package xihuan; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;public class add{public void add1(User user) {//獲得鏈接對(duì)象Connection connection = DBUtil.getConnection();//準(zhǔn)備sql語(yǔ)句String sql = "select count(*) from t_user where 'kcmc' = ?";//創(chuàng)建語(yǔ)句傳輸對(duì)象PreparedStatement preparedStatement = null;ResultSet resultSet = null;try {preparedStatement = connection.prepareStatement(sql);preparedStatement.setString(1, user.getKcmc());//接收結(jié)果集resultSet = preparedStatement.executeQuery();//遍歷結(jié)果集sql = "insert into t_user(kcmc,rkjs,skdd) value (?,?,?)";preparedStatement = connection.prepareStatement(sql);preparedStatement.setString(1, user.getKcmc());preparedStatement.setString(2, user.getRkjs());preparedStatement.setString(3, user.getSkdd());preparedStatement.executeUpdate();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally {//關(guān)閉資源DBUtil.close(resultSet);DBUtil.close(preparedStatement);DBUtil.close(connection);}} }DBUtil.java
package xihuan; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;public class DBUtil {public static Connection getConnection() {try {//1 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driver").newInstance();} catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}String user = "root";String password = "root";String url = "jdbc:mysql://localhost:3306/web1?useUnicode=true&characterEncoding=utf-8&useSSL=false";Connection connection = null;try {//2 創(chuàng)建鏈接對(duì)象connectionconnection = DriverManager.getConnection(url,user,password);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return connection;}//關(guān)閉資源的方法public static void close(Connection connection ) {try {if (connection != null) {connection.close();}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public static void close(PreparedStatement preparedStatement ) {try {if (preparedStatement != null) {preparedStatement.close();}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public static void close(ResultSet resultSet ) {try {if (resultSet != null) {resultSet.close();}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}UserException
package xihuan; public class UserException extends RuntimeException{public UserException() {super();// TODO Auto-generated constructor stub}public UserException(String arg0, Throwable arg1, boolean arg2, boolean arg3) {super(arg0, arg1, arg2, arg3);// TODO Auto-generated constructor stub}public UserException(String arg0, Throwable arg1) {super(arg0, arg1);// TODO Auto-generated constructor stub}public UserException(String arg0) {super(arg0);// TODO Auto-generated constructor stub}public UserException(Throwable arg0) {super(arg0);// TODO Auto-generated constructor stub}}addInput1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>用戶添加頁(yè)面</title> </head> <body><form action="add1.jsp" method="get"><table align="center" border="1"><tr ><td>課程名稱:</td><td><input type="text" name="kcmc"/></td></tr><tr><td>任課教師:</td><td><select name="rkjs"><option value="王建民">王建民</option><option value="劉丹">劉丹</option><option value="劉立嘉">劉立嘉</option><option value="王輝">王輝</option><option value="楊子光">楊子光</option> </select></td></tr><tr><td>上課地點(diǎn):</td><td><select name="skdd"><option value="基教">基教</option><option value="一教">一教</option><option value="二教">二教</option><option value="三教">三教</option></td><td><input type="text" name="jt"/></td></tr><tr align="center"><td colspan="2"><input type="submit" value="保存" /></td></tr></table></form> </body> </html>add1.jsp
<%@page import="xihuan.*"%> <%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <%//接受客戶端傳遞過(guò)來(lái)的參數(shù)String kcmc= request.getParameter("kcmc"); String rkjs= request.getParameter("rkjs");String skdd= request.getParameter("skdd");String jt= request.getParameter("jt");User f=new User();f.setKcmc(kcmc);f.setSkdd(skdd+jt);f.setRkjs(rkjs);add a = new add();a.add1(f); %><body>保存成功<br> </body> </html>三、結(jié)果顯示
三、psp0級(jí)
1.項(xiàng)目計(jì)劃總結(jié)
時(shí)間計(jì)劃:上課時(shí)間10點(diǎn)-10點(diǎn)40,下午2點(diǎn)-3點(diǎn),晚上6點(diǎn)-7點(diǎn)
內(nèi)容規(guī)劃:上午完成最基本的連接錄入,下午完成中間的異常情況,晚上撰寫博客園總結(jié)收獲
2.時(shí)間記錄日志
實(shí)際時(shí)間:10點(diǎn)開(kāi)始-10點(diǎn)43,下午1點(diǎn)42-2點(diǎn)24,晚上6點(diǎn)28-7點(diǎn)10,共計(jì)約2小時(shí)
內(nèi)容基本完成
3.缺陷記錄日志
①界面不美觀
②有一些異常處理沒(méi)有寫到,比如錄入為空時(shí)
?
四、實(shí)驗(yàn)總結(jié)
這次實(shí)驗(yàn)完成的很順,因?yàn)榍耙惶焱砩峡戳怂膫€(gè)多小時(shí)關(guān)于這方面的操作,主要是中間那部分選擇老師和地點(diǎn)的,我沒(méi)有按照老師的要求,而是做了一個(gè)下拉菜單,因?yàn)槲铱凑n程表都是可以選擇的,這樣更加方便一些。
?
轉(zhuǎn)載于:https://www.cnblogs.com/cairsha/p/7911522.html
總結(jié)
以上是生活随笔為你收集整理的软概(lesson 2):课堂测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数论中的偶数阶Abel群的阶
- 下一篇: Android开发(一):android