Spring Boot打造Java免税商品购物体验

第二章 系统开发关键技术
2.1 JAVA技术
Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterrise JavaBeans)的全面支持,java servlet AI,JS(java server ages),和XML技术。
JAVA语言功能:
面向对象:面向对象是Java编程语言的标志之一,是一种软件开发方法。最重要的是将所有东西变成对象,然后以某种方式编程。编程时,代码和数据写在每个对象上。 面向对象编程方法的出现使得人们在编程过程中的设计思考和操作变得非常简单,同时也提高了程序的安全性。
跨平台:Java流行的一个关键特性是它的跨平台特性,这使得用Java编程变得容易。您可以用Java编写程序并在其他地方运行它,而无需在编译后更改它。
垃圾回收机制:用来将那些在程序不操作时无用的对象所占用的内存空间释放掉,C ++最被人厌恶的就是因为其不能将在编程的过程中所占用的内存空间进行及时的释放,导致随着编程时间的变长所占用的内存空间越来越多。对于一些编程高手而言,他们会在刚开始编程的时候配置一块内存地址放在堆栈上,然后在不需要的时候会对其进行释放,而一些新手和菜鸟在很多的时候会忘记删除这个内存地址,从而导致程序在运行的过程中会变得十分的不稳定,最终有可能会导致程序崩溃。所以很多C ++的高手在编写程序时往往都会将删除后的指针的值设置为NULL,然后在删除之前确定一个指针的值是否为NULL。
2.2 MyEclipse开发环境
MyEclipse支持广泛、兼容性高并且功能强大,是一个Eclipse 插件集合,普遍适应于JAVA和J2EE的系统开发,支持 JDBC,Hibernate,AJAX,Struts,Java Servlet,Spring,EJB3等市面上存在的几乎所有数据库链接工具和主流Eclipse产品 开发工具。
MyEclipse在业内是所熟知的开发工具,该平台在开发的过程中运用的就是该工具。MyEclipse又被称之为企业级的工作平台,它是以Eclipse IDE为基础的。MyEclipse可以帮助我们进行数据库的研发和J2EE的使用,除此之外,还可以提高系统的运营能力,这突出表现在服务器的整合过程中。MyEclipse的功能相当完备,能够为J2EE的集成提供必要的环境支持,从而完成编码、测试、调试及发布等功能。它可以支持JSP,HTML,SQL,Javascript,Struts, CSS等。
2.3 Tomcat服务器
Tomcat属于一种轻型的服务器,所以说在中小企业中并不具有普适性。但是当程序员需要开发或调试JSP 程序时,则通常会将该服务器作为首选。对于一个仅具有计算机基础知识的人来说,计算机系统具有一个好的Apache服务器,可以很好的对HTML 页面进行访问。Tomcat 虽然是Apache的扩展,但是它们都是可以独立运行的,二者是不互相干扰的。当配置正确的时候,Apache服务器为HTML 页面的运行提供技术支持,Tomcat 的任务则是运行Servle和JSP 页面。Tomca也具有一定的HTML页面处理功能。
2.4 Spring Boot框架
Spring Boot是Pivotal团队的一个新框架,旨在简化新Spring应用程序的初始设置和开发。该框架使用特定的配置方法,无需开发人员定义样板配置。通过这种方式,Spring Boot旨在成为蓬勃发展的快速应用程序开发领域的领导者。
Spring Boot特点:
1、创建一个单独的Spring应用程序;
2、嵌入式Tomcat,无需部署WAR文件;
3、简化Maven配置;
4、自动配置Spring;
5、提供生产就绪功能,如指标,健康检查和外部配置;
6、绝对没有代码生成和XML的配置要求;
安装步骤:
最基本的是,Spring Boot是一个可以被任何项目的构建系统使用的库集合。 为简单起见,该框架还提供了一个命令行界面,可用于运行和测试Boot应用程序。 可以从Spring存储库手动下载和安装框架的已发布版本,包括集成的CLI(命令行界面)。 更简单的方法是使用Groovy enVironment Manager(GVM),它负责处理Boot版本的安装和管理。 可以从GVM命令行GVM install springboot安装Boot及其CLI。 在OS X上安装Boot时可以使用Homebrew包管理器。要完成安装,首先使用brew tap pivotal / tap切换到pivotal存储库,然后执行brew install springboot命令。
2.5 MySQL数据库
Mysql的语言是非结构化的,用户可以在数据上进行工作,并且其语言简单,学习起来比较容易,其结构也简单,功能强大,存储信息量大,Mysql主要应用于数据的查询和编程,现在普遍存在的关系数据库有很多,并得到了普遍的应用。使用Mysql数据库在编程过程中带来了极大的方便,可以对数据进行广泛地查询,Mysql数据库的应用并不需要用户了解其存储的方式,更不用掌握数据存放的方法,Mysql数据库的灵活性较强,功能也较强大,大多数情况下,在其他程序中实现某功能需要编写一大堆代码,而在Mysql数据库中只需要一小段代码就可以实现功能,所以,Mysql数据库的语言较简洁。
数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。
第四章 系统的总体设计
4.1 系统功能结构设计
架构设计的目的是反映一个结构和其他元素之间的关系,抽象,通常用于指导大型软件系统。将一个巨大的任务细分为多个小任务的过程是系统架构的总体设计。完成小任务后,整个任务就可以完成了。具体的实现过程是分解系统,分析各部分的功能、接口和逻辑关系。信息传递的设计,最后一步是优化,系统的大体功能靠两部分展现,它们分别是前端平台和后端平台,应用MVC开发框架,页面是一个一个模块组建而成的,层次结构分明,思想运用的是面向对象,一个实体对应一个数据类型,还要对每个数据类添加一个实施类。
架构设计的用途是反映一个结构内的元素与别的元素之间的关系,有抽象性,一般用于为大型软件系统提供指导。将庞大的任务具体细分为多个小人物的过程就是系统架构的整体设计,对细小任务进行整合后就可以完成整个任务,具体实现过程是分解系统,对各个部分的功能、界面和逻辑关系、信息传输予以设计,最后是进行逐步的优化。
用户拥有最高管理权限。通过以上需求分析的调查与研究,将系统的功能定义如下图4-1所示。
在这里插入图片描述

