结对编程——自动生成数学试卷的系统(javaswing,mysql)by 陈松&刘宇航
本次结队编程的数学试卷对我是个很大的挑战
因为一开始考虑写网站,在网页中生成题目,毕竟选了javaee,可以一举两得,但是写着写着发现jsp语言有大量的标记和事件,画了两天时间,虽然收获不少,但是依然搞不定,所以只好转swing,而swing其实有点忘记,加上时间又短,做得也比较粗糙,队友刘宇航完成了数学试卷的具体实现,我主要做了验证码,界面,数据库连接登录注册这些杂活

输入手机号后就会点击获取验证码就会自动发到手机号,主要用的是阿里云的

这个界面确实有点丑,但是不是重点~
注册成功之后就会在mysql中就会出现相应的账号


只需要在框中输入数量,再点击下方的按钮,就可以生成对应的试卷
试卷生成的位置,在以用户名为名的文件夹里面,如果是刚注册的用户,就会给他自动创建文件夹
生成两份,一份是试卷,一份是答案



缺点:显然,UI界面并没有做好,主要是我队友负责的是试卷方面,而我身边并没有和我讨论的人,两个舍友都是数媒……而我喜欢去图书馆,基本上见不到同学,所以在写UI的时候特别花时间,网上的代码往往用很复杂的代码讲解一个很简单的概念,下次一定注意
第二:并没有实现边做题,边检查答案,在老师要求的功能下,也没有增加额外的功能
使用的技术:mysql,swing,
可以使用的技术:jsp+css+html, 线程(设置倒计时)
收获:本次代码,让我重新对swing有更多了解,比如三种布局,各种组件JTextField, JButton等等,
以及连接mysql所用的步骤,包括加载jdbc驱动,连接数据库,执行sql语句,设置结果集获取结果
java很多的方法,eval,getEngineByName登封
更重要的是,体会到jsp其实有很多东西的,不是一下子就能学会的
贴一段加载驱动的代码,这个没有什么原因,就是要这样写,规定好的
import java.sql.DriverManager;
import java.sql.ResultSet;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Statement;
public class ConnDB {
public Connection conn=null;
public PreparedStatement stmt=null;
public ResultSet rs=null;
User u=null;
//驱动类的类名
private static String dbClassName="com.mysql.jdbc.Driver";
private static String dbUrl="jdbc:mysql://localhost:3306/usercontroldb";
private static String username="root";
private static String password="这里是密码";
public boolean findUser(String un,String pwd) {
try {
conn=(Connection) DriverManager.getConnection(dbUrl, username, password);
String sql="SELECT * FROM user WHERE username=? and userpassword=?";
// String sql2="insert into user (username,userpassword) values ('cs','123')";
stmt=(PreparedStatement) conn.prepareStatement(sql);
stmt.setString(1,un);
stmt.setString(2,pwd);
rs=stmt.executeQuery();
if(rs.next()) {
u=new User();
//第一个是id
u.setUsername(rs.getString(2));
u.setPassword(rs.getString(3));
}
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
// System.out.println(u.getUsername()+u.getPassword()+"!");
if(u.getUsername()!=null&&u.getPassword()!=null) {
return true;
}
return false;
}
浙公网安备 33010602011771号