JAVA学生管理系统期末大作业

合集下载

Java大作业-简单的学籍管理系统

Java大作业-简单的学籍管理系统

上海电力学院期末作业:简单的学籍管理系统课程: Web 应用程序设计院系:电气工程学院_____________________专业:电力系统及其自动化_______________学生姓名:张富杰学号:17103060指导教师:______________ 曹渝昆___________________2017年1月6日目录一、设计思路 (3)二具体实现......................................................................... 3.. .三运行调试与分析......................................................................... 3.. .四设计体会与小结......................................................................... 8.. .五程序代码......................................................................... 8.. .、设计思路随着社会经济的发展,入学的同学越来越多,为方便对同学学籍信息的的管理,设计学籍管理软件来管理本班级同学的学籍信息。

该软件应支持添加、删除、修改、查询功能。

查询方式主要是支持学号查询,例如:输入“1”,则显示该学生的信息。

运用流式、卡片、整体布局方式对系统的主界面和各功能界面进行设计;通过连接数据库的方式来实现对数据的存储;各功能实现时访问数据库,并对数据信息进行读取,运用Java 语句对其进行输出,学号查询时显示在文本框中;系统提示功能用来提醒用户的错误操作和输入时的错误信息,提醒用户进行改正。

二具体实现1.向班级里插入一个学生,但必须是插在已经建立的班级里。

2.输入学生信息,建立一个班级。

Java大作业_学生成绩管理

Java大作业_学生成绩管理

Java大作业_学生成绩管理本科学生综合性实验报告课程名称:Java开发技术项目名称:学生成绩治理系统学生姓名学号指导教师开课学期2011 至2012学年第一学期完成时刻2011 年1 月 3 日名目摘要 21 项目研究开发的背景及意义21.1 本课题设计学术价值、理论意义和实践意义 2 1.2 本课题设计拟研究的要紧咨询题21.3重点和难点31.4 研究方法、预期效益31.5 本项目创新点和特色32 需求分析32.1 开发背景 32.2 项目目标 42.3 运行环境 52.4任务讲明书53 技术路线及关键技术73.1系统总体功能图73.2学生成绩治理系统的功能模块简介:83.3 系统运用的要紧技术: 293.4数据库设计293.5连接数据库324 测试报告及系统评判334.1 系统简介:334.2 系统特色及缺点:345 系统使用讲明345.1 用户操作指南: 346 个人感受及收成367大作业总结 37感谢378 参考文献:38摘要人类已进入21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,专门是信息技术和网络技术的讯速进展和广泛应用,对社会的政治,经济,军事,文化等领域产生越来越深刻.学生成绩治理系统是一个教育单位不可缺少的部分,它的内容关于学校的决策者和治理者来讲都至关重要。

此次大作业的学生成绩治理系统是用java编程+SQL server 2000数据库+SQL查询语言实现的.重点介绍了学生成绩治理系统的实现过程:包括系统需求分析、功能设计、数据库设计、系统实现、系统测试和调试等。

关键字:成绩治理统计信息治理数据库1 项目研究开发的背景及意义1.1 本课题设计学术价值、理论意义和实践意义现在的社会知识经济在世界经济进展的地位越来越高,国家综合国力和国际竞争能力越来越取决于教育进展,科学技术和知识创新的水平,教育在经济和社会进展过程中将出现出越来越突出的重要作用。

学生成绩治理系统是一个教育单位不可缺少的部分,它的内容关于学校的决策者和治理者来讲都至关重要,因此学生成绩治理系统应该能够为用户提供充足的信息和快捷的查询手段。

学生管理系统java作业

学生管理系统java作业

学生管理系统java作业学生管理系统是一个集合管理学生信息、课程信息、教师信息和成绩信息的软件系统。

在学校中,学生管理是一个非常重要的环节,它不仅可以帮助学校更好地了解学生情况,优化学生管理,也可以方便教师更好的掌握学生的学习情况,为学生的学习提供更好的保障。

本文将围绕在Java编程语言下实现学生管理系统的作业展开讲解。

一、学生管理系统设计1、需求分析首先,我们需要对学生管理系统进行一个需求分析,明确需要实现的功能和操作流程,定义系统的架构,以便我们进行具体的设计和编写。

(2)课程信息管理:包括课程的名称、编号、学分、教师编号等。

(4)成绩信息管理:包括学生学号、课程编号、成绩等。

2、系统设计学生管理系统的设计包括数据库设计和界面设计。

(1)数据库设计根据需求,我们可以设计四个表格:学生信息表、课程信息表、教师信息表和成绩信息表,分别存储相关的信息。

其中,学生信息表与成绩信息表之间存在一对多的关系,课程信息表和教师信息表之间也存在一对多的关系。

(2)界面设计在设计界面时,我们需要考虑到用户体验和易用性,保证用户方便的操作。

界面设计不仅需要美观,还需要易于操作和维护,设计人员需要根据实际需求进行选择和设计。

二、学生管理系统实现1、数据库设计我们可以选择使用MySQL数据库存储学生信息、课程信息、教师信息和成绩信息,以下是四个表格的具体设计。

(1)学生信息表表格名:stu_information字段名数据类型stu_id varchar(12)stu_name varchar(20)stu_gender varchar(2)class_name varchar(40)stu_native varchar(60)stu_tel varchar(20)(2)课程信息表表格名:course_information 字段名数据类型course_id varchar(12) course_name varchar(40) course_credit varchar(4) teacher_id varchar(12)(3)教师信息表表格名:tea_information字段名数据类型teacher_id varchar(12) teacher_name varchar(20) teacher_gender varchar(2) teacher_degree varchar(20) teacher_course varchar(40) teacher_tel varchar(20)(4)成绩信息表表格名:score_information字段名数据类型stu_id varchar(12)course_id varchar(12)score varchar(6)2、界面设计学生管理系统包括学生信息管理、教师信息管理、课程信息管理和成绩信息管理。

java学生管理系统大作业代码

java学生管理系统大作业代码

java学生管理系统大作业代码Java学生管理系统是一个基于Java语言开发的学生信息管理系统,用于方便学校教务人员进行学生信息的管理和查询。

以下是该系统的代码实现。

1. 登录界面代码实现该界面是用户登录的入口,用户需要输入用户名和密码才能进入系统。

```javaimport javax.swing.*;import java.awt.*;import java.awt.event.*;public class Login extends JFrame implements ActionListener {JLabel lb1, lb2, lb3;JTextField txtName;JPasswordField txtPwd;JButton btnOK, btnCancel;String userName = "admin";// 默认用户名String password = "123456";// 默认密码public Login() {setTitle("学生信息管理系统登录");// 设置窗体标题setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设置窗体关闭方式setSize(350, 200);// 设置窗体大小setLocationRelativeTo(null);// 设置居中显示setLayout(new BorderLayout());JPanel pNorth = new JPanel();lb1 = new JLabel("欢迎使用学生信息管理系统", JLabel.CENTER); lb1.setFont(new Font("微软雅黑", Font.BOLD, 20));pNorth.add(lb1);add(pNorth, BorderLayout.NORTH);JPanel pCenter = new JPanel();pCenter.setLayout(new GridLayout(3, 2));lb2 = new JLabel("用户名:", JLabel.RIGHT);pCenter.add(lb2);txtName = new JTextField(20);pCenter.add(txtName);lb3 = new JLabel("密码:", JLabel.RIGHT);pCenter.add(lb3);txtPwd = new JPasswordField(20);txtPwd.setEchoChar('*');// 设置密码框的回显字符pCenter.add(txtPwd);btnOK = new JButton("登录");pCenter.add(btnOK);btnCancel = new JButton("取消");pCenter.add(btnCancel);add(pCenter, BorderLayout.CENTER);btnOK.addActionListener(this);btnCancel.addActionListener(this);setVisible(true);// 显示窗体}public void actionPerformed(ActionEvent e) {if (e.getSource() == btnOK) {String name = txtName.getText();// 获取用户名String password = new String(txtPwd.getPassword());// 获取密码 if (name.equals(userName) && password.equals(password)) {setVisible(false);new MainFrame();} else {JOptionPane.showMessageDialog(Login.this, "用户名或密码错误!", "登录失败", JOptionPane.ERROR_MESSAGE);}} else if (e.getSource() == btnCancel) {txtName.setText("");txtPwd.setText("");}}public static void main(String[] args) {new Login();}}```2. 主界面代码实现该界面是系统的主界面,包含了菜单栏、工具栏和表格显示区域。

java程序设计大作业报告

java程序设计大作业报告

Java程序设计大作业报告1. 引言本报告是关于Java程序设计大作业的报告,旨在总结和描述本次大作业的设计和实现过程。

本次大作业的主题是设计一个学生成绩管理系统。

2. 需求分析在开始设计和实现学生成绩管理系统之前,首先需要明确系统的需求。

