版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、中南民族大学计算机科学学院课程设计报告课 程 软件工程导论 题 目 美食信息管理系统 年 级 2014级 专 业 软件工程 学 生 学 号 指导老师 2016 年 11 月 21 日 34软件工程导论课程设计目录1、前言31.1、项目概述31.2、项目实施环境(注:包括开发、运行环境)31.3、项目分工41.4、项目实施计划42、需求分析阶段42.1、可行性研究42.2、功能需求52.2.1 功能划分52.2.2 功能描述62.2.3 数据流图82.2.4 E-R图82.2.5 数据字典92.3、性能需求112.3.1精度112.3.2时间特性要求112.3.3灵活性112.4、可靠性和可用性
2、需求112.5、出错处理需求122.5.1操作跟踪122.5.2访问控制122.6、接口需求122.6.1硬件接口122.6.2软件接口122.7、约束122.8、逆向需求132.9、将来可能提出的要求133、设计阶段133.1、概要设计133.1.1设计目标133.1.2 系统功能结构设置143.1.3 数据库物理模型143.2、详细设计153.2.1 系统界面设计153.2.2 系统功能模块算法设计214、调试与分析214.1、功能模块源代码214.1.1新添美食信息功能模块添加按钮核心代码214.1.2 新添美食信息功能模块美食图片按钮核心代码(获取图片信息)254.2、功能模块测设用例
3、284.2.1 测试设计用例284.2.2 测试设计用例实际运行结果截图305、使用说明书326、总结347、参考文献341、前言1.1、项目概述由于计算机技术的飞速发展,利用软件工程的基本原理进行软件项目的分析、设计、测试和实现,在各行各业中得到越来越广泛的应用。围绕“美食信息管理系统”程序的设计和应用系统的开发课题,使用eclipse和SQL server2008工具,以JAVA为语言编写美食信息管理系统。该程序通过JDBC来实现eclipse前台与后台SQL server2008数据库的连接,并具有典型的数据库应用系统的特征,完成了系统结构与现实生活的紧密结合。 美食
4、信息管理系统的开发不仅是一个应用程序编写的过程,更重要的是在系统分析和设计阶段所做的工作,通过系统分析和设计的过程,能够更加实际地去印证软件工程基本原理在软件项目设计与实现的过程中的应用。该信息管理系统在设计过程中严格遵循软件工程学的方法,用分阶段的生命周期计划严格管理,并主要讲述了程序的总体设计、详细设计阶段,对程序进行需求迭代,不断修正和改进,利用SQL server2008的强大数据库功能,直到形成一个完善的可行性系统。优美、秀丽的界面,方便实用的查询与维护功能共同构成了“美食信息管理系统”。1.2、项目实施环境(注:包括开发、运行环境)该系统为B/S三层结构,它的运行环境分客
5、户端、应用服务器端和数据库服务器端三部分。以下是系统的软件环境。(1)客户端前端开发工具:eclipse操作系统:Windows2007 或更新版本。(2)应用服务器端操作系统:Windows2007 或更新版本。应用服务器:Windows2007 或更新版本。数据库访问:JDBC。(3)数据库服务器端操作系统:Windows2007 或更新版本。数据库系统:SQL Server 2008r2或更新版本。1.3、项目分工柳真:项目总经理,负责系统架构设计及整体安排张浩东:项目文档经理,负责系统文档编写吴超:项目数据库架构师,负责系统数据库设计刘阳正:项目前端设计师,负责系统界面设计陈初相:项目
6、文档经理,负责系统文档编写1.4、项目实施计划(1)日期 2016-2017学年 大三上学期 (2)2016/10/1-2016/10/09:分析综合实验题目,拟定实验题目-美食信息管理系统, (3)2016/10/10-2016/10/16:调查研究功能,并收集相关素材,完成需求分析(4)2016/10/17-2016/10/23:做出系统实施计划,完成系统设计 (5)2016/10/24-2016/10/30:具体编码,各个模块的整合与系统整体详细设计 (6)2016/10/31-2016/11/06:系统测试(6)2016/11/07-2016/11/26:系统演示,老师检查并验收2、需
7、求分析阶段2.1、可行性研究传统的美食信息管理方法,都是通过人工统计或者手工记载的方式进行的。这样的管理方法不但费时费力,也容易产生统计和记载上的错误和疏漏。计算机技术的全面普及,打破了美食信息管理的传统管理方法,在提高了管理效率的同时,也克服了传统管理方法中易产生的问题,使管理员能够有序、全面地对每一项美食信息进行管理,严格按照规定管理系统。利用美食信息管理系统可以完成日常搜寻美食信息的管理,如查询、修改、增加、删除、打印输出以及存储等操作,迅速、准确地完成各种美食信息的统计和汇总工作,快速打印美食信息等,大大提高了餐饮相关部门的管理效率。2.2、功能需求2.2.1 功能划分通过对美食信息管
8、理系统在现实生活中所要实现的功能的综合分析,我把该系统登陆后分为三大功能模块:管理员、客户、注册。(1)管理员具有新增美食信息、修改美食信息、删除美食信息、个人信息(可以查询自己注册的个人信息并且可以修改登陆密码、完善自己的个人信息);(2)客户具有查询美食信息、打印输出美食信息、个人信息;(3)注册具有注册系统的登陆账号,可选择注册管理员或者客户账号。图一:美食信息管理系统功能划分图2.2.2 功能描述具体系统功能需求描述:1. 管理员端(1)新添美食信息模块 管理员输入新添美食的名称,选择相应的美食类型、美食所在省、所在市、所在县,输入美食的详细文字介绍,上传美食的描述图片,最后点击添加按
9、钮即可添加成功(2)修改美食信息模块 管理员输入需要修改美食的名称,点击查询即可查询出美食的名称、类型、所在地、详细文字介绍和图片介绍,查询成功后就可以修改上述各项信息,最后点击修改按钮即可修改成功。(3)删除美食信息模块 管理员输入需要删除美食的名称,点击查询即可查询出美食的名称、类型、所在地等信息,具体信息会在一张表格上显示,然后选择需要删除美食信息的表格所在行,点击删除按钮即可删除成功。(4)个人信息 管理员输入自己登陆所使用的账号,点击查询即可查询出账号、密码、姓名、电话号码、家庭住址等信息,当修改上述信息后,点击修改按钮即可修改信息,其中账号不能修改,其他四项包括用户密码均可以修改。
10、2客户端(1)查询美食信息模块 客户输入需要查询美食信息的名称,点击查询即可获得美食的具体名称、类型、所在省、所在市、所在县、详细文字介绍、图片等信息。(2)打印输出美食信息模块 客户在查询所得美食信息后,如果要进行打印输出相关信息,点击查询美食信息模块界面上打印输出美食信息按钮即可成功打印美食信息。(3)个人信息客户输入自己登陆所使用的账号,点击查询即可查询出账号、密码、姓名、电话号码、家庭住址等信息,当修改上述信息后,点击修改按钮即可修改信息,其中账号不能修改,其他四项包括用户密码均可以修改。3注册(1)管理员输入注册账号、密码,选择注册类型为管理员,点击注册即可成功注册管理员账户。(2)
11、客户输入注册账号、密码,选择注册类型为管理员,点击注册即可成功注册客户账户。2.2.3 数据流图图二:美食信息管理系统数据流图2.2.4 E-R图图三:美食信息管理系统E-R图2.2.5 数据字典(1)美食名称表名字:美食名称表别名:美食信息描述:记录美食名称、美食的详细文字介绍、美食图片等信息定义:美食名称表 = 美食名称编号 + 美食类型编号 + 美食名称 + 详细介绍 + 图片位置:美食信息管理数据库中表的中一项(2)美食类型表名字:美食类型表别名:美食类型描述:统计美食的类型定义:美食类型表 = 美食类型编号 + 美食类型名称位置:美食信息管理数据库中表的一项(3)美食地点表名字:美食
12、地点表别名:美食地点描述:记录美食所在具体地点信息定义:美食地点表 = 美食地点编号 + 所在省 + 所在市 + 所在县位置:美食信息管理数据库中表的一项(4)所在地表名字:所在地表别名:个具体对应地点描述:让各种美食对应相应的具体地点,建立美食名称表余美食地点表之间的关系定义:地点表 = 美食地点编号 + 美食名称编号位置:美食信息管理数据库中表的一项(5)管理员表名字:管理员表别名:管理员用户描述:用于存入管理员注册账号和注册密码以及姓名、电话、家庭住址等个人信息定义:管理员表 = 管理员编号 + 管理员姓名 + 管理员电话号码 + 管理员家庭住址 + 系统登陆密码位置:美食信息管理数据库
13、中表的一项(6)客户表名字:客户表别名:客户用户描述:用于存入客户注册账号和注册密码以及姓名、电话、家庭住址等个人信息定义:客户表 = 客户编号 + 客户姓名 + 客户电话号码 + 客户家庭住址 + 系统登陆密码位置:美食信息管理数据库中表的一项2.3、性能需求2.3.1精度 (1)用户在进行美食查询时要保证查全率,所有符合搜索条件的美食都要能找到。(2)在保证查全率的同时还要能够保证查准率,尤其是对于高级搜索这一功能。(3)保证美食的更新频率。(4) 本软件主要用于管理,不是科学计算,要求计算的精度不是很苛刻。所以输入、输出数据精度的要求不是很高,用于计算的数用浮点数就可以了。2.3.2时间
14、特性要求 本软件运行的响应时间要求不超过12秒,基本能实现。(1)响应时间:2-3秒之内打开一个新的链接。(2)数据转换与传输时间:数据转换主要是涉及到数据库的问题。为了降低一次显示过多的记录会消耗太多的时间这个问题,在设计时让数据库尽量分页显示。传输时间和服务器的处理能力、无线网络的信号强度有关。(3)运行时间:如非特殊原因应保持24小时开通。 2.3.3灵活性 本软件具有升级功能,以满足用户的需求。 2.4、可靠性和可用性需求系统要保证24*7*365可用。但是可以允许每月系统停机一小时,进行系统维护。系统维护的时间要安排在非工作时间进行。人们对信息共享的需求越来越庞大及广泛,美食也是人们
15、生活中不可缺少的部分。用户数量与日俱增,美食信息管理系统要能支持这样的增长速度。2.5、出错处理需求2.5.1操作跟踪针对系统运行出现的异常,跟踪调查出现异常的情况,了解操作意图,有针对性的解决问题。2.5.2访问控制非注册用户(游客)不可以搜索美食信息,只有登陆用户才可以对美食进行查询、修改、打印输出等操作。2.6、接口需求2.6.1硬件接口由于我们使用的通信协议是TCP/IP,因此这里的硬件接口问题主要就是TCP/IP层中的网络接口层,它负责数据帧的发送和接收,帧是独立的网络信息传输单元。2.6.2软件接口这里的接口问题主要是JAVA API和后台数据库接口。JAVA API主要包括: O
16、bject.clone()推荐覆盖、int compareTo(Object o)java.lang对象排序 、Runnable void run() java.lang线程运行 、 AudioClip:void loop()、void play() 、ActionListener void actionPerformed(ActionEvent)java.awt.event 事件处理、WindowConstants int DISPOSE_ON_CLOSE、int DO_NOTHING_ON_CLOSE、int EXIT_ON_CLOSE、int HIDE_ON_CLOSE javax.sw
17、ing窗口控制等。后台数据库接口使用JDBC驱动。2.7、约束设计约束或实现约束描述在设计或实现应用系统时应遵守的限制条件。常见的约束有:精度;工具和语言约束;设计约束;应该使用的标准;应该使用的硬件平台。我们所设计的美食信息管理系统在数据精度上要求不是很高,只要求能够正确描述出相应美食具体信息即可;开发使用的硬件平台是eclipse、windows7,用Java语言进行开发具有很强的可移植性。2.8、逆向需求美食信息管理系统在日常生活用应用还是非常广泛,但是作为设计人员,在进行需求分析时应该说清楚美食信息管理系统不应该做什么,应该选取能澄清真实需求且可消除可能发生的误解的那些逆向需求。在选取
18、该课题后,经过查询资料和分析得知:美食信息管理系统不能关注于收集大量用户的具体信息,从而导致后台数据库在设计时 的重担。2.9、将来可能提出的要求美食信息管理系统旨在为用户提供当下我国各地具体的美食信息,包括详细介绍和图片说明,让用户能够快速得到相应的信息。如果我们所设计的美食信息管理系统能够在现实生活中得到广泛的应用,我们应该考虑实现相应的数据挖掘方面的功能,例如通过记录用户一段时期的搜索美食信息的词条,每当用户登陆时可以向用户推送相关信息,提高用户的体验。3、设计阶段3.1、概要设计3.1.1设计目标本系统是根据日常生活对美食信息查询与管理的实际需求来开发的,完全能够实现用户对美食信息的管
19、理,通过本系统可以达到以下目标:(1)系统运行稳定,安全可靠;(2)界面设计美观,人机交互界面友好;(3)信息查询灵活、方便、快捷、准确、数据存储安全可靠;(4)任何人可以随时注册自己的账号;(5)对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误;(6)满足键盘和鼠标的双重操作,完全支持Enter键。3.1.2 系统功能结构设置图四:美食信息管理系统软件结构图3.1.3 数据库物理模型图五:美食信息管理系统数据库物理模型3.2、详细设计3.2.1 系统界面设计(1) 为了防止非法用户进入系统,本软件设计了系统登录窗口。在程序启动时,首先弹出登录窗口,要求用户输入登录信息,如果用户
20、输入不合法,将禁止进入系统。系统登录窗口运行结果如下图所示:图六:美食信息管理系统登陆界面(2) 与登陆界面相对应的是,要提供注册功能,通过注册后才能够让设计的系统软件得到更多的用户。系统注册界面如下图所示: 图七:美食信息管理系统注册界面(3)用户通过登陆界面成功登陆后将进入相应的功能界面,首先说明管理员功能界面的设计。管理员功能运行结果如下图所示:图八:管理员新增美食信息功能界面图九:管理员新增美食信息中选择图片功能界面图十:管理员修改美食信息功能界面图十一:管理员删除美食信息功能界面图十二:管理员个人信息功能界面(4)用户通过登陆界面成功登陆后将进入相应的功能界面,最后说明客户功能界面的
21、设计。客户功能运行结果如下图所示:图十三:客户查询美食信息功能界面图十四:客户打印输出美食信息功能界面图十五:客户个人信息功能界面3.2.2 系统功能模块算法设计我们设计的美食信息管理系统主要包括管理员和客户登陆两大功能模块,其中管理员功能模块中能够进行美食信息的添加、修改、删除功能,客户功能模块中能够进行美食信息的查询、打印输出功能。在设计出各个功能模块界面后,最为核心的是要实现相应功能界面中的按钮触发事件。例如,管理员端中新添美食信息功能界面中的添加按钮触发事件、修改美食信息功能界面中的修改按钮触发事件、删除美食信息功能界面中的删除按钮触发事件,客户端中查询美食信息功能界面中查询按钮的触发
22、事件和打印美食信息按钮的触发事件。为这些触发事件设计一个良好的算法,能够大大提高程序的运行效率。4、调试与分析4.1、功能模块源代码 4.1.1新添美食信息功能模块添加按钮核心代码源代码如下:if(arg0.getSource() = btnNewButton_6)String B2 = ""String B3 = ""String A1 = textField.getText();String B1 = comboBox.getSelectedItem().toString();String C1 = comboBox_1.getSelectedIte
23、m().toString();String D1 = comboBox_2.getSelectedItem().toString();String E1 = comboBox_3.getSelectedItem().toString();String F1 = textArea.getText();if(B1.equals("面类")B1 = "041001"else if(B1.equals("粉类")B1 = "041002" else if(B1.equals("水果类") B1 = &q
24、uot;041003" else if(B1.equals("油炸类") B1 = "041004" else if(B1.equals("火锅类") B1 = "041005" else if(B1.equals("冷品类") B1 = "041006" else if(B1.equals("熟食类") B1 = "041007" else if(B1.equals("糕点类") B1 = "0
25、41008" sql = "select finefoodSiteNo from Fine food site where provice = '"+C1+"' and city = '"+D1+"' and county = '"+E1+"'" try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.println("加载驱动程序成功"); catc
26、h(Exception e) System.out.println("无法加载驱动程序"); try Connection conn =DriverManager.getConnection("jdbc:sqlserver:/localhost:1433;DatabaseName=Fine food" + " management system","sa", "9588314"); Statement stmt = conn.createStatement(); ResultSet rs = s
27、tmt.executeQuery(sql); if(rs.next() B2 = rs.getString(1); System.out.println(B2); else foodTypeNo = foodTypeNo + 1; B2 = foodTypeNo + "" sql = "insert into Fine food site values('"+B2+"','"+C1+"','"+D1+"','"+E1+"'
28、)" int i = stmt.executeUpdate(sql); if(i>0) JOptionPane.showMessageDialog(null,"添加成功"); else JOptionPane.showMessageDialog(null,"添加失败"); /JOptionPane.showMessageDialog(this, "不存在这样的美食", "错误!",JOptionPane.ERROR_MESSAGE); rs.close(); stmt.close(); catch(
29、SQLException e) System.out.println("SQL异常"); sql = "select * from Fine food site where provice = '"+C1+"' and city = '"+D1+"' and county = '"+E1+"'" try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.print
30、ln("加载驱动程序成功"); catch(Exception e) System.out.println("无法加载驱动程序"); try Connection conn =DriverManager.getConnection("jdbc:sqlserver:/localhost:1433;DatabaseName=Fine food" + " management system","sa", "9588314"); Statement stmt1 = conn.crea
31、teStatement(); ResultSet rs1 = stmt1.executeQuery(sql); if(rs1.next() foodNameNo+=1; B3 = foodNameNo + "" System.out.println(B3); System.out.println(path_file); /rs1 = stmt1.executeQuery("select MAX(finefoodNo)+1 as finefoodNo from Fine food Name"); / String B6 = rs1.getString(1)
32、; /System.out.println("执行成功!"+B6); sql = "insert into Fine food Name values ('"+B3+"','"+B1+"','"+A1+"','"+F1+"','"+path_file+"')" /System.out.println(""); int i = stmt1.executeUpd
33、ate(sql); if(i>0) JOptionPane.showMessageDialog(null,"插入成功"); else JOptionPane.showMessageDialog(null,"插入失败"); else JOptionPane.showMessageDialog(this, "添加异常", "错误!",JOptionPane.ERROR_MESSAGE); rs1.close(); stmt1.close(); catch(SQLException e) System.out.pr
34、intln("SQL异常"); sql = "select * from Fine food site where provice = '"+C1+"' and city = '"+D1+"' and county = '"+E1+"'" try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.println("加载驱动程序成功"); cat
35、ch(Exception e) System.out.println("无法加载驱动程序"); try Connection conn =DriverManager.getConnection("jdbc:sqlserver:/localhost:1433;DatabaseName=Fine food" + " management system","sa", "9588314"); Statement stmt2 = conn.createStatement(); ResultSet rs2
36、= stmt2.executeQuery(sql); if(rs2.next() B2 = rs2.getString(1); B3 = foodNameNo + "" sql = "insert into Site values ('"+B2+"','"+B3+"')" /System.out.println(""); int i = stmt2.executeUpdate(sql); if(i>0) JOptionPane.showMessageDial
37、og(null,"插入成功1111"); else JOptionPane.showMessageDialog(null,"插入失败1111"); else JOptionPane.showMessageDialog(this, "添加异常", "错误!",JOptionPane.ERROR_MESSAGE); rs2.close(); stmt2.close(); catch(SQLException e) System.out.println("SQL异常"); 4.1.2 新添美食信息功能
38、模块美食图片按钮核心代码(获取图片信息)源代码如下:/按钮触发事件中代码if(arg0.getSource() = btnNewButton_5)Insert_picture chooser = new Insert_picture();path_file = chooser.file_path;System.out.println(path_file);/Insert_picture类代码public class Insert_picture extends JFrame /* * */private static final long serialVersionUID = 1L;priva
39、te JPanel contentPane;public String file_path = ""PaintPanel paint;Toolkit toolkit=Toolkit.getDefaultToolkit();/* * Launch the application. */public static void main(String args) EventQueue.invokeLater(new Runnable() public void run() try Insert_picture frame = new Insert_picture();frame.s
40、etVisible(true); catch (Exception e) e.printStackTrace(););/* * Create the frame. */public Insert_picture() setTitle("选择添加美食图片");setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setBounds(200, 100, 550, 450);Image img=toolkit.getImage("image1.jpg"); setIconImage(img); contentPane =
41、 new JPanel();contentPane.addAncestorListener(new AncestorListener() public void ancestorAdded(AncestorEvent arg0) if(!file_path.equals("")setVisible(false);public void ancestorMoved(AncestorEvent arg0) public void ancestorRemoved(AncestorEvent arg0) );contentPane.setBorder(new EmptyBorder
42、(5, 5, 5, 5);contentPane.setLayout(new BorderLayout(0, 0);setContentPane(contentPane);JFileChooser fileChooser = new JFileChooser();contentPane.add(fileChooser,BorderLayout.CENTER);paint = new PaintPanel();paint.setBorder(new BevelBorder(BevelBorder.LOWERED,null,null,null,null);paint.setPreferredSiz
43、e(new Dimension(150,300);fileChooser.setAccessory(paint);fileChooser.addPropertyChangeListener(new PropertyChangeListener()public void propertyChange(PropertyChangeEvent arg0)do_this_prorertyChange(arg0););javax.swing.filechooser.FileFilter filter = new FileNameExtensionFilter("图像文件(*" + &
44、quot;.jpg;*.png;*.gif;*.bmp)","jpg","png","gif","bmp"); fileChooser.setFileFilter(filter);/chooser.setFileSelectionMode(JFileChooser.WIDTH);fileChooser.setMultiSelectionEnabled(false);int result = fileChooser.showOpenDialog(this);if(result = JFileChooser.
45、APPROVE_OPTION)File file = fileChooser.getSelectedFile();file_path = file.getAbsolutePath();System.out.println(file_path);protected void do_this_prorertyChange(PropertyChangeEvent e)if(JFileChooser.SELECTED_FILE_CHANGED_PROPERTY = e.getPropertyName()File picfile = (File) e.getNewValue();if(picfile !
46、= null && picfile.isFile()tryImage image = getToolkit().getImage(picfile.toURI().toURL();paint.setImage(image);paint.repaint();catch (MalformedURLException e1)e1.printStackTrace();4.2、功能模块测设用例4.2.1 测试设计用例(1)测试用例一美食名称:热干面美食类型:面类所在省:湖北省所在市:武汉所在县:武昌详细介绍:源于三十年代初期汉口长堤街卖汤面的蔡明伟。蔡明伟是黄陂蔡榨人,他的汤面做得非常受欢
47、迎,客人经常排队要等很长时间才能买到,很多客人等不及走掉了,蔡明伟做生意很会动脑筋。为了加快出货量,通过反复试验,他终于摸索出一套“掸面”的工艺就是先把面煮七八成熟,然后快速降温并均匀抹上油,这样卖面时,出货量就快了。有一次蔡明伟在长堤街看到一家麻油作坊,看见他们从芝麻中提取麻油后,芝麻酱闲弃在一边,香气扑鼻,他灵机一动;何不将芝麻酱加进面里试一下呢?于是蔡明伟向麻油作坊老板购买了些许芝麻酱回家。同样经过多次反复试验,他觉得满意了,身边的人都说好吃,这时候他才信心满满推出他的新产品上街叫卖。图片:热干面.jpg(2)测试用例二美食名称:周黑鸭美食类型:熟食类所在省:湖北省所在市:武汉市所在县:
48、汉口详细介绍:1995年周富裕开始从事卤制品行业,1997年周富裕自行研发出“周黑鸭”的配方,很快“周黑鸭”以“入口微甜爽辣,吃后回味悠长”的独特口味赢得了广大消费者的认同,同年第一家“周记怪味鸭”专卖店在航空路电业集贸市场开业。历经13年的发展,“周黑鸭”成功开发了适合年轻消费群体的鸭类卤制休闲食品系列,为“周黑鸭”这样一个原创商标品牌塑造了鲜明的品牌个性和独特的产品特色!图片:周黑鸭.jpg(3)测试用例三美食名称:臭豆腐美食类型:熟食类所在省:湖南省所在市:长沙市所在县:宁乡县详细介绍:相传清朝康熙八年,由安徽黄山来京赶考的王致和金榜落第,闲居在会馆中,欲返归故里,交通不便,盘缠皆无,欲在京攻读,准备再次应试,又距下科试期甚远。无奈,只得在京暂谋生计。王致和的家庭原非富有,其父在家乡开设豆腐坊,王致和幼年曾学过做豆腐,于是便在安徽会馆附近租赁了几间房,购置了一些简单的用具,每天磨上几升豆子的豆腐,沿街叫卖。时值夏季,有时卖剩下的豆腐很快发霉,无法食用,但又不甘心废弃。他苦思对策,就将这些豆腐切成小块,稍加晾晒
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 茶文化与茶艺鉴赏 教案 项目二 得茶益-茶与健康
- 光的折射(教案)
- 2024-2025学年重庆市八中高三上学期适应性月考卷(二)地理试题及答案
- 载体桩自动化施工技术规范编制说明
- 上海市市辖区(2024年-2025年小学五年级语文)统编版能力评测(上学期)试卷及答案
- 九年级化学上册全套教案
- DB11T 1095-2014 旅行社服务网点服务要求
- 山东省济南市莱芜区2024-2025学年九年级上学期期中考试化学试题(含答案)
- 河北省张家口市桥西区2024-2025学年九年级上学期11月期中化学试题(含答案)
- 2024-2025学年湖北省高中名校联盟高三(上)月考物理试卷(11月)(含答案)
- 学校食堂调查方案
- 2024年航空职业技能鉴定考试-无人机AOPA驾驶证考试(视距内驾驶员视距内驾驶员)笔试历年真题荟萃含答案
- 激励理论-赫茨伯格的“双因素理论”案例分析课件
- JC-T 738-2004水泥强度快速检验方法
- 第六章-冷冻真空干燥技术-wang
- 科研的思路与方法
- 山东联通公司招聘笔试题
- 2024年新智认知数字科技股份有限公司招聘笔试参考题库含答案解析
- 金属探测器检测记录
- 安全教育记录范文(25篇)
- 2024年供应链管理竞赛考试题库
评论
0/150
提交评论