2022年网上购物系统 .pdf

上传人:H****o 文档编号:32443188 上传时间:2022-08-09 格式:PDF 页数:18 大小:583.97KB
返回 下载 相关 举报
2022年网上购物系统 .pdf_第1页
第1页 / 共18页
2022年网上购物系统 .pdf_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《2022年网上购物系统 .pdf》由会员分享,可在线阅读,更多相关《2022年网上购物系统 .pdf(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、378 第 16 单元网上购物系统单元描述: 本单元主要探讨基于JavaEE 的 Web 应用系统的开发,将通过网上购物系统讲述使用JavaEE 框架技术开发Web 系统的过程。在描述该系统时,引入软件工程的概念,采用项目开发的顺序,一步一步展开。使学生在按照该案例进行操作的同时,提前体验以后软件开发岗位的工作。该系统采用B/S 模式的四层开发模型进行设计,其数据库层由MySQL 实现,表示层由JavaEE的 Struts 2 框架实现,业务逻辑层由Spring框架实现,数据持久化层由Hibernate 框架实现。单元目标:掌握系统开发的主要步骤;能够完成系统的需求分析和功能解析;了解系统数据

2、库设计的过程;掌握数据库层、数据持久化层、业务逻辑层、表示层的开发步骤。16.1步骤网上购物系统需求分析根据网上购物的基本特点,网上购物系统应具有如下基本功能:(1)用户管理,即用户登录、注册、注销操作;(2)商品浏览,即按照商品类别进行商品分类查询和浏览;(3)购物车管理,即将用户选购的商品加入购物车,实现购物车的查询和更新;(4)订单管理,即对用户选购的商品生成订单。根据上述系统功能分析,设计网上购物系统的功能模块图如图16-1 所示。16.2步骤 2网上购物系统数据库设计网上购物系统应包含用户、商品、商品分类信息,因此该系统的E-R 图如图16-2所示。图 16-1网上购物系统功能模块图

3、用户管理商品浏览购物车管理订单管理按照商品分类查询主界面注销注册登录查询更新添加生成订单信息名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 18 页 - - - - - - - - - 379 (1)用户:代表一个用户实体,主要包括用户信息,如用户名、密码、性别、年龄等。(2)商品分类:代表网上购物系统中已有商品的分类信息,如精品图书、数码产品等。(3)商品信息:代表具体商品的详细信息,如商品名称、价格、折扣、图片等。各个实体之间存在的对应关系如下。(1)商品分类与商品的

4、关系:一种商品属于一种商品分类,一种商品分类包含多种商品,因此该关系是一对多的关系。(2)用户与商品的关系:一个用户可以订购多种商品,一种商品可以被多个用户订购,因此该关系是多对多的关系。当用户购买商品时,系统要将购买信息记载入购物车中,产生临时购买信息,并记载下需要购买的数量;当用户确定要对自己所选择的商品下订单时,将产生对应的订单信息。因此该系统需要5 张表,分别为用户表、 商品信息表、 商品分类表、购物车表以及订单表。各表之间的关系图如图 16-3 所示。其中,用户表(user) 、商品分类表(productsort) 、商品信息表(productinfo )以及购物车表( cart)已

5、经在前面的章节中已经讲述过了,请读者参考。为了记录商品的图片信息,需要在商品信息表中添加一个picture 字段,该字段的定义如表16-1 所示。此处不再给出创建productinfo 表以及向该表插入记录的SQL 语句,请读者参考第10、11单元的内容自行修改,其余数据表的结构保持不变。列名数据类型长度是否允许为空说明picture varchar 30 允许为空记载图片名称图 16-2网上购物系统的E-R 图用户名密码性别年龄商品用户订购m n 购买数量价格库存量折扣图片商品分类属于n 1 类别名称商品名称图 16-3数据库中各表的关系图表 16-1“productinfo ”表“ pic

6、ture”字段的结构名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 18 页 - - - - - - - - - 380 当用户确定要购买自己放在购物车中的商品时,便产生了订单,该系统的订单表(orders)的表结构如表16-2 所示。列名数据类型长度是否允许为空说明id int 4 主键订单编号userId int 4 不允许为空(外键)用户编号productId int 4 不允许为空(外键)商品编号address varchar 50 不允许为空用户地址telNum

7、 varchar 15 允许为空用户电话e_Mail varchar 50 不允许为空用户邮箱地址创建订单表( orders)的 SQL 代码如下:create table if not exists orders (id int primary key auto_increment, userId int not null, productId int not null, address varchar(50) not null, telNum varchar(15), e_Mail varchar(50) not null ); # 为“ orders”表添带有加级联删除和级联更新功能的外

8、键FK_order_productInfo 、FK_order_user。alter table orders add constraint FK_order_productInfo foreign key(productId) references productInfo(id) on delete restrict on update restrict; alter table orders add constraint FK_order_user foreign key(userId) references user(userID) on delete restrict on updat

9、e restrict; 16.3步骤 3网上购物系统框架搭建在编写代码之前,系统框架搭建的准备工作是必不可少的,应当首先将系统中可能要用到的文件夹创建好,将系统需要的JAR 文件复制出来, 这样可以方便以后的开发工作,也可以规范网站的整体架构,为后续开发和后续维护做好充足的准备。16.3.1工程目录结构解析1domain 文件夹下面将对网上购物系统的目录结构进行解析,首先是domain 文件夹,该文件夹主要存放 JavaBean 组件,其目录结构如图16-4 所示。该文件夹中存放了和数据库对应的各个表的JavaBean 类以及其对应的映射文件,另外还存放了一个特殊的JavaBean文件表 16

10、-2“orders”表的表结构名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 18 页 - - - - - - - - - 381 Cart.java,主要用于记录购物车中商品的详细信息。2dao 文件夹dao文件夹用于存放数据库操作的接口和实现类,其目录结构如图16-5 所示。3service 文件夹service 文件夹用于存放具体业务操作的接口与实现类,目录结构如图16-6 所示。4action 文件夹action 文件夹用于存放各种Action 类,目录结构如图1

11、6-7 所示。5filter 文件夹为 解 决 中 文 乱 码 问 题 , 创 建 过 滤 器Servelt :CharacterEncodingFilter.java 。 该文件的放在filter 文件夹中,其代码和之前案例中的代码相同,这里不再叙述。6database文件夹database文件夹中放shopping.sql 文件,该文件用于存放与 shopping 数据库操作有关的所有SQL 语句,代码已在之前的单元中已经叙述,这里不再重复讲述。7WebRoot 文件夹在该文件夹中包含所有的页面设计,其中image 文件夹存放的是页面上的图片,productImage 文件夹存放的是所有商

12、品的图片。该文件夹的目录结构如图16-8 所示。在页面设计方面,主页为图 16-4domain 的目录结构图 16-5dao 的目录结构图 16-6service 的目录结构图 16-7action 的目录结构图 16-8WebRoot 的目录结构名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 18 页 - - - - - - - - - 382 index.html 该页面分为四部分,页头为head.html,导航条放在左边由navigation.html 显示,正文为

13、content.html ,页脚为foot.html 。用户登录页面为login.jsp,用户注册页面为register.jsp,注册成功页面为registerSuccess.jsp,商品显示页面为showProduct.jsp,购物车中的商品信息显示页面为showCart.jsp,结算中心页面为accountCenter.jsp,出错页面为 error.jsp,成功页面为success.jsp。16.3.2创建 ShoppingSystem工程有了清晰的工程目录后接下来就是创建工程了,通过MyEclipse创建名为ShoppingSystem 的 Web 工程。创建过程此处不再讲述,请读者参

14、看以前的单元。工程创建完毕后,MyEclipse 会自动在WEB-INF 文件夹下生成一个lib 文件夹,将网上购物系统所需要的JAR 文件复制到该文件夹下,完成JAR 文件的添加。16.4步骤 4网上购物系统的代码实现16.4.1数据持久层的实现在 domain 包中创建与数据表对应的持久化类,以及与持久化类对应的映射文件。这些文件包括: UserVo.java、 uservo.hbm.xml 、 ProductInfoV o.java、 productinfovo.hbm.xml 、ProductSortVo.java、 productsortvo.hbm.xml 、 CartVo.jav

15、a、 cartvo.hbm.xml 以及 OrdersVo.java和 ordersvo.hbm.xml 。 这些文件的内容和第15 单元进阶式案例所在的CartSystem 工程的domain 中对应的文件相同, 但是 ProductInfoV o.java、 productinfovo.hbm.xml 、 OrdersVo.java和 ordersvo.hbm.xml 与之前的有所不同,现将ProductInfoV o.java、OrdersVo.java 这两个文件的代码展示如下,请读者参照第15 单元进阶式案例写出productinfovo.hbm.xml和ordersvo.hbm.x

16、ml 文件的代码。/ProductInfoV o.java 文件的代码package domain; public class ProductInfoV o private int id; private int sortId; private String productName; private float price; private float discount; private int inventory; private String discription; private String picture; /省略所有的getter、setter 方法名师资料总结 - - -精品资

17、料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 18 页 - - - - - - - - - 383 /OrdersVo.java 文件的代码package domain; public class OrdersVo private int id; private int userId; private int productId; private String address; private String telNum; private String e_Mail; /省略所有的getter、se

18、tter 方法 16.4.2数据库连接的实现网上购物系统的数据库连接的配置在applicationContext.xml文件中,其中数据源datasource 的配置与第15 单元进阶式案例applicationContext.xml文件中的datasource的配置相同,此处不再叙述,下面给出sessionFactory 的配置。 org.hibernate.dialect.MySQLDialect domain/uservo.hbm.xml domain/cartvo.hbm.xml domain/productinfovo.hbm.xml domain/productsortvo.hbm

19、.xml domain/ordersvo.hbm.xml 16.4.3用户管理模块的实现用户管理模块包括用户登录、注册和注销三大功能,其具体实现过程详述如下。1用户管理数据库操作接口类UserDAO 及其实现类UserDAOImpl 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 18 页 - - - - - - - - - 384 在用户管理中,数据库操作的接口类为UserDAO ,该类共有3 个方法。(1)findByID(int userID):使用主键用户编号检索

20、一个用户的信息。(2)findByProperty(String propertyName,String propertyPsw):检查是否存在具有该用户名和密码的用户。(3)save(UserVo newUser):向数据库新增一个用户,完成新用户注册。接口类 UserDAO 的代码如下。接口类 UserDAO 的实现类UserDAOImpl 的代码如下。2用户管理业务操作接口类UserService 及其实现类UserServiceImpl 在用户管理中, 业务操作的接口类为UserService, 该类共有3 个方法, 完成对 DAO类相关方法的封装。接口类 UserService 的代

21、码如下。package service; import domain.UserV o; public interface UserService public UserVo findByID(int userID); public UserVo findByProperty(String propertyName,String propertyPsw); public void save(UserVo newUser); 接口类 UserService 的实现类UserServiceImpl 的代码如下。3用户管理的Action 类(1)用户登录管理LoginAction 类中的 execut

22、e()方法实现用户登录的功能,该方法依赖于Service 层,登录时需要验证用户输入的用户名和密码是否存在,如果存在需要将该用户放入Session对象中,以便该用户在购买商品或浏览该网站其它网页时能很好的确定用户身份。LoginAction类的代码如下。(2)用户注册管理RegisterAction 类中的 execute()方法实现用户注册的功能,该方法依赖于Service 层。注册时首先需要对用户输入的信息进行校验,校验的方法采用了Struts 2 中的 Validation框架,具体配置操作请参看第9 单元的进阶式案例。另外,相关国际化的内容也要参看第 9 单元的进阶式案例。Regist

23、erAction 类需要验证用户输入的用户名和密码是否存在,如果存在需要重新输入。RegisterAction 类的代码如下。(3)用户注销管理LoginOut 类中的 execute()方法实现用户注销的功能。注销时只需要将登录时加载到Session中的 user对象删除即可。LoginOut 类的代码如下。4用户管理模块的相关配置(1)在 struts.xml 中的配置(2)在 applicationContext.xml中的配置由于 LoginOut 类不是基于Service 层的,所以无需在applicationContext.xml中配置。(4)在 struts.properties

24、 的配置名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 18 页 - - - - - - - - - 385 struts.objectFactory=spring struts.action.extension=action struts.locale=en_GB struts.custom.i18n.resources=Application (5)在 web.xml 中的配置web.xml 中的配置与第15 单元进阶式案例中同名文件的配置相同,此处不再讲述。5用户管

25、理的界面处理及运行效果(1)登录页面login.jsp 以及登录成功页面success.jsp 登录页面 login.jsp 以及登录成功页面success.jsp的代码与第15 单元的实例3 工程名为 SSHUserLogin 中同名文件的代码相同。此处不再重复。 运行效果与第15 单元的图15-16 相同。(2)注册页面register.jsp 注册成功页面registerSuccess.jsp 注册页面 register.jsp 以及登录成功页面registerSuccess.jsp的代码与第9 单元的进阶式案例工程名为RegisterStruts2 中同名文件的代码相同。此处不再重复。

26、运行效果与第9 单元的图9-13、9-14 相同。16.4.4商品浏览模块的实现商品浏览模块主要实现按照商品类别进行查询的功能,其效果图如图16-9 所示,具体实现过程详述如下。1商品浏览模块的数据库操作接口类ProductInfoDAO及其实现类ProductInfoDAOImpl 在商品浏览模块中,数据库操作的接口类为ProductInfoDAO ,该类共有2 个方法。(1)findByID(int id):使用主键商品编号检索商品信息。(2)findBySortId(int sortId) :根据商品类别检索同种类别的商品。接口类 ProductInfoDAO的代码如下。图 16-9商品

27、浏览模块的界面showProduct.jsp 的运行效果名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 18 页 - - - - - - - - - 386 package dao; import java.util.List; import domain.ProductInfoV o; public interface ProductInfoDAO public ProductInfoV o findByID(int id); public List findBySor

28、tId(int sortId); 接口类 ProductInfoDAO的实现类 ProductInfoDAOImpl的代码如下。2商品浏览模块的业务操作接口类ProductInfoService 及其实现类在商品浏览模块中,业务操作的接口类为ProductInfoService ,该类共有2 个方法,完成对 DAO 类相关方法的封装。接口类 ProductInfoService 的代码如下。package service; import java.util.List; import domain.ProductInfoV o; public interface ProductInfoServi

29、ce public ProductInfoV o findByID(int id); public List findBySortId(int sortId); 接口类 ProductInfoService 的实现类ProductInfoServiceImpl的代码如下。3商品类别的数据库操作接口类ProductSortDAO 及其实现类ProductSortDAOImpl 商品类别的数据库操作接口类为ProductSortDAO ,该类共有2 个方法。(1)findByID(int id):使用主键商品类别编号检索商品类别信息。(2)findBySortName(String sortNam

30、e) :根据商品类别名称检索出商品类别的编号。接口类 ProductInfoDAO的代码如下。package dao; import domain.ProductSortV o; public interface ProductSortDAO public ProductSortVo findByID(int id); public int findBySortName(String sortName); 接口类 ProductSortDAO 的实现类 ProductSortDAOImpl的代码如下。4商品类别的业务操作接口类ProductSortService 及其实现类商品类别业务操作的接

31、口类为ProductSortService, 该类共有2 个方法,完成对 DAO类相关方法的封装。接口类 ProductSortService 的代码如下。package service; import domain.ProductSortV o; public interface ProductSortService 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 18 页 - - - - - - - - - 387 public ProductSortVo findB

32、yID(int id); public int findBySortName(String sortName); 接口类 ProductSortService 的实现类ProductSortServiceImpl 的代码如下。5商品浏览模块的Action 类SelectProductBySort 类中的 execute()方法实现按照商品分类浏览商品的功能,该方法依赖于Service 层。 SelectProductBySort 类的代码如下。6商品浏览模块的相关配置(1)在 struts.xml 中的配置(2)在 applicationContext.xml中的配置其它配置文件中的配置保持不

33、变。7商品浏览模块的界面处理及运行效果商品浏览模块的界面处理由showProduct.jsp 实现, 该文件的代码如下。运行效果如图 16-9 所示。16.4.5购物车管理模块的实现购物车模块主要实现登录用户对已选购的商品的管理,其包含对已经选购的商品的查看和删除操作。假定“王新民”已经登录,该用户查看购物车中商品的详细信息的效果图如图16-10 所示,具体实现过程详述如下。1购物车模块的数据库操作接口类CartDAO 及其实现类CartDAOImpl 在购物车中,数据库操作的接口类为CartDAO ,该类共有4 个方法。(1)findALL() :查询购物车表中的全部记录。(2)findBy

34、UserId(int userId) :根据用户编号检索购物车表中的信息(3)save(CartVo newCart):向购物车添加一条记录。(4)delete(int cartId) :删除购物车中的记录。接口类 CartDAO 的代码如下。package dao; 图 16-10购物车管理模块的界面showCart.jsp 的运行效果名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 18 页 - - - - - - - - - 388 import java.util

35、.List; import domain.CartV o; public interface CartDAO public List findALL(); public List findByUserId(int userId); public void save(CartV o newCart); public void delete(int cartId); 接口类 CartDAO 的实现类CartDAOImpl的代码如下。2购物车模块的业务操作接口类CartService 及其实现类在购物车中,业务操作的接口类为CartService,该类共有4 个方法,完成对DAO类相关方法的封装。接

36、口类 CartService 的代码如下。package service; import java.util.List; import domain.CartV o; public interface CartService public List showCart(); public List showCartByUserId(int userId); public void save(CartV o newCart); public void delete(int cartId); 接口类 CartService 的实现类CartServiceImpl 的代码如下。3购物车模块的Actio

37、n 类购物车的Action 类要查询出来的商品的详细信息放到Cart 类生成的对象中,以便在页面上显示。其中Cart 类在 domain 文件夹中,该文件的代码如下。package domain; public class Cart private int userID; private String userName; private int productId; private String productName; private int sortId; private String sortName; private float price; private float discoun

38、t; private String discription; private int cartId; private int count; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 18 页 - - - - - - - - - 389 /省略所有属性的getter、setter方法。 CartProductSelect 类中的execute()方法实现用户对自己购物车中商品详细信息的查询,该方法依赖于Service 层。 CartProductSelect 类的代

39、码如下。AddCart 实现了向购物车中添加一条记录的功能,该文件的代码如下。UpdateCart 类实现了对购物车的更新操作,主要完成删除一条记录的功能。4购物车模块的相关配置(1)在 struts.xml 中的配置 /error.jsp /showCart.jsp /error.jsp /showProduct.jsp /showCart.jsp (2)在 applicationContext.xml中的配置其它配置文件中的配置保持不变。 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -

40、- 第 12 页,共 18 页 - - - - - - - - - 390 5购物车模块的界面处理及运行效果购物车模块的界面处理由showCart.jsp 实现,该文件的代码如下。运行效果如图16-10 所示。16.4.6订单管理模块的实现订单管理模块主要实现下订单的功能,需要在页面上输入用户的联系方式和通讯地址,以便用户可以收到自己选择的商品,并生成订单。其效果图如图16-11 所示,具体实现过程详述如下。1订单管理模块的数据库操作接口类OrdersDAO 及其实现类OrdersDAOImpl 在订单管理模块中,数据库操作的接口类为OrdersDAO ,该类只有1 个方法。(1)save(O

41、rdersVo newOrder):实现下订单的功能。接口类 ProductInfoDAO的代码如下。package dao; import domain.OrdersV o; public interface OrdersDAO public void save(OrdersVo newOrder); 接口类 OrdersDAO 的实现类OrdersDAOImpl 的代码如下。2订单管理模块的业务操作接口类OrdersService 及其实现类在订单管理模块中,业务操作的接口类为OrdersService,该类共有1 个方法,完成对 DAO 类相关方法的封装。接口类 OrdersServic

42、e 的代码如下。package service; import domain.OrdersV o; public interface OrdersService public void save(OrdersVo newOrder); 接口类 OrdersService 的实现类OrdersServiceImpl 的代码如下。图 16-11订单管理模块的界面accountCenter.jsp的运行效果名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 18 页 - - -

43、- - - - - - 391 package service; import dao.OrdersDAO; import domain.OrdersV o; public class OrdersServiceImpl implements OrdersService private OrdersDAO ordersDAO; /省略所有属性的getter、setter方法public void save(OrdersVo newOrder) ordersDAO.save(newOrder); 3订单管理模块的Action 类Account 类中的 execute()方法实现下订单的功能,该方

44、法依赖于Service 层。Account类的代码如下。4订单管理模块的相关配置(1)在 struts.xml 中的配置 /showProduct.jsp (2)在 applicationContext.xml中的配置 其它配置文件中的配置保持不变。5订单管理模块的界面处理及运行效果订单管理模块的界面处理由accountCenter.jsp 实现,该文件的代码如下。运行效果如图 16-11 所示。 结算中心 请输入您的联系方式 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页

45、,共 18 页 - - - - - - - - - 392 16.4.7主界面的实现主界面由四部分实现,分别是index.html 、head.html、navigation.html 、content.html和 foot.html ,运行效果如图16-12 所示,具体代码如下。1index.html 页面设计index.html 页面代码如下: shopping #myFrame frame border: 2px; border-color: red; 图 16-12主界面的运行效果名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -

46、- - 名师精心整理 - - - - - - - 第 15 页,共 18 页 - - - - - - - - - 393 2head.html 页面设计head.html 页面代码如下: body background-image: url(image/head.jpg); background-repeat: no-repeat; width: 100%; height: 100%; p font-size: 15px; color: orange; letter-spacing: 6px; text-decoration: blink; font-weight: bold; font-fa

47、mily: Arial, Tahoma, Verdana; p #welcome font-size: 25px; color: yellow; /*float:left;*/ font-style: italic; div position: relative; top: 18px; left: 5px; color: rgb(100, 14, 200); a color: rgb(0, 0, 0); font-size: 17px; text-decoration: none; font-weight: bold; a:hover font-size: 17px; text-decorat

48、ion: underline; color: blue; You are welcome 登   录 | 注   册 | 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 18 页 - - - - - - - - - 394 注   销 | 购物车 | 联系我们 3navigation.html 页面设计navigation.html 页面代码如下: body background: url(image/navi

49、gation.png) 100% 0 repeat-x; color: #00458c; ul font-size: 0.9em; color: #00458c; list-style-type: none; /* 不显示项目符号*/ li background: url(image/item.png) no-repeat; /* 添加为背景图片*/ padding-left: 25px; /* 设置图标与文字的间隔*/ a text-decoration: none; color: blue; a:hover color: #c00; backaground: #069; a:visited

50、 color: sliver; 超级市场 精品图书 数码产品 日常用品 食品杂货 4content.html 页面设计content.html 页面代码如下: body /*background: url(image/content.png) 100% 0 no-repeat;*/ background: url(image/body_bg.gif); background-repeat: repeat; color: #00458c; margin-top: 0; margin-right: 0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