本次大作业的学生成绩管理系统需要包含以下功能: - 学生信息管理:包括学生的基本信息和成绩信息。

- 成绩录入和查询:教师能够录入学生的成绩,并能够查询和修改学生的成绩信息。

- 成绩统计和分析:系统能够对学生的成绩进行统计和分析,例如计算平均分、最高分、最低分等。

3. 系统设计根据需求分析的结果,我们可以开始进行系统设计。

以下是学生成绩管理系统的设计步骤:3.1 类设计首先,我们需要定义学生类(Student)和成绩类(Grade)来管理学生和成绩信息。

学生类包含学生的基本信息,如学号、姓名、性别等,成绩类包含学生的各科成绩信息。

此外,我们还需要设计一个教师类(Teacher),用于录入和查询学生的成绩信息。

3.2 数据结构设计在设计学生成绩管理系统时,我们需要选择适合的数据结构来存储和管理学生和成绩信息。

例如,可以使用数组、链表或哈希表等数据结构来存储学生和成绩信息,根据具体需求进行选择。

3.3 用户界面设计学生成绩管理系统需要有一个用户友好的界面,方便教师进行操作。

可以使用图形界面(GUI)或命令行界面(CLI)来实现用户界面。

4. 系统实现在完成系统设计后,我们可以开始实现学生成绩管理系统。

4.1 学生类实现首先,我们需要实现学生类。

学生类应该包含学生的基本信息和成绩信息的操作方法,例如获取学生的基本信息、添加和修改成绩等。

4.2 成绩类实现接下来,我们需要实现成绩类。

成绩类应该包含学生的各科成绩信息,并提供计算平均分、最高分、最低分等操作方法。

4.3 教师类实现然后,我们需要实现教师类。

教师类应该包含录入和查询学生成绩的操作方法,例如录入学生成绩、查询学生成绩等。

JAVA J2EE大作业——学生信息管理系统

JAVA J2EE大作业——学生信息管理系统