图4-1 系统管理员体功能结构图

4.2 数据库概述
在对软件系统分析后,就开始进行软件设计了。在对软件数据库进行设计时,就要先对软件进行一个概念性数据模型设计,来对用户的数据要求清晰明了的表达,从而减少数据运行更加的规范化和减少数据的冗余。
4.2.1 数据库概念设计
实现数据概念模型,我们必须采取数据作为起点,做好数据收集和处理的控制,分析它们之间的关系,得到其逻辑模型,该模型不理解的方式来实现和细节性问题,只要系统中数据的状态处理阶段。
我们分析特定用户的需求的功能系统,详细设计在线系统的ER图,我们可以在多个实体之间获得详细的关系模型,如下图所示:实体模型图之间的关系:
(1)用户E-R图
在这里插入图片描述

图4-2管理员E-R图
(2)商品类别E-R图
在这里插入图片描述

图4-3仓库资产类别E-R图
(3)商品信息E-R图
在这里插入图片描述

图4-4 商品信息E-R图
(4)订单信息E-R图
在这里插入图片描述

图4-5 订单信息E-R图
4.2.2 数据库逻辑设计
我们可以根据数据结构的详细分析要求,我们根据输入和输出数据量的要求进行分析,确定什么表表,结构之间的关系,我们可以验证, 调整和完善,查询和浏览过程,可以实现数据库,以使用户对数据和功能有更多要求。
表4-1:address信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
userid bigint 20 DEFAULT NULL
address varchar 200 DEFAULT NULL
name varchar 200 DEFAULT NULL
phone varchar 200 DEFAULT NULL
isdefault varchar 200 DEFAULT NULL
表4-2:cart信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
tablename varchar 200 DEFAULT NULL
userid bigint 20 DEFAULT NULL
goodid bigint 20 DEFAULT NULL
goodname varchar 200 DEFAULT NULL
picture varchar 200 DEFAULT NULL
buynumber int 11 DEFAULT NULL
表4-3:chat信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
tablename bigint 20 DEFAULT NULL
userid bigint 20 DEFAULT NULL
goodid bigint 20 DEFAULT NULL
goodname varchar 200 DEFAULT NULL
picture varchar 200 DEFAULT NULL
buynumber int 11 DEFAULT NULL
表4-4:config信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
refid bigint 20 DEFAULT NULL
userid bigint 20 DEFAULT NULL
nickname varchar 200 DEFAULT NULL

表4-5:gongyingshang信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
name varchar 100 DEFAULT NULL
value varchar 100 DEFAULT NULL
表4-6:discussshangpinxinxi信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
refid bigint 20 DEFAULT NULL
userid bigint 20 DEFAULT NULL
nickname varchar 200 DEFAULT NULL

表4-7:news信息表
列名 数据类型 长度 约束
id int 11 PRIMARY KEY
title varchar 200 DEFAULT NULL
picture varchar 200 DEFAULT NULL
表4-8:orders信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
orderid varchar 200 DEFAULT NULL
tablename varchar 200 DEFAULT NULL
userid bigint 200 DEFAULT NULL
goodid bigint 200 DEFAULT NULL
guige varchar 200 DEFAULT NULL
goodname varchar 200 DEFAULT NULL
picture varchar 200 DEFAULT NULL
type int 11 DEFAULT NULL
status varchar 200 DEFAULT NULL
address varchar 200 DEFAULT NULL
表4-9:shangjia信息表
列名 数据类型 长度 约束
id bigint 20 PRIMARY KEY
shangjiazhanghao varchar 200 DEFAULT NULL
mima varchar 200 DEFAULT NULL
shangjiaxingming varchar 200 DEFAULT NULL
dianpudizhi varchar 200 DEFAULT NULL
lianxiren varchar 200 DEFAULT NULL
lianxifangshi varchar 200 DEFAULT NULL
shangjiatupian varchar 200 DEFAULT NULL
jingyingfanwei varchar 200 DEFAULT NULL
sfsh varchar 200 DEFAULT NULL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值