版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品文档实训报告实训名称:学生成绩管理系统系(部):专业班级:学生姓名:学 号:指导教师:完成日期 :南京铁道职业技术学院精品文档目录二目录31实训概述3二2 Java 访问并处理数据库的课题描述 32.1 课题简介3装2.3 数据库结构设计 42.4系统功能层次图63 系统模块的详细设计 63.1 登录模块设计 63.2 管理员模块设计 63.3 学生模块设计 84 程序运行与测试 95 实训总结 30订精品文档Java 访问并处理数据库的设计与实现1 实训概述南京铁道职业技术学院浦口校区 2013级网络 L1301 班于大二上学期组织了 为期一周的 Java 实训,本次实训的课题是“学生成
2、绩管理系统” 。 通过综合实 训,掌握运用 Java 语言基本知识和技能、 JAVA 的基本语法与 JDBC 数据库技 术的应用;进一步熟悉 Oracle 数据库的数据库管理(数据库的创建、应用) 。表 的创建、修改、删除,约束及关系等、数据的查询处理( insert、update、delete、 select 语句等技术。2 Java 访问并处理数据库的课题描述2.1 课题简介经过分析,我们使用Java开发工具,利用其提供的各种面向对象的开发工具, Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥
3、有 全球最大的开发者专业社群。使用的数据库是Oracle, Oracle数据库功能强大,学习起来也不难,然后,对初始原型系统进行需求迭代,不断修正和改进 ,直到形成用户满意的可行系统。通过实训,我们掌握运用Java语言知识和技能,运用JAVA的基本语法与 JDBC 数据库技术的应用, 完成对甲骨文数据库的数据库管理、 例如表的设计(表 的创建、修改、删除,字段的默认值、约束及关系等) 、数据的查询处理( insert、 update delete select语句的应用)等技术;并能结合数据库应用技术和 jdbc进 行小型数据库管理系统的开发。2.2 模块简介管理员模块功能需求 :管理员身份登
4、陆系统后,可以对学生信息进行添加、修改和查询等操作,对学生进行添加、修改和查询功能操作,还可以修改管理员的登录密码。学生模块功能需求 :学生信息管理系统中需要在学生登录或验证身份后 ,,可以自行完成学生个 人信息的查询,也可以进行修改和删除个人信息、修改学生密码等操作。2.3 数据库结构设计数据表设计定义每个表的数据类型以及字段限制,使数据库达到一定的完整性.每个表的物理设计如下:1. 表admin保存用户的个人信息用户信息表主要是用来保存管理员用户的基本信息,包括管理员的ID和管理员的登录密码,只有符合这两个字段的格式要求,才能登录成功,结构表如下:表4-2管理员信息表字段名类型空值约束条件
5、管理员IDnumber(10)not null主键登录密码varchar2(10)not null2. 表student保存学生基本信息,结构表如下:表4-5学生信息表字段名类型空值约束条件学号number(10)not null主键姓名varchar2(20)not null性别varchar2 (3)年龄nu mber(2)登录密码varchar2(10)not null逻辑结构是独立于任何一种数据模型的信息结构。 逻辑结构的任务是把概念 结构设计阶段设计好的基本 E-R图转化为宜选用的DBMS所支持的数据模型相 符合的逻辑结构,并对其进行优化。流程图层次设计图的格式如下所示:添加按钮查找
6、按钮删除按钮返回结束图1管理员对学生信息管理系统局部E-R图数据流图是结构化系统分析的主要工具,它表示了系统内部信息的流向,并表现系统的逻辑处理功能。2.4系统功能层次图学生信息管理系统是一个典型的数据库开发应用程序,系统是和数据库相结 合.,进入系统,有两个用户,分别是普通学生、和管理员。学生信息管理系统登陆管理图2学生信息管理系统功能层次图3系统模块的详细设计本学生信息管理系统主要模块,即用户登录模块、用户操作模块。用户操作 模块又分为学生操作模块、管理员操作模块。下面将显示系统的主要功能模块。3.1登录模块设计学生信息管理系统前台登陆模块可以勾选管理员身份信息,代表以管理员身 份进入。不
7、勾选即为普通学生身份登录。3.2管理员模块设计学生信息管理系统前台登陆模块只有一个登陆窗口分为学生、管理员两个级别登陆,系统在后台程序有自动限制设置,可以自动识别登陆者的限制。其系统登 陆模块算法如下:1 判断是否勾选管理员身份;2 输入用户名和密码;3 判断用户名和密码是否匹配;(1)若提示输入信息错误 ,则重新输入;(2)否则以管理员身份进入系统。添加学生信息功能学生信息管理系统对学生信息的管理非常重要 ,其中对信息的录入是系统最 为关键的地方 ,以往我们管理学生信息的时候都是手工操作 ,而随社会不断发展的 今天计算机的应用已全部取带了手工操作的方法 ,利用计算机可以方便的录入各 类信息
8、,进行高效的管理 .学生信息的录入就是利用计算机通过程序读入数据库 , 录入学生信息模块算法描述如下:1. 管理员登陆后,录入学生信息管理界面;2. 单击增加学生按钮,键入学生 ID ;3. 当录入学号已经存在 ,提示该学生信息已存在,请重新输入;4. 否则学生信息添加成功。查找学生信息功能学生信息管理系统对查询学生信息管理也很重要 ,方法和增添学生信息类 似,也同样是利用计算机通过程序读入数据库 ,查询学生信息模块算法描述如下:1.管理员登陆后,点击查询学生;2.当录入学生信息不存在时 ,提示没有该学生信息,重新输入;3. 当录入学生 ID 已经存在 ,提示该学生信息存在,显示学生信息; 删
9、除学生信息功能学生选课模块主要是给删除学生信息的功能 ,本功能主要由管理员进入数据 库 ,然后学生管理系统 ,其删除学生信息模块算法描述如下:1管理员成功登陆;2点击删除学生;3输入学生相关信息,如学生 ID ;4. 如该学生不存在,则提示信息不存在,否则删除该学生。修改学生信息功能此信息修改模块主要是给学生和管理员建立信息库 ,方便管理员查询操作 ,信 息修改模块算法描述如下:1管理员成功登陆;2点击修改学生信息;3输入学生的编号;4编号为空 ,重新输入;5输入不为数字 ,重新输入; 6输入正确 ,进入修改页面进行相关修改。3.3 学生模块设计查看学生个人信息功能 学生信息管理系统方便了学生
10、查看自己的学籍信息 ,如果学校由于疏忽输入 了错误信息 ,自己可以查看并且及时通知学校管理员 ,及时修改 ,减少不必要的麻 烦.此信息查询模块主要是方便学生查询操作 ,信息查询模块算法描述如下:1 学生成功登陆;2点击查询学生信息;3输入学生的编号;4编号为空 ,重新输入;5输入不为数字 ,重新输入;6输入正确 ,进入信息查询页面进行相关修改。 修改学生登录密码功能 学生可以进入学生管理系统进行登录密码的修改1. 学生成功登陆;2单击修改密码;3输入旧密码、新密码确认后,若旧密码正确则修改成功,则提示重新输 入旧密码;4提交修改完成修改。精品文档4 程序运行与测试package com.bri
11、up.view;import java.awt.*;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.*;import com.briup.bean.Admin;import com.briup.bean.Student;import com.briup.dao.AdminDao;/登录窗口import com.briup.dao.StudentDao;public class LoginFrame extends JFrameprivate JCheckBox c;pr
12、ivate JButton loginBtn,resetBtn;private JTextField nameInput;private JPasswordField pwdInput;private AdminDao adminDao=new AdminDao();private StudentDao studentDao=new StudentDao();public LoginFrame()/初始化窗口本身Dimension d=Toolkit.getDefaultToolkit().getScreenSize();int width=d.width;int height=d.heigh
13、t;/设置坐标为 400-400 宽为 300 高为 200 setBounds(width/2-200, height/2-100, 400, 200); setTitle(" 登录界面 ");/设置窗口为不可缩放setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);init();event(); private void event() /为按钮添加事件处理resetBtn.addMouseListener(new MouseAdapter() /监听鼠标单击事件Overridepubli
14、c void mouseClicked(MouseEvent e) System.exit(0); );loginBtn.addMouseListener(new MouseAdapter() Overridepublic void mouseClicked(MouseEvent e) /获取用户输入的值String username=nameInput.getText().trim();String password=pwdInput.getText().trim();/判断是否勾选了管理员多选框if(c.isSelected()/从管理员表中检测数据Admin a=adminDao.fin
15、dAdminByName(username);如果a不为null说明用户输入的管理员是存在的if(a=null)/说明此管理员不存在JOptionPane.showMessageDialog(null, "用户名或密码不 正确", "提示信息 ", JOptionPane.WARNING_MESSAGE);else/管理员存在/密码正确 /密码不正确if(a.getPassword().equals(password)/后台保存的密码和用户从客户端输入的密码是一 样的JOptionPane.showMessageDialog(null, 登"
16、录成功 ", "提示信息 ",JOptionPane.WARNING_MESSAGE);精品文档/关闭当前的登录窗口LoginFrame.this.dispose(); /开启管理员界面 new AdminFrame(a.getUsername().go();elseJOptionPane.showMessageDialog(null, "用户名或密 码不正确 ", "提示信息 ", JOptionPane.WARNING_MESSAGE); else /从普通用户表中检测数据 Student s=studentDao.fi
17、ndStudentByStudentId(username); if(s=null)JOptionPane.showMessageDialog(null, "用户名或密码不 正确", "提示信息 ", JOptionPane.WARNING_MESSAGE);elseif(s.getPassword().equals(password) JOptionPane.showMessageDialog(null, "登录成功 ", " 提示信息 ", JOptionPane.WARNING_MESSAGE);LoginF
18、rame.this.dispose();new StudentFrame(s,null).go();elseJOptionPane.showMessageDialog(null, "用户名或密 码不正确 ", "提示信息 ", JOptionPane.WARNING_MESSAGE); );public void init()/初始化窗口内部的组件Container container=getContentPane(); /组件放到哪个位置由用户自己来制定 container.setLayout(null);JLabel title=new JLabel
19、("用 户 登 录”); title.setFo nt(new Fo nt( 楷体",0,32); title.setBounds(110,5,200,33); container.add(title);JLabel nameLabel=new JLabel(用户名:"); nameLabel.setBounds(70, 55, 60, 30); container.add(nameLabel);nameInput=new JTextField(); nameInput.setBounds(130,60,150,20);/设置提示内容namelnput.setTo
20、olTipText(此处写登录用户名"); container.add(nameInput);JLabel pwdLabel=new JLabel("密码:");pwdLabel.setBounds(70, 80, 60, 30); container.add(pwdLabel);pwdlnput=new JPasswordField(); pwdlnput.setBounds(130,85,150,20);pwdInput.setToolTipText(”此处写密码"); container.add(pwdlnput);c=new JCheckBox(
21、"管理员"); c.setBounds(68, 115, 70, 30); container.add(c);loginBtn=new JButton(" 登录"); loginBtn.setBounds(140, 115, 60, 30); container.add(loginBtn);resetBt n=new JButt on("取消"); resetBtn.setBounds(215, 115, 60, 30); container.add(resetBtn);public void go()setVisible(true)
22、; public static void main( Stri ng args) new LoginFrame().go(); package com.briup.dao;import java.sql.C onn ecti on;import java.sql.PreparedStateme nt;import java.sql.ResultSet;import com.briup.bea n. Adm in;import com.briup.util.C onn ectio nF actory;/和管理员相关的数据库操作public class Adm in Dao /根据用户名查找指定管
23、理员public Adm in fin dAdm in ByName(Stri ng user name)Adm in adm in=n ull;Conn ecti on conn=n ull;PreparedStateme nt pstat=n ull;ResultSet rs=null;try conn=Conn ectio nF actory.getC onn ectio n();Stri ng sql="select username,password from admin where usern ame=?" pstat=c onn .prepareStateme
24、 nt(sql);pstat.setStri ng(1, user name);rs=pstat.executeQuery();如果查不到任何数据下方while内部的代码不会执行while(rs. next()/如果能执行到这个地方说明指定管理员是存在的adm in=new Admi n();admi n.setUsername(username);admi n.setPassword(rs.getStri ng("password"); catch (Excepti on e) / TODO: han dle exceptione.pri ntStackTrace();f
25、in allyConnectionF actory.close(rs, pstat, conn); return admi n;public static void main( Stri ng args) Admin Dao().fi ndAdmi nByName("admi").getPassword();package com.briup.view;import java.awt.C ontainer;import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt
26、.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import java.awt.eve nt.Wi ndowEve nt;import javax.swi ng.JButton;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JOptio nPane;import javax.swi ng.JPa nel;import javax.sw in g.JTextField;import com.briup.bean.Student;import
27、 com.briup.dao.Stude ntDao;/添加学生public class AddStudentFrame extends JFrameprivate AdminFrame admin;private JPanel p1,p2,p3,p4,p5;private JLabel idLbl,nameLbl,ageLbl,genderLbl;private JTextField idInput,nameInput,ageInput,genderInput;private JButton submitBtn,cancelBtn;private StudentDao studentDao=
28、new StudentDao();public AddStudentFrame(AdminFrame admin) this.admin=admin;setTitle("添加学生");setResizable(false);setBounds(400, 100, 300, 400);init();event();private void init()Container container=getContentPane();container.setLayout(new GridLayout(5, 1); p1=new JPanel();p1.setLayout(null);
29、idLbl=new JLabel("学籍号:");idLbl.setBounds(50, 30, 50, 20);idInput=new JTextField();idInput.setBounds(100, 30, 120, 20);p1.add(idLbl);p1.add(idInput);container.add(p1);p2=new JPanel();p2.setLayout(null);nameLbl=new JLabel("姓名:");nameLbl.setBounds(50, 10, 50, 20);nameInput=new JText
30、Field();nameInput.setBounds(100, 10, 120, 20);p2.add(nameLbl);p2.add(nameInput);container.add(p2);p3=new JPanel();p3.setLayout(null);ageLbl=new JLabel('年龄:");ageLbl.setBounds(50, 10, 50, 20); ageInput=new JTextField();ageInput.setBounds(100, 10, 120, 20);p3.add(ageLbl);p3.add(ageInput);cont
31、ainer.add(p3);p4=new JPanel();p4.setLayout(null);genderLbl=new JLabel('性别:");genderLbl.setBounds(50, 10, 50, 20); genderInput=new JTextField();genderInput.setBounds(100, 10, 120, 20);p4.add(genderLbl); p4.add(genderInput);container.add(p4);p5=new JPanel();p5.setLayout(null);submitBt n=new J
32、Butto n(” 确定"); submitBtn.setBounds(130, 10, 60, 20);can celBt n=new JButt on("取消");cancelBtn.setBounds(195, 10, 60, 20);p5.add(submitBtn);p5.add(cancelBtn);container.add(p5);private void event()/设置当前窗口的关闭操作/此处可自定义窗口关闭时所作操作this.addWindowListener(new WindowAdapter() public void windowC
33、losing(WindowEvent e) /将之前传递过来的那个管理窗口设置为可用if(admin!=null)admin.setEnabled(true); /释放当前窗口AddStudentFrame.this.dispose(); );/取消按钮的操作cancelBtn.addMouseListener(new MouseAdapter() Overridepublic void mouseClicked(MouseEvent e) if(admin!=null)admin.setEnabled(true); AddStudentFrame.this.dispose(); );/确定按
34、钮的操作submitBtn.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e) /接受用户在客户端输入的值 /正则表达式String studentId=idInput.getText().trim();String studentName=nameInput.getText().trim();String age=ageInput.getText().trim();String gender=genderInput.getText().trim();Student s=new Student()
35、;/注意别输入了已存在的学籍号s.setStudentid(Long.parseLong(studentId);s.setStudentName(studentName);s.setPassword(studentId);s.setAge(Integer.parseInt(age);s.setGender(gender);/将获得值封装成Student对象调用指定方法存储到数据库boolea n result=stude ntDao.addStude nt(s);if(result)JOptionPane.showMessageDialog(null, 添" 加成功! ")
36、;if(admin!=null)admin.setEnabled(true); AddStudentFrame.this.dispose();elseJOptionPane.showMessageDialog(null, 添" 加失败 ,请检查学籍号是否已存在! "););public void go()setVisible(true);public static void main(String args) new AddStudentFrame(null).go();import java.awt.C ontainer;import java.awt.GridLayou
37、t;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import java.awt.eve nt.Wi ndowEve nt;import java.util.List;import javax.swi ng.JButt on;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JPa nel;import javax.sw in
38、 g.JTextField;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDaqpublic class Fin dStude ntFrame exte nds JFrame private StudentDao studentDao=new StudentDao(); private JLabel idLbl,nameLbl;private JTextField idInput,nameInput;private JButton findBtn,cancelBtn;public FindStudentFrame()
39、setTitle(" 查找学生 "); setBounds(405, 100, 200, 390); setResizable(false);init();event(); private void init()Container container=getContentPane(); container.setLayout(new GridLayout(3, 1); JPanel p1=new JPanel();p1.setLayout(null);idLbl=new JLabel("学籍号:"); idLbl.setBounds(20, 55, 50
40、, 20);idInput=new JTextField();idInput.setBounds(73, 55, 100, 20);p1.add(idLbl);p1.add(idInput);container.add(p1);JPanel p2=new JPanel();p2.setLayout(null);nameLbl=new JLabel("姓名:");nameLbl.setBounds(20, 55, 50, 20); nameInput=new JTextField();nameInput.setBounds(73, 55, 100, 20); p2.add(n
41、ameLbl);p2.add(nameInput);container.add(p2);JPanel p3=new JPanel();p3.setLayout(null);fin dBt n=n ew JButto n(” 搜索"); findBtn.setBounds(60,30,60,20);can celBt n=new JButt on("取消");cancelBtn.setBounds(123,30,60,20); p3.add(findBtn);p3.add(cancelBtn);container.add(p3); private void even
42、t() this.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) FindStudentFrame.this.dispose(); );findBtn.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e) String idStr=idInput.getText().trim(); String nameStr=nameInput.getText().trim(); Long student
43、Id=null;String studentName=null; if(idStr.length()!=0) / 如果 id 有值 studentId=Long.parseLong(idStr); if(nameStr.length()!=0) studentName=nameStr; List<Student> students=studentDao.findStudentByConditions(studentId, studentName);/将查询的结果传递给显示界面new ShowResultFrame(students).go() ); public void go()
44、setVisible(true); public static void main( Stri ng args) new Fin dStude ntFrame().go();(” ".trim().length();正则表达式s/System.out.pri ntln ("");/ System.out.pri ntln ("1 2 ".replaceAll("s", "").le ngth(); package com.briup.view;学 HE 号:17蛀岔吏1掘'lil亘河结耒I O 回
45、1芦缶整mi跨import java.awt.Color;import java.awt.C ontainer;import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import java.awt.eve nt.Wi ndowEve nt;import java.util.List;import javax.sw in g.BorderFactory;import javax.s
46、wi ng.JButton;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JOptio nPane;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDao;public class ShowResultFrame extends JFrame private List<Student> students;private StudentDao studentDao=new StudentDao();publ
47、ic ShowResultFrame(List<Student> students) setTitle(" 查询结果 ");if (students.size() > 0) setBounds(100, 100, 300, 60 * students.size(); else setBounds(100, 100, 300, 150); this.students = students;init();private void init() Container container = getContentPane(); container.setLayout
48、(new GridLayout(students.size(), 2); / 遍历集合 将集合中的每一条数据显示到当前容器里面 if (students.size() = 0) con tai ner.add( new JLabel(暂无记录!"); else for (Student stu : students) JLabel l = new JLabel(stu.getStudentName(); final Student s = stu; l.addMouseListener(new MouseAdapter() public void mouseClicked(Mouse
49、Event e) if(e.getClickCount()>=2) new StudentFrame(s, null).go(); );l.setBorder(BorderFactory.createLineBorder(new Color(253, 253,187); JButton b = new JButt on("删除");final Long studentId = stu.getStudentid(); b.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e)
50、int choose=JOptionPane.showConfirmDialog(null,"确定删除?");判断用户点击的是否是确定按钮if(choose=JOptio nPa ne.OK_OPTION)ShowResultFrame.this.dispose();stude nts.remove(s);new ShowResultFrame(stude nts).go();stude ntDao.deleteStude ntByld(stude ntId); );container.add(l); container.add(b); private void eve n
51、t() this.addWi ndowListe ner(new Win dowAdapter() public void win dowClos in g(Wi ndowEve nt e) ShowResultFrame.this.dispose(); ); public void go() setVisible(true); public static void main( Stri ng args) package com.briup.view;import java.awt.Color;import java.awt.C ontainer;import java.awt.GridLay
52、out;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt; import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;import com.briup.bean.St
53、udent;import com.briup.dao.StudentDao;public class StudentFrame extends JFrameprivate JPanel p1,p2,p3,p4,p5,p6;private JLabel idLbl,pwdLbl,nameLbl,ageLbl,genderLbl;private JTextField idInput,nameInput,ageInput,genderInput; private JPasswordField pwdInput;private Student student;private JButton modif
54、yPwdBtn,submitBtn,exitBtn;private String nPassword;private StudentDao dao=new StudentDao();/stude nt记录当前登录的用户n Password记录修改以后的密码public StudentFrame(Student s,String nPassword) this.student=s;this.nPassword=nPassword; /初始化的时候获取当前用户的密码 setTitle(" 学生信息 ");setResizable(false);setBounds(400, 10
55、0, 300, 400);/默认关闭行为 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); init();event(); public void go()setVisible(true);private void init()Container container=getContentPane();container.setLayout(new GridLayout(6, 1); p1=new JPanel();p1.setLayout(null);idLbl=new JLabel("学籍号:");idLbl.setBound
56、s(50, 30, 50, 20);idInput=new JTextField();/需要将数字类型转换为字符串类型+""/字符串类型 -数字类型 parseInt parseLong idInput.setText(student.getStudentid()+""); /设置学籍号不可修改/idInput.setEnabled(false);idInput.setEditable(false);/idInput.setDisabledTextColor(new Color(255, 255, 255);idInput.setDisabledTextColor(Color.black); idInput.setBounds(100, 30, 120, 20);p1.add(idLbl);p1.add(idInput);container.add(p1);p2=new JPanel();p2.setLayout(null);pwdLbl=new JLabel("密码:");pwdLbl.setBounds(50, 30, 50, 20);pwdInput=new J
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汉字趣味学习课程设计
- 高职导游实务课程设计
- 自动浇花课程设计模版
- 高职国际英语课程设计
- 跑酷课程设计分析
- 【正版授权】 ISO 15104:2025 EN Space systems - Environmental testing for spacecraft thermal control materials
- 2024赞助体育设施建设专用赞助合同范本3篇
- 2024版全新约稿合作合同下载
- 2024正规民间借款合同范本借款合同签订流程详述3篇
- 2024版智能供应链管理系统开发合同
- 服务经营培训课件ppt 老客户经营综合版
- MT/T 199-1996煤矿用液压钻车通用技术条件
- GB/T 6144-1985合成切削液
- GB/T 10357.1-2013家具力学性能试验第1部分:桌类强度和耐久性
- 第三方在线纠纷解决机制(ODR)述评,国际商法论文
- 公寓de全人物攻略本为个人爱好而制成如需转载注明信息
- 第5章-群体-团队沟通-管理沟通
- 肾脏病饮食依从行为量表(RABQ)附有答案
- 深基坑-安全教育课件
- 园林施工管理大型园林集团南部区域养护标准图例
- 排水许可申请表
评论
0/150
提交评论