JA V A & J2EE大作业——学生信息管理系统/src/beanFind.javapackage bean;import java.io.File;import java.io.IOException;import java.util.Iterator;import javax.servlet.jsp.JspWriter;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.SAXReader;public class Find {public String[] find(String id,String name,JspWriter out,String studentInfoPath) throws DocumentException, IOException{SAXReader saxReader = new SAXReader();Document document = saxReader.read(new File(studentInfoPath));Element root = document.getRootElement();String[]str=new String[7];int j=0;//遍历根结点(students)的所有孩子节点(肯定是student节点)boolean flagid,flagname;for ( Iterator<?> iter = root.elementIterator(); iter.hasNext(); ){out.print("<tr>");int i=0;Element element = (Element) iter.next();flagid=false;flagname=false;//遍历student结点的所有孩子节点(即id,name,age,gender,email,java),并进行处理Iterator<?> iterInner = element.elementIterator();Element elementInner = (Element) iterInner.next();if(elementInner.getText().equals(id)){flagid=true;}elementInner = (Element) iterInner.next();if(elementInner.getText().equals(name)){flagname=true;}if(id!=null&&name!=null){if(flagid&&flagname){j++;for ( Iterator<?> iterInner1 = element.elementIterator(); iterInner1.hasNext(); ){Element elementInner1 = (Element) iterInner1.next();str[i]=elementInner1.getText();out.print("<th>"+elementInner1.getText()+"</th>");i++;}break;}}else if(name!=null&&id==null){if(flagname){j++;for ( Iterator<?> iterInner1 = element.elementIterator(); iterInner1.hasNext(); ){Element elementInner1 = (Element) iterInner1.next();str[i]=elementInner1.getText();out.print("<th>"+elementInner1.getText()+"</th>");i++;}}}else if(id!=null&&name==null){if(flagid){j++;for ( Iterator<?> iterInner1 = element.elementIterator(); iterInner1.hasNext(); ){Element elementInner1 = (Element) iterInner1.next();str[i]=elementInner1.getText();out.print("<th>"+elementInner1.getText()+"</th>");i++;}break;}}else{break;}out.print("</tr>");}str[6]=j+"";return str;}}ReadUserInfo.javapackage bean;import java.io.IOException;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.util.LinkedList;public class ReadUserInfo {//文件中读取出的用户信息LinkedList<String> nameList = new LinkedList<String>();LinkedList<String> passList = new LinkedList<String>();// StringTokenizer相关变量String temp;String[] st;//用来保存用户输入信息String username;String password;public String getUsername(){return username;}public void setUsername(String username){ername = username;}public String getPassword(){return password;}public void setPassword(String password){this.password = password;}public LinkedList<String> getNameList(){return nameList;}public LinkedList<String> getPassList(){return passList;}public void read(String path) throws IOException{File file = new File(path);BufferedReader br = new BufferedReader(new FileReader(file));while ((temp = br.readLine()) != null){st =temp.split(",");nameList.add(st[0]);passList.add(st[1]);}}public boolean checknp(String name,String pass){LinkedList<String> nlist = getNameList();LinkedList<String> plist = getPassList();if(!nlist.contains(name) || !plist.contains(pass)){return false;}if(nlist.indexOf(name) != plist.indexOf(pass)){return false;}return true;}}XmlPage.javapackage bean;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.Iterator;import java.util.List;import javax.servlet.jsp.JspWriter;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.OutputFormat;import org.dom4j.io.SAXReader;import org.dom4j.io.XMLWriter;public class XmlPage {public void Edit(String user,String Id,String Name,String Age,String Gender,String Email,String Java,String studentInfoPath) throws DocumentException, IOException {SAXReader reader = new SAXReader();Document document = reader.read(new File(studentInfoPath));Element root = document.getRootElement();Element element = null ;for ( Iterator<?> iter = root.elementIterator(); iter.hasNext(); ){element = (Element) iter.next();//遍历student结点的所有孩子节点(即id,name,age,gender,email,java),并进行处理Iterator<?> iterInner = element.elementIterator();Element elementInner = (Element) iterInner.next();if(elementInner.getText().equals(user))break;}if(!Id.isEmpty())element.element("id").setText(Id);if(!Name.isEmpty())element.element("name").setText(Name);if(!Age.isEmpty())element.element("age").setText(Age);if(!Gender.isEmpty())element.element("gender").setText(Gender);if(!Email.isEmpty())element.element("email").setText(Email);if(!Java.isEmpty())element.element("java").setText(Java);OutputFormat out = new OutputFormat(" ", true, "utf-8");XMLWriter writer = new XMLWriter(new FileOutputStream(studentInfoPath),out);writer.write(document);writer.close();}public boolean check(String id,String studentInfoPath) throws DocumentException{SAXReader reader = new SAXReader();Document document = reader.read(new File(studentInfoPath));Element root = document.getRootElement();boolean flag=true;for ( Iterator<?> iter = root.elementIterator(); iter.hasNext(); ){Element element = (Element) iter.next();//遍历student结点的所有孩子节点(即id,name,age,gender,email,java),并进行处理Iterator<?> iterInner = element.elementIterator();Element elementInner = (Element) iterInner.next();if(elementInner.getText().equals(id)){flag=false;break;}}return flag;}public void add(String Id,String Name,String Age,String Gender,String Email,String Java,String studentInfoPath) throws Exception {SAXReader reader = new SAXReader();Document document = reader.read(new File(studentInfoPath));Element root = document.getRootElement();Element parent = root.addElement("student");Element id= parent.addElement("id");id.setText(Id);Element name = parent.addElement("name");name.setText(Name);Element age= parent.addElement("age");age.setText(Age);Element gender = parent.addElement("gender");gender.setText(Gender);Element email = parent.addElement("email");email.setText(Email);Element java = parent.addElement("java");java.setText(Java);OutputFormat out = new OutputFormat(" ", true, "utf-8");XMLWriter writer = new XMLWriter(new FileOutputStream(studentInfoPath),out);writer.write(document);writer.close();}public void Del(String id,String studentInfoPath) throws Exception {SAXReader reader = new SAXReader();Document document = reader.read(new File(studentInfoPath));Element root = document.getRootElement();Element element = null ;for ( Iterator<?> iter = root.elementIterator(); iter.hasNext(); ){element = (Element) iter.next();//遍历student结点的所有孩子节点(即id,name,age,gender,email,java),并进行处理Iterator<?> iterInner = element.elementIterator();Element elementInner = (Element) iterInner.next();if(elementInner.getText().equals(id))break;}root.remove(element);OutputFormat out = new OutputFormat(" ", true, "utf-8");XMLWriter writer = new XMLWriter(new FileOutputStream(studentInfoPath), out);writer.write(document);writer.close();}public void Reader(int diPage,int pageFileSize,JspWriter out,String studentInfoPath) throws DocumentException, IOException{SAXReader saxReader = new SAXReader();Document document = saxReader.read(new File(studentInfoPath));Element root = document.getRootElement();// 用于记录学生编号的变量int num=0;//遍历根结点(students)的所有孩子节点(肯定是student节点)for ( Iterator<?> iter = root.elementIterator(); iter.hasNext(); ){out.print("<tr>");num++;Element element = (Element) iter.next();if(num>=(diPage*pageFileSize-(pageFileSize-1))&&num<=diPage*pageFileSize){//遍历student结点的所有孩子节点(即id,name,age,gender,email,java),并进行处理for ( Iterator<?> iterInner = element.elementIterator(); iterInner.hasNext(); ){Element elementInner = (Element) iterInner.next();out.print("<th>"+elementInner.getText()+"</th>");}}out.print("</tr>");}}public int Count(String studentInfoPath) throws DocumentException{SAXReader saxReader = new SAXReader();Document document = saxReader.read(new File(studentInfoPath));List<?> list = document.selectNodes("/students/student");int num = list.size();return num;}}/src/filterAuthorityFilter.javapackage filter;import java.io.*;import javax.servlet.*;import javax.servlet.http.*;public class AuthorityFilter implements Filter{//FilterConfig可用于访问Filter的配置信息private FilterConfig config;//实现初始化方法public void init(FilterConfig config){this.config = config;}//实现销毁方法public void destroy(){this.config = null;}//执行过滤的核心方法public void doFilter(ServletRequest request,ServletResponse response, FilterChain chain)throws IOException,ServletException{//---------下面代码用于对用户请求执行预处理---------//获取ServletContext对象,用于记录日志ServletContext context = this.config.getServletContext();long before = System.currentTimeMillis();System.out.println("开始过滤...");//获取该Filter的配置参数String encoding = config.getInitParameter("encoding");String loginPage = config.getInitParameter("loginPage");String loginServlet = config.getInitParameter("loginServlet");String addsuccess = config.getInitParameter("addsuccess");String changePage = config.getInitParameter("changePage");String changesuccess = config.getInitParameter("changesuccess");String delete = config.getInitParameter("delete");//设置request编码用的字符集request.setCharacterEncoding(encoding);HttpServletRequest requ = (HttpServletRequest)request;HttpSession session = requ.getSession(true);//输出提示信息System.out.println("Filter已经截获到用户的请求的地址:" +requ.getServletPath());System.out.println("user:" +session.getAttribute("user"));//获取客户请求的页面String requestPath = requ.getServletPath();//如果session范围的user为null,即表明没有登录//且用户请求的既不是登录页面,也不是处理登录的页面if( session.getAttribute("user") == null&& !requestPath.endsWith(loginPage)&& !requestPath.endsWith(loginServlet)){request.setAttribute("tip", "nologin");request.getRequestDispatcher("/login.jsp").forward(request, response);}/*else if(requestPath.endsWith(addsuccess)||requestPath.endsWith(changePage)||requestPath.endsWith(changesuccess)||requestPath.endsWith(delete)){request.setAttribute("tip", "stop");request.getRequestDispatcher("/studentInfoDisplay.jsp").forward(request, response);}*///"放行"请求else{chain.doFilter(request, response);}//---------下面代码用于对服务器响应执行后处理---------long after = System.currentTimeMillis();//输出提示信息System.out.println("过滤结束");//输出提示信息System.out.println("请求被定位到" + ((HttpServletRequest) request).getRequestURI() +" 所花的时间为: " + (after - before));System.out.println("Session.tip:"+session.getAttribute("tip"));System.out.println("er:"+session.getAttribute("user"));}}/src/sevrvletLoginServlet.javapackage sevrvlet;import java.io.IOException;import java.io.PrintWriter;import javax.mail.Session;import javax.servlet.RequestDispatcher;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.jboss.weld.context.SessionContext;import bean.ReadUserInfo;public class LoginServlet extends HttpServlet {/*** Constructor of the object.*/public LoginServlet() {super();}/*** Destruction of the servlet. <br>*/public void destroy() {super.destroy(); // Just puts "destroy" string in log// Put your code here}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to post.** @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {ReadUserInfo r = new ReadUserInfo();r.read(request.getSession().getServletContext().getRealPath("")+"\\WEB-INF\\users.txt");String username = request.getParameter("username");String password = request.getParameter("password");HttpSession session = request.getSession(true);//RequestDispatcher dis = null;PrintWriter out = response.getWriter();if(!r.checknp(username,password)){out.print("<script>alert('Wrong username or password');location.href='../login.jsp';</script>");//dis = request.getRequestDispatcher("../login.jsp");}else{session.setAttribute("user", username);System.out.println("LoginServlet tip:"+session.getAttribute("tip"));//out.print("<script>alert('z!');location.href='../index.jsp';</script>");//dis = request.getRequestDispatcher("../studentInfoDisplay.jsp");out.print("<script>location.href='../studentInfoDisplay.jsp';</script>");}//dis.forward(request, response);}/*** Initialization of the servlet. <br>** @throws ServletException if an error occurs*/public void init() throws ServletException {// Put your code here}}/src/tagIteratorTag.javapackage tag;import java.io.IOException;import java.util.Collection;import javax.servlet.jsp.JspException;import javax.servlet.jsp.tagext.SimpleTagSupport;public class IteratorTag extends SimpleTagSupport {private String collection;private String item;//collection的setter与getter函数public void setCollection(String conllection){this.collection = conllection;}public String getCollection(){return this.collection;}//item的setter与getter函数public void setItem(String item){this.item = item;}public String getItem(){return item;}@Overridepublic void doTag() throws JspException, IOException {// TODO Auto-generated method stubCollection itemlist = (Collection)getJspContext().getAttribute(collection);for(Object itemTemp : itemlist){getJspContext().setAttribute(item, itemTemp);getJspBody().invoke(null);}}/srcmytaglib.tld<?xml version="1.0"encoding="GBK"?><taglib xmlns="/xml/ns/j2ee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/j2ee web-jsptaglibrary_2_0.xsd"version="2.0"><tlib-version>1.0</tlib-version><short-name>mytaglib</short-name><!-- 定义该标签库的URI --><uri>/mytaglib</uri><tag><!-- 定义标签名 --><name>iterator</name><!-- 定义标签处理类 --><tag-class>tag.IteratorTag</tag-class><!-- 定义标签体支持JSP脚本 --><body-content>scriptless</body-content><!-- 配置标签属性:collection --><attribute><name>collection</name><required>true</required><fragment>true</fragment></attribute><!-- 配置标签属性:item --><attribute><name>item</name><required>true</required><fragment>true</fragment></attribute></tag></taglib>/WebRootadd.jsp<%@page language="java"contentType="text/html; charset=GBK" pageEncoding="GBK"%><%@page import="java.io.*"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=GBK"><title>添加信息</title></head><body><%-- <% if(request.getAttribute("tip") != null && request.getAttribute("tip").equals("stop")){request.removeAttribute("tip");out.print("<script>alert('不能直接访问该网页');</script>");}%> --%><center><jsp:useBean id="testBean"class="bean.XmlPage"scope="page"/><form action = "addsuccess.jsp"method = "post">请输入学生信息:<br><br>姓&nbsp;名:<input type= "text"name="name"style = "width = 165px;height = 22px;"value=""/><br><br>学&nbsp;号:<input type= "text"name="id"style= "width = 165px;height = 22px;"value=""/><br><br>年&nbsp;龄:<input type= "text"name="age"style = "width = 165px;height = 22px;"value=""/><br><br>性&nbsp;别:<input type= "text"name="gender"style style = "width = 165px;height = 22px;"value=""/><br><br>email:<input type= "text"name="email"style= "width= 165px;height = 22px;"value=""/><br><br>java&nbsp;:<input type= "text"name="java"style= "width= 165px;height = 22px;"value=""/><br><br><input type="submit"value="添加"/>&nbsp;&nbsp;<a href="studentInfoDisplay.jsp">返回</a></form></center></body></html>addsuccess.jsp<%@page language="java"contentType="text/html; charset=GBK" pageEncoding="GBK"%><%@page import="java.io.*"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=GBK"><title>find</title></head><body><%//System.out.println("11213213");if(application.getAttribute("lock") == "true"){out.print("<script>alert('他人正在操作中');location.href='studentInfoDisplay.jsp';</script>");}else{application.setAttribute("lock", "true");}%><jsp:useBean id="testBean"class="bean.XmlPage"scope="page"/><%String Id=request.getParameter("id"),Name=request.getParameter("name"),Age=request.getParameter("age"),Gender=request.getParameter("gender"),Email=request.getParameter("email"),Java=request.getParameter("java");//Name= new String(Name.getBytes("ISO8859_1"), "GBK");//Gender= new String(Gender.getBytes("ISO8859_1"), "GBK");System.out.println(request.getRealPath("/WEB-INF/students.xml")) ;if(Id.isEmpty()||Name.isEmpty()||Age.isEmpty()||Gender.isEmpty() ||Email.isEmpty()||Java.isEmpty()){application.setAttribute("lock", "false");out.print("<script>alert('学生信息未填写完整!');location.href='add.jsp';</script>");}else{if(testBean.check(Id,request.getRealPath("/WEB-INF/students.xml"))) {testBean.add(Id, Name, Age, Gender, Email, Java,request.getRealPath("/WEB-INF/students.xml"));application.setAttribute("lock", "false");out.print("<script>alert('成功添加!');location.href='studentInfoDisplay.jsp';</script>");}else{application.setAttribute("lock", "false");out.print("<script>alert('该学生已存在!');location.href='add.jsp';</script>");}}%></body></html>change.jsp<%@page language="java"contentType="text/html; charset=GBK" pageEncoding="GBK"%><%@page import="java.io.*"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=GBK"><title>修改信息</title></head><body><%-- <% if(request.getAttribute("tip") != null && request.getAttribute("tip").equals("stop")){request.removeAttribute("tip");out.print("<script>alert('不能直接访问该网页');</script>");}%> --%><center><jsp:useBean id="testBean"class="bean.XmlPage"scope="page"/><form action = "changesuccess.jsp"method = "post"><!-- 并发操作安全性代码 --><%String id=session.getAttribute("id").toString(),name=session.getAttribute("name").toString(),age=session.getAttribute("age").toString(),gender=session.getAttribute("gender").toString(),email=session.getAttribute("email").toString(),java=session.getAttribute("java").toString();%>在要修改处输入修改后信息:<br><br>姓&nbsp;名:<input type= "text"name="name"style= "width = 165px;height = 22px;"value=<%=name%>><br><br>学&nbsp;号:<input type= "text"name="id"style = "width = 165px;height = 22px;"value=<%=id %>><br><br>年&nbsp;龄:<input type= "text"name="age"style = "width = 165px;height = 22px;"value=<%=age %>><br><br>性&nbsp;别:<input type= "text"name="gender"style = "width = 165px;height = 22px;"value=<%=gender%>><br><br>email:<input type= "text"name="email"style= "width= 165px;height = 22px;"value=<%=email%>><br><br>java&nbsp;:<input type= "text"name="java"style= "width=165px;height = 22px;"value=<%=java%>><br><br><input type="submit"value="更改"/>&nbsp;&nbsp;<a href="studentInfoDisplay.jsp">返回</a></form></center></body></html>changesuccess.jsp<%@page language="java"contentType="text/html; charset=GBK" pageEncoding="GBK"%><%@page import="java.io.*"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=GBK"> <title>find</title></head><body><%System.out.println("11213213");if(application.getAttribute("lock") == "true"){out.print("<script>alert('他人正在操作中');location.href='change.jsp';</script>");}else{application.setAttribute("lock", "true");}%><jsp:useBean id="testBean"class="bean.XmlPage"scope="page"/><%String user=session.getAttribute("id").toString();String Id=request.getParameter("id"),Name=request.getParameter("name"),Age=request.getParameter("age"),Gender=request.getParameter("gender"),Email=request.getParameter("email"),Java=request.getParameter("java");//Name= new String(Name.getBytes("ISO8859_1"), "GBK");//Gender= new String(Gender.getBytes("ISO8859_1"), "GBK");%><%if(!Id.equals(user)){if(testBean.check(Id,request.getRealPath("/WEB-INF/students.xml"))) {testBean.Edit(user,Id, Name, Age, Gender, Email, Java,request.getRealPath("/WEB-INF/students.xml"));application.setAttribute("lock", "false");out.print("<script>alert('成功更改!');location.href='studentInfoDisplay.jsp';</script>");}else{application.setAttribute("lock", "false");out.print("<script>alert('该学生已存在!');location.href='change.jsp';</script>");}}else{testBean.Edit(user,Id, Name, Age, Gender, Email, Java,request.getRealPath("/WEB-INF/students.xml"));application.setAttribute("lock", "false");out.print("<script>alert('成功更改!');location.href='studentInfoDisplay.jsp';</script>");}%></body></html>delete.jsp<%@page language="java"contentType="text/html; charset=GBK" pageEncoding="GBK"%><%@page import="java.io.*"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=GBK"><title>删除</title></head><body><%if(application.getAttribute("lock") == "true"){out.print("<script>alert('他人正在操作中');location.href='studentInfoDisplay.jsp';</script>");}else{application.setAttribute("lock", "true");}%><jsp:useBean id="testBean"class="bean.XmlPage"scope="page"/><%String id=session.getAttribute("id").toString();%><%testBean.Del(id,request.getRealPath("/WEB-INF/students.xml")); %><%application.setAttribute("lock", "false");out.print("<script>alert('成功删除!');location.href='studentInfoDisplay.jsp';</script>");%></body></html>find.jsp<%@page language="java"contentType="text/html; charset=GBK" pageEncoding="GBK"%><%@page import="java.io.*"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=GBK"><title>查找</title></head><body><%-- <% if(request.getAttribute("tip") != null &&。

《JAVA程序设计》课程设计大作业-Java学生管理系统

《JAVA程序设计》课程设计大作业-Java学生管理系统

《JAVA程序设计》课程设计大作业-Java学生管理系统山东理工大学计算机学院题目: Java学生管理系统班级姓名学号2011 年 12 月 6 日目录摘要.................................................................................3 第一章设计简介及设计方案 (4)1.1 系统功能分析 (4)1.2 系统功能模块设计 (4)1.3 数据库功能分析 (4)1.4 数据库需求分析.........................................................5 第二章详细设计 (6)2.1 数据库设计 (6)2 详细编程…………………………………………………………8 2.第三章设计结果及分析 (12)3.1 设计结果 (12)3.2 设计结果分析.........................................................19 总结..............................................................................17 参考文献 (17)2摘要随着计算机技术的飞速发展,当今社会正快速向信息化社会前进。

而如今学校的规模不断扩大,学生数量急剧加,有关学生的各种信息量也成倍增长,面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。

通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工用量。

此次设计我们使用JAVA编程,实现了学生信息管理系统的过程。

本系统采用Sun公司的j2sdk1.4.2_04和SQL SERVER 2000数据库管理系统作为开发工具,通过对学生信息管理系统进行可行性分析、需求分析和设计逐步将一个学生信息管理系统的开发过程呈现出来。

(完整word版)javaee学生选课管理系统大作业报告

(完整word版)javaee学生选课管理系统大作业报告

重庆科技学院《JavaEE企业级开发技术》非标准答案考试试题题目:学生选课成绩管理系统实现学生姓名:张XX 学号:2018XXXXXX 学院:智能技术与工程学院专业班级:计科XXX完成日期:2019年12月30日成绩(百分制):授课教师:(完整word版)javaee学生选课管理系统大作业报告目录一需求分析 (4)(一)项目设计目标 (4)(二)功能需求 (4)二概要设计 (8)(一)数据库设计 (8)(二)数据库实施 (11)三功能实现 (19)(一)模块设计 (19)(二)框架设计 (19)(三)编程实现 (20)(四)模块设计与实现 (69)四总结 (74)一需求分析(一)项目设计目标本系统针对学生选课成绩进行管理,通过本系统对学生选课成绩管理进行有效管理。

根据对学生选课管理系统的要求,制定简易学生管理系统。

因为最终使用的用户都是普通的老师学生,并不具全都备良好地计算机使用水平,所以本系统的界面比较简洁、美观,使用也比较方便,操作几次就可以熟悉使用方式,不需要针对最终用户进行使用培训。

本系统可以达到以下目标:(1)、灵活的人机交互界面,操作简单方便、界面简洁美观;(2)、可以通过菜单、导航栏灵活的操作;(3)、对学生选课成绩管理功能;(4)、可以实现对信息的查询;(5)、可以修改管理员密码;(6)、系统最大限度的实现了易维护性和易操作性;(7)、系统运行稳定、安全可靠。

(二)功能需求选课与成绩管理功能模块表:表1.2.1表1.2.2表1.2.3表1.2.4表1.2.5表1.2.6表1.2.7表1.2.8表1.2.9二概要设计(一)数据库设计1、构成系统的实体2、系统总体E-R图3、E-R图转化成物理模型4、学生选课管理系统的数据字典字段名类型是否主键说明adminId varchar(20)是管理员IDadminPassword varchar(20)否管理员的密码表2.1.1 系统管理员表字段名类型是否主键说明couId varchar(20)是课程IDcouName varchar(20)否课程名couTime varchar(20)否课程时间couPlace varchar(20)否课程地点couTeacherId varchar(20)否课程任课老师的IDcouItem varchar(20)否课程的学期表2.1.2 课程信息表表2.1.3 成绩表表2.1.4 学生信息表表2.1.5 教师信息表(二)数据库实施1、数据库脚本实现drop table if exists admin;drop index Relationship_7_FK on course;drop index Relationship_4_FK on course;drop index Relationship_2_FK on course;drop table if exists course;drop index Relationship_6_FK on grades;drop table if exists grades;drop index Relationship_5_FK on student;drop index Relationship_3_FK on student;drop index Relationship_1_FK on student;drop table if exists student;drop table if exists teacher;/*====================================================== ===*//* Table: admin *//*==========================================================*/create table admin(adminId varchar(20) not null,adminPassword varchar(20),adminLimit varchar(2),primary key (adminId))type = InnoDB;/*====================================================== ====*//* Table: course *//*====================================================== ====*/create table course(couId varchar(20) not null,adminId varchar(20),stuId varchar(20),teaId varchar(20),couName varchar(20),couTime varchar(20),couPlace varchar(20),couItem varchar(20),primary key (couId))type = InnoDB;/*====================================================== ====*//* Index: Relationship_2_FK *//*====================================================== ===*/create index Relationship_2_FK on course(adminId);/*====================================================== ===*//* Index: Relationship_4_FK *//*====================================================== ====*/create index Relationship_4_FK on course(stuId);/*====================================================== ====*//* Index: Relationship_7_FK *//*====================================================== ====*/create index Relationship_7_FK on course(teaId);/*====================================================== ==*//* Table: grades *//*====================================================== ====*/create table grades(gradeCouId varchar(20) not null,teaId varchar(20),gradeCouName varchar(20),gradeCouTime varchar(20),gradeCouPlace varchar(20),gradeTeacherId varchar(20),gradeCouItem varchar(20),gradeTest float(3),primary key (gradeCouId))type = InnoDB;/*====================================================== ====*//* Index: Relationship_6_FK *//*====================================================== ====*/create index Relationship_6_FK on grades(teaId);/*====================================================== ===*//* Table: student *//*====================================================== ==*/create table student(stuId varchar(20) not null,adminId varchar(20),gradeCouId varchar(20),stuName varchar(20),stuSex varchar(2),stuBirthday varchar(20),stuAddress varchar(40),stuMajor varchar(20),stuPassword varchar(20),primary key (stuId))type = InnoDB;/*====================================================== ===*//* Index: Relationship_1_FK *//*====================================================== ===*/create index Relationship_1_FK on student(adminId);/*====================================================== =*//* Index: Relationship_3_FK *//*======================================================* /create index Relationship_3_FK on student(teaId);/*======================================================* //* Index: Relationship_5_FK *//*====================================================== ==*/create index Relationship_5_FK on student(gradeCouId);/*====================================================== =*//* Table: teacher *//*======================================================* /create table teacher(teaId varchar(20) not null,teaName varchar(20),teaSex varchar(2),teaBirthday varchar(20),teaAddress varchar(40),teaDep varchar(20),teaPassword varchar(20),primary key (teaId))type = InnoDB;alter table course add constraint FK_Relationship_2 foreign key (adminId) references admin (adminId) on delete restrict on update restrict;alter table course add constraint FK_Relationship_4 foreign key (stuId) references student (stuId) on delete restrict on update restrict;alter table course add constraint FK_Relationship_7 foreign key (teaId) references teacher (teaId) on delete restrict on update restrict;alter table grades add constraint FK_Relationship_6 foreign key (teaId) references teacher (teaId) on delete restrict on update restrict;alter table student add constraint FK_Relationship_1 foreign key (adminId) references admin (adminId) on delete restrict on update restrict;alter table student add constraint FK_Relationship_3 foreign key (teaId) references teacher (teaId) on delete restrict on update restrict;alter table student add constraint FK_Relationship_5 foreign key (gradeCouId) references grades (gradeCouId) on delete restrict on update restrict;三功能实现(一)模块设计本系统一共有三大模块,管理员模块、教师模块、学生模块。

java期末试题及答案文库

java期末试题及答案文库

java期末试题及答案文库Java 期末试题及答案文库Java 语言作为一门重要的编程语言,被广泛应用于软件开发、移动应用、Web 应用等领域。

在Java 学习过程中,期末考试是对学生掌握程度的重要检验。

为了帮助同学们更好地准备期末考试,本文将提供一个Java期末试题及答案的文库,供大家参考学习。

一、选择题1. 下面哪个选项代表Java中的访问修饰符?a. publicb. privatec. protectedd. all of the above答案:d2. Java 中的多态是指什么?a. 对象在运行时才能确定其类型b. 对象可以同时拥有多个类型c. 子类可以覆盖父类的方法d. 父类可以引用子类对象3. 下面哪个关键字用于声明一个常量?a. finalb. staticc. constantd. const答案:a二、填空题1. Java 中通过关键字____实现类与类之间的继承。

答案:extends2. Java 中,通过关键字_____定义一个抽象类。

答案:abstract3. 在Java中,______是一种重要的异常处理机制。

答案:try-catch三、代码题1. 编写一个Java类,实现一个计算器的功能,包括加法、减法、乘法和除法四种运算。

要求使用面向对象的思想,将每种运算封装成一个方法,并在主方法中进行调用。

public class Calculator {public int add(int num1, int num2) {return num1 + num2;}public int subtract(int num1, int num2) {return num1 - num2;}public int multiply(int num1, int num2) {return num1 * num2;}public double divide(int num1, int num2) {if (num2 != 0) {return (double) num1 / num2;} else {throw new ArithmeticException("除数不能为0"); }}public static void main(String[] args) {Calculator calculator = new Calculator();System.out.println("1 + 2 = " + calculator.add(1, 2));System.out.println("3 - 2 = " + calculator.subtract(3, 2));System.out.println("2 * 4 = " + calculator.multiply(2, 4));System.out.println("6 / 3 = " + calculator.divide(6, 3));}}```四、应用题1. 编写一个Java程序,实现一个简单的学生成绩管理系统。

Java大作业_ 简单的学籍管理系统方案

Java大作业_ 简单的学籍管理系统方案

上海电力学院期末作业:简单的学籍管理系统课程:Web应用程序设计院系:电气工程学院专业:电力系统及其自动化学生姓名:张富杰学号:17103060指导教师:曹渝昆2017年1月6日目录一、设计思路 (3)二具体实现 (4)三运行调试与分析 (4)四设计体会与小结 (10)五程序代码 (11)一、设计思路随着社会经济的发展,入学的同学越来越多,为方便对同学学籍信息的的管理,设计学籍管理软件来管理本班级同学的学籍信息。

该软件应支持添加、删除、修改、查询功能。

查询方式主要是支持学号查询,例如:输入“1”,则显示该学生的信息。

运用流式、卡片、整体布局方式对系统的主界面和各功能界面进行设计;通过连接数据库的方式来实现对数据的存储;各功能实现时访问数据库,并对数据信息进行读取,运用Java语句对其进行输出,学号查询时显示在文本框中;系统提示功能用来提醒用户的错误操作和输入时的错误信息,提醒用户进行改正。

二具体实现1.向班级里插入一个学生,但必须是插在已经建立的班级里。

2.输入学生信息,建立一个班级。

3.修改一个学生的所有资料。

4.删除某班的一个学生及其所有资料。

5.删除一个班级。

6.根据学生姓名查找某个学生信息。

每种功能通过一个类来实现:类分分为主类、查询类、修改类、添加类、增加类。

主类各功能界面的连接;精确查询类(SearchStudent)实现根据学生姓名查找某个学生信息;修改类(MdifyStudent)实现修改一个学生的所有资料;添加类(AddStudent)实现向班级里插入一个学生,但必须是插在已经建立的班级里。

;删除类(DeleteStudent)实现删除某班的一个学生及其所有资料。

;删除类(DeleteClass)实现删除一个班级;建立类(BuiltClass)实现输入学生信息建立一个班级。

三运行调试与分析系统的详细设计代码请查阅附带的代码。

以下仅对各个界面进行截图展示:图1:管理界面图2:添加学生到指定的班级界面图3:删除一个学生信息界面图4:修改一个学生信息界面图5:查询某个学生信息界面图6删除一个班级界面图7:输入一个学生建立一个班级界面运行JAVA程序中的StudentManager文件,显示系统的主界面,如图1所示,主界面有进入其他子功能的按钮,选择相应的按钮便可进入相应的功能。

JAVA程序设计课程设计大作业Java学生管理系统-V1

JAVA程序设计课程设计大作业Java学生管理系统-V1

JAVA程序设计课程设计大作业Java学生管理系统-V1正文:Java程序设计课程设计大作业Java学生管理系统随着社会的不断发展和教育水平的提高,学生人口不断增加,而传统的学生管理方式已经难以满足现代教育的需要。

因此,在学校教育管理过程中,采用信息技术手段对学生信息进行管理已成为一种趋势。

为了提高学校管理的效率,本文设计了一款Java学生管理系统。

1.系统功能设计Java学生管理系统的主要功能如下:1.1 学生信息录入学生信息录入功能包含录入学生的基本信息及成绩信息。

当学生信息录入完成后,系统会自动计算学生的总成绩、平均成绩和排名等信息。

1.2 学生信息查询学生信息查询功能包含对学生基本信息和成绩信息的查询,支持多种查询方式,如按姓名查询、按学号查询、按专业查询等。

1.3 学生信息修改及删除学生信息修改及删除功能可以对学生信息进行修改和删除,包括学生基本信息和成绩信息。

1.4 成绩统计成绩统计功能可以对学生的成绩进行统计,并输出学生的平均成绩、优秀率、不及格率等信息。

1.5 成绩趋势分析成绩趋势分析功能可以对学生的成绩趋势进行分析,比如成绩波动情况、成绩上升情况等。

2.系统框架设计Java学生管理系统采用B/S结构设计,通过Web前端页面和后端服务进行交互。

系统采用MVC设计模式,将系统分为三层:模型层、视图层和控制层。

2.1 模型层模型层主要包括数据存储和数据操作两部分。

系统数据采用关系型数据库(如MySQL)进行存储,数据操作采用Hibernate框架进行实现。

2.2 视图层视图层主要包括前端页面和展示数据两部分。

前端页面通过HTML、JavaScript、CSS等Web技术进行实现,展示数据通过JSP、Servlet 等Java Web技术进行实现。

2.3 控制层控制层主要负责处理系统的业务逻辑和数据流转,通过Java Web技术实现前后端交互。

3.系统运行环境Java学生管理系统需要在以下环境下运行:3.1 操作系统:Windows、Linux、Mac OS等。

java作业题

java作业题

java作业题编写一个Java程序,实现一个简单的学生信息管理系统。

1. 学生类(Student)- 属性:学号、姓名、性别、年龄、班级- 方法:构造方法、获取和设置属性的方法、重写toString方法以便打印学生信息2. 学生管理类(StudentManager)- 属性:学生列表(使用ArrayList<Student>保存学生信息)- 方法:添加学生、删除学生、通过学号查询学生、通过姓名查询学生、打印所有学生信息3. 主程序(Main)- 创建一个学生管理对象- 在主程序中提供菜单供用户选择操作,选择不同的操作后调用学生管理类中相应的方法- 添加学生:输入学生信息(学号、姓名、性别、年龄、班级),将学生对象添加至学生列表中- 删除学生:输入学号,查找并删除相应的学生- 通过学号查询学生:输入学号,查找并打印学生信息- 通过姓名查询学生:输入姓名,查找并打印学生信息- 打印所有学生信息:遍历学生列表,打印所有学生信息以下是示例代码:```javaimport java.util.ArrayList;import java.util.Scanner;// 学生类class Student {private int id;private String name;private String gender;private int age;private String className;// 构造方法public Student(int id, String name, String gender, int age, String className) {this.id = id; = name;this.gender = gender;this.age = age;this.className = className;}// 获取学生信息public int getId() {return id;}public String getName() {return name;}public String getGender() {return gender;}public int getAge() {return age;}public String getClassName() {return className;}// 设置学生信息public void setId(int id) {this.id = id;}public void setName(String name) { = name;}public void setGender(String gender) {this.gender = gender;}public void setAge(int age) {this.age = age;}public void setClassName(String className) {this.className = className;}// 重写toString方法@Overridepublic String toString() {return "学号: " + id + ", 姓名: " + name + ", 性别: " + gender + ", 年龄: " + age + ", 班级: " + className;}}// 学生管理类class StudentManager {private ArrayList<Student> students;public StudentManager() {students = new ArrayList<>();}// 添加学生public void addStudent(Student student) {students.add(student);System.out.println("添加学生成功!");}// 删除学生public void removeStudent(int id) {// 查找学生Student student = findStudentById(id);if (student != null) {students.remove(student);System.out.println("删除学生成功!");} else {System.out.println("未找到学生!");}}// 通过学号查询学生public void findStudentById() {Scanner scanner = new Scanner(System.in); System.out.println("请输入学号: ");int id = scanner.nextInt();Student student = findStudentById(id);if (student != null) {System.out.println(student);} else {System.out.println("未找到学生!");}}// 通过姓名查询学生public void findStudentByName() {Scanner scanner = new Scanner(System.in); System.out.println("请输入姓名: ");String name = scanner.nextLine();Student student = findStudentByName(name); if (student != null) {System.out.println(student);} else {System.out.println("未找到学生!");}}// 打印所有学生信息public void printAllStudents() {for (Student student : students) {System.out.println(student);}}// 根据学号查找学生private Student findStudentById(int id) {for (Student student : students) {if (student.getId() == id) {return student;}}return null;}// 根据姓名查找学生private Student findStudentByName(String name) { for (Student student : students) {if (student.getName().equals(name)) {return student;}}return null;}}// 主程序public class Main {public static void main(String[] args) {StudentManager studentManager = new StudentManager(); Scanner scanner = new Scanner(System.in);while (true) {System.out.println("学生信息管理系统菜单:");System.out.println("1. 添加学生");System.out.println("2. 删除学生");System.out.println("3. 通过学号查询学生");System.out.println("4. 通过姓名查询学生");System.out.println("5. 打印所有学生信息");System.out.println("0. 退出系统");System.out.println("请选择操作:");int option = scanner.nextInt();switch (option) {case 1:System.out.println("请输入学号: ");int id = scanner.nextInt();System.out.println("请输入姓名: ");String name = scanner.next();System.out.println("请输入性别: ");String gender = scanner.next();System.out.println("请输入年龄: ");int age = scanner.nextInt();System.out.println("请输入班级: ");String className = scanner.next();Student student = new Student(id, name, gender, age, className);studentManager.addStudent(student);break;case 2:System.out.println("请输入学号: ");int deleteId = scanner.nextInt();studentManager.removeStudent(deleteId);break;case 3:studentManager.findStudentById();break;case 4:studentManager.findStudentByName();break;case 5:studentManager.printAllStudents();break;case 0:System.exit(0);default:System.out.println("无效操作!");break;}}}}```运行程序,可以通过菜单进行学生信息的添加、删除、查询和打印等操作。

JAVA程序设计课程设计大作业Java学生管理系统(1)

JAVA程序设计课程设计大作业Java学生管理系统(1)

JAVA程序设计课程设计大作业Java学生管
理系统(1)
Java学生管理系统是一种为教师、学生和学校管理提供帮助的计算机软件。

它是一个完整的、模块化的解决方案,可以通过一个简单易用的用户界面来管理学生信息,并与教师和学生进行交互。

以下是Java 程序设计课程设计大作业Java学生管理系统的相关内容:
1.需求分析
学生管理系统需要具备以下功能:
(1)学生信息管理:包括添加、查询、修改和删除学生信息;
(2)成绩管理:包括录入、查询和修改学生成绩;
(3)课程管理:包括添加、查询和修改课程信息;
(4)教师管理:包括添加、查询和修改教师信息;
(5)登录系统:包括教师和学生的登录和注销系统。

2.系统架构设计
学生管理系统采用三层架构,包括用户界面、业务逻辑层和数据访问层。

用户界面负责显示数据,业务逻辑层负责处理用户请求,而数据访问层则负责从数据库获取数据。

3.技术选型
Java学生管理系统采用Java技术进行开发,后端采用Spring框架和MyBatis框架进行搭建。

前端使用Swing和JavaFX技术完成。

4.系统实现与测试
在完成开发后,需要对系统进行测试,以确保它的准确性和稳定性。

在测试过程中,需要对系统进行逐步测试,包括单元测试、集成测试
和系统测试等。

5.运维管理
在系统上线后,需要进行运维管理工作,包括监控系统运行情况、日志管理、数据备份和数据恢复等。

总之,Java学生管理系统是在实现学校智能化管理方面的重要应用之一,可以极大提高教学质量和效率。

需要考虑如何完善系统,满足不同用户的需求,同时需要注意系统的优化,提高性能。

Java_期末大作业报告

Java_期末大作业报告

申请:优良中及
Java 期末大作业报告
专业班级:
学号姓名:
第一部分作业选题
作业内容:
作业题目自定,并详细说明项目的功能需求。

程序要有明确的功能,调试通过并能正常运行。

程序至少要包含以下知识点:
–GUI 图形界面
程序代码在150 行以上。

作业要求:
1、规划出实现这个项目所需要的类;
2、根据设计要求作出类图及类相应的关系;
3、编写代码实现设计。

我的选题:
为了满足作业要求,我进行了如下设计:此部分写你要做一个什么东西。

第二部分程序介绍
编程工具:
设计基本方法:
类的设计:
编程中的难点:
此部分要设计要求作出类图及类相应的关系,要有相应的图示。

第三部分最终产品介绍
此部分介绍你所做软件的使用方法。

第四部分参考文献
此部分写你所参考的资料,包括书籍,期刊,网址,请不要少于五个。

第五部分关键代码
此部分请将你的代码打印于此
被选题目:
1、计算器的设计,可仿照操作系统自带的计算器
2、记事本,可仿照操作系统自带的计算器
3、某小学期末成绩管理系统
4、小游戏,比如五子棋等
5、也可自选题目
Note:如果某个题目选的人较多,那么此题目中得优的人数不超过一定比例。

java期末大作业

java期末大作业

Java课程设计报告班级: 1班姓名:李鹏飞学号:20097720119 1、组成员是:李鹏飞2、数据库功能的实现:采用的数据库是:Access数据库;其中一共有 1 库, 2 张表。

表格举例:3、系统功能是:本程序共实现了两个功能:数据的查询(学生信息按学号查询)和数据的录入(学生信息录入)。

程序名称:Jdbc数据库名称:student数据源名称:lpf建立表名称:message(学号、姓名、生日);fenshu(学号、英语)其中:子类 myframe:建立主页面样式(包括:窗体名称、菜单项目(学生管理-学生查询、学生录入;系统-退出系统)、窗体内容);子类 xscx:查询学生信息(学号、姓名、生日);设计xscx窗口样式;sql语句的录入;子类xstj:添加学生信息(学号、姓名、生日);设计xstj窗口样式;sql语句的录入。

子类Database:建立数据库连接;执行sql语句,返回结果集;4、代码以及运行截图:import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;import java.util.*;import java.text.SimpleDateFormat;public class Jdbc{public static void main(String args[]){myframe mf=new myframe();}}class myframe extends JFrame implements ActionListener{MenuBar mb;Menu m1,m2;Label lb1=new Label("学籍管理系统",Label.CENTER);Label lb2=new Label("20097720119 计算机辅助设计1班李鹏飞",Label.CENTER); MenuItem mi1,mi2,mi3,mi4;myframe(){setTitle("学籍管理系统--制作:20097720119 计算机辅助设计李鹏飞"); mb=new MenuBar();m1=new Menu("学生管理");m2=new Menu("系统");mb.add(m1);mb.add(m2);mi1=new MenuItem("学生查询");mi2=new MenuItem("学生录入");mi3=new MenuItem("退出系统");m1.add(mi1);m1.add(mi2);m2.add(mi3);Container con=this.getContentPane();con.add(lb1);con.add(lb2);con.setLayout(new GridLayout(4,1,1,1));lb1.setFont(new Font("黑体",Font.BOLD,60));lb2.setFont(new Font("黑体",Font.BOLD,30));mi1.addActionListener(this);mi2.addActionListener(this);mi3.addActionListener(this);this.setMenuBar(mb);setBounds(300,300,660,300);setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==mi1){xscx xs=new xscx();xs.setBounds(400,350,300,300);xs.setVisible(true);}else if(e.getSource()==mi2){xstj xs=new xstj();xs.setBounds(430,350,300,300);xs.setVisible(true);}else if(e.getSource()==mi3){dispose();System.exit(0);}}}//学生信息查询class xscx extends JFrame implements ActionListener {JLabel lb1;JTextField tf1;JButton bt1,bt2;xscx(){setTitle("学生信息查询");lb1=new JLabel("请输入学生的学号:");tf1=new JTextField(7);bt1=new JButton("查询");bt2=new JButton("取消");Container con=this.getContentPane();con.setLayout(null);lb1.setFont(new Font("宋体",Font.BOLD,12));tf1.setFont(new Font("宋体",Font.BOLD,12));bt1.setFont(new Font("宋体",Font.BOLD,12));bt2.setFont(new Font("宋体",Font.BOLD,12));lb1.setBounds(80,80,120,30);tf1.setBounds(200,80,80,30);bt1.setBounds(80,130,100,30);bt2.setBounds(180,130,100,30);con.add(lb1);con.add(tf1);con.add(bt1);con.add(bt2);bt1.addActionListener(this);bt2.addActionListener(this);this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}public void actionPerformed(ActionEvent e){Database DB=new Database();Database DB1=new Database();int tem;String temp[]=new String[6];StringBuffer mess=new StringBuffer();if(e.getSource()==bt1){try{DB.OpenConn();DB.rs=DB.executeQuery("select * from message where 学号='"+tf1.getText()+"'");DB1.OpenConn();while(DB.rs.next()){String sql1="select * from fenshu where 学号='"+tf1.getText()+"'";tem=DB.rs.getInt(1);temp[0]=DB.rs.getString(2);temp[1]=DB.rs.getString(3);mess.append("查找到"+tf1.getText()+"学生信息"+"\n"+"学号:"+tem+"\n"+"姓名:"+temp[0]+"\n"+"生日:"+temp[1]+"\n");DB1.rs=DB1.executeQuery(sql1);while(DB1.rs.next()){mess.append(""+DB1.rs.getString(1)+"的英语成绩"+DB1.rs.getInt(2)+"\n");}}if(mess.length()==0)JOptionPane.showMessageDialog(this,"未找到信息","",RMATION_MESSAGE);elseJOptionPane.showMessageDialog(this,mess,"",RMATION_MESSAGE);tf1.setText(null);}catch(Exception ex){System.out.println(ex);JOptionPane.showMessageDialog(this,"未找到信息","",RMATION_MESSAGE);}finally{DB.closeStmt();DB.closeConn();DB1.closeStmt();DB1.closeConn();}}if(e.getSource()==bt2)setVisible(false);}}//学生信息添加class xstj extends JFrame implements ActionListener{JLabel lb1,lb2,lb3;JTextField tf1,tf2,tf3;JButton bt1,bt2;xstj(){setTitle("学生信息添加");this.getContentPane().setLayout(null);lb1=new JLabel("学号");tf1=new JTextField(10);lb2=new JLabel("姓名");tf2=new JTextField(10);lb3=new JLabel("生日");tf3=new JTextField(10);bt1=new JButton("插入");bt2=new JButton("取消");lb1.setBounds(0,40,100,30);tf1.setBounds(100,40,100,30); lb2.setBounds(0,70,100,30);tf2.setBounds(100,70,100,30); lb3.setBounds(0,100,100,30);tf3.setBounds(100,100,100,30); bt1.setBounds(30,220,80,30);bt2.setBounds(120,220,80,30);Container con=this.getContentPane();con.add(lb1);con.add(tf1);con.add(lb2);con.add(tf2);con.add(lb3);con.add(tf3);con.add(bt1);con.add(bt2);bt1.addActionListener(this);bt2.addActionListener(this);this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}public void actionPerformed(ActionEvent e){Database DB=new Database();if(e.getSource()==bt1){try{if(tf1.getText().length()!=0 &&tf2.getText().length()!=0 && tf3.getText().length()!=0){String s=new String();String sql="insert into message values("+Integer.parseInt(tf1.getText())+",'"+tf2.getText()+"','"+tf3.getText()+"')";DB.OpenConn();DB.executeUpdate(sql);JOptionPane.showMessageDialog(this,"学生信息添加成功!!","",RMATION_MESSAGE);tf1.setText(null);tf2.setText(null);tf3.setText(null);}elseJOptionPane.showMessageDialog(this,"","",RMATION_MESSAGE);}catch(Exception ex){System.out.println(e);JOptionPane.showMessageDialog(this,"","",RMATION_MESSAGE);}finally{DB.closeStmt();DB.closeConn();}}if(e.getSource()==bt2)setVisible(false);}}class Database {private Statement stmt=null;ResultSet rs=null;private Connection conn=null;String sql;String lpf="jdbc:odbc:student";public Database(){}public void OpenConn()throws Exception{try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");conn=DriverManager.getConnection("jdbc:odbc:lpf","",""); }catch(SQLException e){System.err.println("OpenConn:"+e.getMessage());}}public ResultSet executeQuery(String sql){stmt = null;rs=null;try{stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ ONLY);rs=stmt.executeQuery(sql);}catch(SQLException e){System.err.println("executeQuery:"+e.getMessage());}return rs;}public void executeUpdate(String sql){stmt=null;rs=null;try{stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ ONLY);stmt.executeQuery(sql);mit();}catch(SQLException e){System.err.println("executeUpdate:"+e.getMessage());}}public void closeStmt(){try{stmt.close();}catch(SQLException e){System.err.println("closeStmt:"+e.getMessage());}}public void closeConn(){try{conn.close();}catch(SQLException ex){System.err.println("aq.closeConn:"+ex.getMessage()); }}}截图程序运行运行结果1点击【学生管理】,运行结果点击【学生查询】,运行结果输入【2009001】,点击【查询】,运行结果输入【2009004】,点击【查询】,运行结果点击【学生录入】,添加信息,运行结果单击【插入】,运行结果再次查询学生信息,输入【2009004】,点击【查询】,运行结果查询结果中出现【学号:2009004 姓名:李鹏飞生日:1989-09-04】,插入成功点击【系统】,运行结果点击【退出系统】,结果如下。

JAVA程序设计课程设计大作业Java学生管理系统(一)

JAVA程序设计课程设计大作业Java学生管理系统(一)

JAVA程序设计课程设计大作业Java学生管理系统(一)Java学生管理系统是一款面向学生的信息管理软件,全面展示学生各个方面的信息。

随着信息技术的不断进步,学生管理系统已经成为学校教育管理中必不可少的一部分。

随着学生数量的增长以及学校管理的需要,对于管理系统的需求也越来越高,要求系统更加智能化、快捷化和便捷化。

Java程序设计课程设计大作业Java学生管理系统也是为此而生。

Java学生管理系统主要是为了解决学校学生的管理问题而设计的。

学生管理系统可以对学生的各项信息进行统一管理,包括学生的个人信息、学籍信息、社团信息、成绩信息、荣誉信息等。

这些数据可以随时查询,以方便老师、家长、学生等人根据需求查看、修改等操作。

Java学生管理系统中包含多个模块,主要包括学生信息模块、课程信息模块、成绩信息模块、荣誉信息模块以及社团信息模块。

在学生信息模块中,管理员可以添加、修改、查询和删除学生的个人信息。

在课程信息模块中,管理员可以添加、修改、查询和删除课程的信息。

在成绩信息模块中,管理员可以添加、修改、查询和删除学生的成绩信息。

在荣誉信息模块中,管理员可以查询学生的荣誉信息。

在社团信息模块中,管理员可以查询学生所在的社团信息。

Java学生管理系统还包括了多种安全机制,如登录验证、权限控制等。

只有管理员才能登录系统,并通过权限控制访问特定的模块,保证了系统的安全性。

Java学生管理系统设计的核心是系统的数据结构以及数据的交互方式。

在系统中,数据是以树状结构组织起来的,各个节点之间通过指针相连。

这种数据结构的形式可以降低系统的复杂度,并使得系统更加易于管理。

总之,Java程序设计课程设计大作业Java学生管理系统是一款高效、简便、安全的学生信息管理系统。

它可以满足学校管理的需求,为了更好地适应学校管理的需要,将不断进行完善和升级。

它对于学校管理和教育工作者都是非常有益的,为了使得学校管理更加高效、自动化,推动学校信息化建设的发展。

java大作业总结

java大作业总结

java大作业总结
通过这次 Java 大作业的实践,我对 Java 编程有了更深入的理解和掌握。

本次大作业要求我们设计并实现一个简单的学生信息管理系统,包括学生信息的增删改查等功能。

在完成这个项目的过程中,我遇到了许多挑战,也收获了很多宝贵的经验。

在开始之前,我对项目进行了需求分析和设计。

我使用 UML 图来描述系统的功能和架构,以便更好地理解和组织代码。

我还设计了数据库表和实体类,以映射学生信息。

在编码阶段,我遇到了许多问题,例如如何连接数据库、如何实现分页功能、如何处理异常等。

通过查阅资料和请教老师同学,我逐渐解决了这些问题,并提高了自己的编程能力。

我还学会了使用一些常用的设计模式,如单例模式、工厂模式和观察者模式,以提高代码的可维护性和扩展性。

在测试阶段,我编写了单元测试和集成测试,以确保系统的正确性和稳定性。

通过测试,我发现了一些潜在的问题,并及时进行了修复。

总的来说,通过这次 Java 大作业的实践,我不仅提高了自己的编程能力,还培养了良好的编程习惯和团队合作精神。

我深刻认识到,编程是一门不断学习和实践的艺术,只有通过不断地积累和提高,才能成为一名优秀的程序员。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JA V A学生管理系统大作业
课程名称:JA V A编程基础
题目:学生信息管理系统
专业:计算机软件
班级:计算机软件121班
学号:8000612030
学生姓名:李俊楠
完成人数:1人
起讫日期:第十六周至第十八周
任课教师:龚根华职称:副教授
部分管主任:
完成时间:2015-1-2
目录------------------------------2课题设计内容------------------------------3程序功能简介
需求分析--------------------------------------------------3总体设计---------------------------------------------------3模块详细设计---------------------------------------------------4数据库设计------------------------------5主体内容------------------------------6心得体会-----------------------------11参考书籍-----------------------------12
一:课题设计内容
学生管理系统
学生信息管理系统是学校管理的重要工具,是学校不可或缺的部分。

随着在校大学生人数的不断增加,教务系统的数量也不断的上涨。

学校工作繁杂、资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,效率也是很低的。

并且这种传统的方式存在着很多的弊端,如:保密性差、查询不便、效率低,很难维护和更新等。

然而,本系统针对以上缺点能够极大地提高学生信息管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。

所以如何自动高效地管理信息是这些年来许多人所研究的。

二:程序功能简介
2.1需求分析
本系统需要实现的功能:
(1)、管理员对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。

(2)、学生对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。

2.2总体设计
学生信息管理系统主要包括管理员和学生两大模块。

管理员模块包括:学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等。

用户模块包括:学生信息查看、成绩信息查看、个人信息管理等。

系统总体结构如图所示。

总体结构图
2.3模块详细设计
1、学生信息管理模块
学生信息管理模块包括增加、删除、修改、查询、显示全部等。

具体的结构图如图所
示。

学生信息管理模块结构图
2、课程信息管理模块
课程信息管理模块包括增加、删除、修改、查询、显示全部等。

具体的结构图如图所示。

课程信息管理模块结构图
3、选课信息管理模块
选课信息管理模块包括查询、显示全部等。

具体的结构图如图所示。

选课信息管理模块结构图
4、成绩信息管理模块
成绩信息管理模块包括修改成绩、查询、显示全部等。

具体的结构图如图所示。

成绩信息管理模块结构图
5、用户信息管理模块
用户信息管理模块包括修改、查询、显示全部等。

具体的结构图如图所示。

用户信息管理模块结构图
三:数据库设计
在数据库student中共有4张数据表:s(学生信息表)、c(课程信息表)、sc(选课信息表)、unpw(用户信息表),下面定义每张表的字段名称和数据类型。

s(学生信息表)
字段名称数据类型描述
sno char(10)学号,关键字
sn char(20)姓名
sa int年龄
ss char(10)性别
sd char(10)院系
c(课程信息表)
字段名称数据类型描述
cno char(10)课程号,关键字
cn char(30)课程名
pcno char(10)先行课程号
sc(选课信息表)
字段名称数据类型描述
sno char(10)学号,关键字
cno char(10)课程号,关键字
g int成绩
unpw(用户信息表)
字段名称数据类型描述
un char(10)用户名,关键字
pw char(10)密码
qx int角色
四:主体内容
4.1概述:
本统提供了学生信息管理中常见的基本功能,主要包括管理员和学生两大模块。

管理员的主要功能有对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。

学生的主要功能有对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。

4.2分析与设计文档:
SimpleStudentManager主函数类
DLFrame登陆界面类
ManagerFrane管理员界面类
StudentFrame学生界面类
SM学生信息管理的类
SAdd用于学生信息管理中增加或修改某条记录的界面的类
SSelect用于学生基本信息管理中查询时输入学号的界面的类
CM课程信息管理的类
CAdd用于课程信息管理中增加或修改某条记录的界面的类
CSelect用于课程信息管理中查询时输入课程号的界面的类
SCM选课信息管理的类
SCSelect用于选课信息管理中查询时输入学号的界面的类
GM成绩信息管理的类
GAdd用于成绩信息管理中修改成绩的界面的类
GSelect用于成绩信息管理中查询时输入学号的界面的类
PM用户信息管理的类
UAdd用于用户信息管理中修改密码的界面的类
PSelect用于用户信息管理中查询时输入用户名的界面的类
StudentS用于学生信息查看时输入学号的界面的类
StudentSelect用于成绩信息查看时输入学号的界面的类
PPM个人信息管理的类
PPSelect用于个人信息管理查询时输入用户名的界面的类
4.3程序说明:
操作环境:SQL Server2005,WINDOWS XP,eclipse
登陆用户名和密码:管理员账号密码为admin admin
学生的账号密码为自己的学号(前端显示自己的学号所对应的学科)
此程序登陆界面分为管理员登陆和学生登陆,这样可以做到保密性和安全性,方便学生查询和管理员的管理。

登陆主界面:
一:管理员角色登陆:以管理员角色登陆后界面
学生信息管理功能的界面
课程信息管理功能的界面
选课信息管理功能的界面
成绩信息管理功能的界面
用户信息管理功能的界面
二:学生角色登陆:以学生角色登陆后界面
学生信息查看功能的界面
成绩信息查看功能的界面
个人信息管理功能的界面
五:心得体会
通过这次实验报告大作业,巩固了这一个学期对于JAVA 的学习,更深刻的理解了JAVA的语句和编程思想,用JAVA 和数据库相互关联可以做出很多已知的熟悉的程序,可以做出一个完整的程序来使用,并且能更加熟练的运用数据库中的操作,可谓一举两得。

参考书籍:《java编程思想》《JAVA嵌入式编程》。

相关文档
最新文档