基于java的医药管理系统的设计与实现毕业论文(编辑修改稿)内容摘要:

好一个比较完善的文件夹组织结构,使得整个项目开发思路比较清晰,让编程人员能很快地定位到每一个模块的设计。 开发中,文件夹命名的规范化发挥着十分重要的作用。 在 MyEclipse 软件中,该系统的文件夹组织结构如下所示 [10]: src 目录:是一种可执行文件夹,可存放类包,类包中存放源代码文件,即后缀为 java 格式的文件。 包:每一层都是文件夹,采用将域名倒写的方式定义包名。 该文件下存放实 体类,也就是 java 中常说的 pojo 类。 包:用于存放实体关系映射文件 (ORM 文件 ),将实体类通过该配置文件和数据库中的表一一对应起来,找到它们之间的联系。 包:存放自己编写好的工具类,该工具类可以在不同的包中重复使用,起到某些相应的功能,如给密码加密或者读取某文件内容。 包:存放业务处理的类,即 Action 组件。 包:用于存放 interceptor 拦截器,主要作用是对用户请求进行 再次拦截,执行时机是在 Action 组件之前执行。 包:用于存放配置文件,如后缀为 properties 的文件。 可通过 java 中 IO 流进行读取文件内容。 包:用于存放一些服务类,常和 dao 类联合使用。 WebRoot 目录:是不可执行的文件夹,用于储存 jsp 页面,即浏览网页。 6 3 数据库设计 数据库分析 数据库,顾名思义就是一个大型仓库,用来存储大量的数据。 它包含所有涉及到的信息,主要囊括用户信息、药品基本信息和类别信息、以及销售明细信息。 通过某 种对应关系,间接的将所有信息数据联系起来。 在真实的企业开发中,数据库往往单独安装在某个特定的服务器上。 这样做的目的就是防止大量用户过度频繁的访问数据库,从而造成服务器的瘫痪。 不仅如此,这样做还可以提高查询速度,降低服务器的负担。 因此,不同的硬件要求,可能会影响到数据库的性能,以下给出了数据库运行环境的要求: (1) 硬件要求: CPU:要求在 以上。 内存:要求在 2GB 以上。 硬盘储存空间: 150GB 或者更高。 (2) 软件要求: 操作系统: Windows 7 操作系统。 数据库版本: 版本。 数据库设计 通过以上对该系统的功能结构的分析,将每一个模块所涉及到的信息抽象成一个数据实体对象,将这些对象通过数据表的形式储存在数据库中。 为了能更好的对数据库中的结构,下面简单介绍一下数据库的相关知识。 数据库中的数据类型主要包括整型 (int)、浮点型 (double)、字符型 (varchar)、日期类型 (datetime)。 定义类型时含有数字,说明是数据的精确度或字符的长度。 数据库中的约束条件是用来给数据表中的某些列添加限制,主要包括有五种,分别为主键约束 (Primary key)、外键约束 (Foreign key)、唯一约束 (Unique)、非空约束 (not null)和检查约束 (Check)[11]。 前三种是最为常用的约束条件,它们各自的简写分别为 PRI、 MUL 和 UNI,作用如下: ① 主键约束:主键是用来区分一个数据表中的每一行数据,主键的特点是唯一性和不能为空值,因而不同的行具有不同的主键。 主键的生成方式往往采用 7 数据库自增的方式 auto_increment,随数据的添加自增序列号。 ② 外键约束:外键是定义在两张表的不同列或同一张表中的不同列,用于联系两个列之间的关系,起到关联作用,保证数据的一致性,往往 将一张表的主键作为另一张表的外键。 含有外键的表是主表,不含外键的表是子表。 ③ 唯一约束:此约束是说明该列的每一个数值都是唯一的,不能重复。 定义唯一约束的主要目的是,在没有主键所定义的其他列中不能重复输入相同列值。 以下给出了几种实体对象的表结构: (1) 用户对象所对应的表结构,如表 31 所示: 表 31 用户对象数据表 属性 数据类型 是否可为空 键值 默认值 额外信息 id int(11) NO PRI NULL auto_increment username varchar(50) NO UNI NULL password varchar(50) NO NULL create_time datetime YES NULL (2) 药品对象所对应的表结构,如表 32 所示: 表 32 药品对象数据表 属性 数据类型 是否可为空 键值 默认值 额外信息 id int(11) NO PRI NULL auto_increment med_no varchar(100) NO UNI NULL name varchar(100) NO NULL factory_add varchar(100) YES NULL description text YES NULL price double NO NULL med_count int(11) YES NULL req_count int(11) YES NULL photo_path varchar(255) YES NULL category_id int(11) YES MUL NULL (3) 销售明细对象所对应的表结构,如表 33 所示: 8 表 33 销售明细对象数据表 属性 数据类型 是否可为空 键值 默认值 额外信息 id int(11) NO PRI NULL auto_increment sell_name varchar(200) NO NULL sell_price double NO NULL sell_count int(11) NO NULL sell_time datatime NO NULL med_id int(11) YES MUL NULL user_id int(11) YES MUL NULL (4) 药品类别对象所对应的表结构,如表 34 所示: 表 34 药品类别对象数据表 属性 数据类型 是否可为空 键值 默认值 额外信息 id int(11) NO PRI NULL auto_increment name varchar(100) NO NULL description text YES NULL create_time datetime YES NULL 在数据库中创建以上各表的时候,应该明确定义以上每个字段,缺少其中的某个字段都有可能提示创建失败等信息。 同时,应注意数据的类型和精确度,以及约束条件和附加信息。 数 据库创建 利用 SQL 语言 (结构化查询语言 )将所需的数据库和数据表以语言脚本的形式生成,在 MySQL 软件客户端的命令行界面输入指令即可完成创建过程。 如:在 E 盘下创建了一个“ E:\”的数据库脚本,在命令行界面执行指令“ source E:\”后,即可完成创建过程。 另外一种创建方式,可将SQL 脚本添加到 MyEclipes 软件的项目中,通过软件自带的“数据库连接插件”完成数据库的创建,一般不采用这种形式。 9 4 配置文件 配置 文件 文件又叫做部署描述文件,它的主要作用就是初始化配置信息。 在该文件中可定义过滤器对请求过滤;可定义监听器对事件进行监听;也可定义servlet 组件实现逻辑处理等等一些信息 [12]。 此文件的具体作用如下: ( 1) 可以定义某个首选页面: welefilelist welefile/welefile /welefilelist 当你访问某个网站的时候,首次浏览到的页面就是 页面。 ( 2) 为 Struts 组件 Servlet 命名: servlet servletnameaction/ servlet name servletclass /servletclass /servlet 这里由 Struts 框架的底层原理来实现,该组件由 Struts 框架提供的 jar 包中的类 ActionServlet 来完成,命名为 action。 ( 3) 为 servlet 定制 统一资源定位器 ( URL): filtermapping filternameaction/filtername urlpattern*.do/urlpattern /filtermapping “ /*” 代表对所有的请求字符串进行过滤 , “ *.do” 代表对请求以“ .do” 结尾的请求过滤。 通过 servlet 的名字找到以上命名之后的组件,例如:通过 action名字找到 ActionServlet 类。 10 配置 文件 文件是 Struts 框架的核心配置文件。 通过该文件中的配置信息, 可调用与请求资源相对应的 Action 组件,并返回所需的执行结果,实现页面的跳转。 由于 文件当中的配置相对较多,所以不再一一列举其中的配置信息,只对其中最为常用的重点标签和属性做详细介绍,如下: (1) datasources标签:该标签的作用是用来配置 web 应用所需的数据源,最多。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。