Javaweb初试——选课系统

题目:

就是制作一个界面将课程的名称,任课教师,课程教室等信息输入到界面框中,然后存入数据库。(教师信息和教室信息有限定信息)

题目如下:

在后台数据库中建立相应的表结构存储课程信息。

实现新课程添加的功能。 要求判断任课教师为王建民、刘立嘉、刘丹、王辉、杨子光五位教师的其中一位。

要求上课地点开头为“一教、二教、三教、基教”中的一种。

实现数据存储功能。

要求:

(1)新课程信息必须唯一,如有重复,提示用户“课程名称重复,重新录入”;

(2)要求判断任课教师为王建民、刘立嘉、刘丹、王辉、杨子光五位教师的其中一位。

(3)要求上课地点开头为“一教、二教、三教、基教”中的一种;

(4)将新课程信息添加入库。

需要准备的软件:编程:eclipse

服务器:Tomcat

数据库:Mysql

连接教程参看菜鸟教程

数据库设计

课程表:课程名称,任课教师,上课地点

代码设计:分四层

bean层:课程类:课程名称,任课教师,上课地点

dao层:需要用到的函数,本题只需要添加和浏览

servlet层:连接dao层和数据库

util层:DBUtil类连接数据库

jsp界面:

添加界面

调取数据库

源代码:

bean层

package bean;

public class Lesson {
    private int id;
    private String lessonname;
    private String lessonteacher;
    private String lessonplace;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getLessonname() {
        return lessonname;
    }
    public void setLessonname(String lessonname) {
        this.lessonname = lessonname;
    }
    public String getLessonteacher() {
        return lessonteacher;
    }
    public void setLessonteacher(String lessonteacher) {
        this.lessonteacher = lessonteacher;
    }
    public String getLessonplace() {
        return lessonplace;
    }
    public void setLessonplace(String lessonplace) {
        this.lessonplace = lessonplace;
    }
}

dao层:

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import DBUtil;
import HaveClass;


public class ClassDaoImpl {

    public void add(HaveClass claz)
    {
        //获得链接对象
        Connection connection = DBUtil.getConnection();

        //准备sql语句
        String sql = "insert into t_class(teachername,classname,place) values(?,?,?)";
        PreparedStatement preparedStatement = null;
        try {
        //创建语句传输对象
        preparedStatement = connection.prepareStatement(sql);

        preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setString(1, claz.getTeachername());
        preparedStatement.setString(2, claz.getClassname());
        preparedStatement.setString(3, claz.getPlace());
        preparedStatement.executeUpdate();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            //关闭资源

            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }

    }


}

servlet层:函数只有两个可以和dao层放一起

util层:

package com.jaovo.msg.Util;

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 加载驱动
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        String user = "root";
        String password = "root";
        String url = "jdbc:mysql://localhost:8080/test";
        Connection connection = null;
        try {
            //2 创建链接对象connection
             connection = DriverManager.getConnection(url,user,password);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return connection;
    }

    //关闭资源的方法
    public static void close(Connection connection ) {
        try {
            if (connection != null) {
                connection.close();
            }

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(PreparedStatement preparedStatement ) {
        try {
            if (preparedStatement != null) {
                preparedStatement.close();
            }

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(ResultSet resultSet ) {
        try {
            if (resultSet != null) {
                resultSet.close();
            }

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}
原文地址:https://www.cnblogs.com/zyljal/p/14195079.html