软件开发实例开发实例1(5月31日)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第六章 开发实例
(1)学生管理
应用开发实例-----选课系统
1. 系统的需求 为简单起见,假设选课系统有两类参与者:教务员和 学生
教务员:
─ 可以输入一个新学生;更新、查询学生的信息。 ─ 可以输入一门新课程;更新、查询课程的信息。 ─ 可为指定教师开一门课程;查询已开课程的选课学生
名单。 ─ 可为指定的学生选课;输入学生成绩。
数据表示层:即界面表达,是客户端应用程序的重要组 成部分。需设计以下三个窗体边界类:
InputStudentForm SearchStudentForm UpdateStudentForm
(1)创建项目NTier
选择菜单“开始”|“ 所有程序”|“ Microsoft Visual Studio 2019”|“ Microsoft Visual Studio 2019”,进入“起始页-Microsoft Visual Studio”。
string server= setttingNode.SelectSingleNode("server").InnerText;
string db = setttingNode.SelectSingleNode("db").InnerText;
string conStr = "Provider=SQLOLEDB.1;"; conStr += "Integrated Security=SSPI;"; conStr += "Initial Catalog=" + db + ";Data Source=" + server; conn.ConnectionString = conStr; } } }
在菜单栏中选择“文件”|“新建”|“项目”,打开【新建项 目】对话框,在此对话框中选择项目类型为Visuanl C# | Windows。
输入项目名称NTier
在NTier下,创建CourseManager、StudentManager、 TeacherManager、UserManager四个文件夹。具体做法:
<?xml version="1.0" encoding="UTF-8" ?> <appConfig> <setting> <server>LENOVO-2A3D3E14</server> <db> studentmanage </db> </setting> </appConfig>
主窗体(Form1)包括一个主菜单和若干子菜单 输入子窗体(InputStudentForm)实现学生信息输入 查询子窗体(SearchStudentForm)实现学生选课查
询 更新子窗体(UpdateStudentForm)实现学生信息的
更新、删除
②从软件体系结构的角度看,学生管理程序可分三层部署。 数据存储层:创建学生管理所需数据库studentmanage,并 将其部署在SQL Server2019数据库服务器端。
int dotPos = s.IndexOf(".");
s = s.Substring(0, dotPos);
s += ".xml";
// 将后缀名从exe改成xml
XmlDocument doc = new XmlDocument();
doc.Load(s);
// 加载xml文件
XmlNode root = doc.DocumentElement; XmlNode setttingNode = root.SelectSingleNode("setting");
namespace NTier
{
class DbConnection
{
protected static OleDbConnection conn= new OleDbConnection();
static DbConnection()//静态构造函数前不允许加访问权限修饰符
ቤተ መጻሕፍቲ ባይዱ
{
string s = Application.ExecutablePath;//获得完整的应用程序路径
在解决方案资源管理器的树形目录中,右击NTier节点, 在弹出的快捷菜单中选择“添加”|“新建文件夹”命令。
(2)创建主窗体界面(Form1)
拖入 窗体
(3)在Ntier下创建数据连接类 DbConnection
using System; using System.Collections.Generic; using System.Text; using System.Data.OleDb; using System.Xml;//XmlDocument类等需要此引用语句 using System.Windows.Forms;//Application类需要此引用语 句
数据访问层:是客户端应用程序的重要组成成份之一。实现 数据库连接和访问功能。因此,要设计
一个数据链接类DbConnection类:实现对服务器端数据 库(如studentmanage)的连接功能。
一个实体类Student类:控制类中逻辑操作的主体
一个控制类StudentManagerAction类:实现对 studentmanage库中学生信息的输入、查询、更新与删 除功能,其中学生信息输入、查询、更新与删除将以 该类方法的形式出现。
学生:
─ 可以查询自己所有的选课信息,包括:自己的已选课 列表和待选课列表;
─ 可以选课。 ─ 可以输入自己对某门课程任课教师的评价。
2. 系统模块划分
3. 开发过程(以学生管理为例)
分析:
① 从系统模块划分的角度看,解决该问题需要一个主窗 体和三个子窗体。在主窗体的子菜单中完成对各子窗 体的调用。其中:
关于DbConnection类的配置文件.xml
在DbConnection对象定义中,连接字符串conStr中参数 “数据库名”和“服务器名”取值来自于我们为该项目创 建的xml配置文件。可将该配置文件保存在项目Ntier所在 目录的bin\debug\文件夹中,xml配置文件的文件名与项目 名相同,扩展名为.xml。 使用该配置文件可以动态生成数据库连接串,在不修改程 序代码的前提下方便对不同服务器,不同数据库的访问, 增强了程序的适应性。
相关文档
最新文档