数据库中制作一个简单的电子商务网站

简单网站制作  时间:2021-04-11  阅读:()

电子商务大作业

作业要求

制作一个简单的电子商务网站具有以下功能

1 能进行用户注册、登录。用户信息保存在数据库中。

2能对商品信息进行维护增加、删除、修改。商品信息保存在数据库中。

3实现简单的购物车功能能对所选择的商品进行列表显示并对价格进行统计。

纸质报告要求

1 实现过程说明

2数据库设计说明

3运行效果

4主要源代码

- 、创建用户注册、登录。用户信息保存在数据库中

1创建数据库表

在MyS QL中创建一个名为homeworks的数据库并在该数据库中创建一张名为User的表格。字段名数据类型是否主键

2)安装所需的第三方软件包

在testapp/WEB-INF新建lib目录并将以下需要的第三方软件包拷贝到lib目录卜:j stl.j ar>standard.j ar>mysql-connector-j ava-5.0.7-b in.j aro

3)配置JDBC数据源wcb.xml页面类容如下

<?xn) l vcrsion=/ l. 0 z encoding=//ISO-8859-1/z?>

<web-app xmlns=  http://java ・ sun. com/xml/ns/javaee zxmlns:xsi二〃http://www. w3. org/2001/XMLSchcma-instancc/zxsi : schemaLocation=  http: //java ・ sun. com/xml/ns/javaeehttp://java ・ sun ・ com/xml/ns/javaoc/wob一app 2 5.xsd〃 version二"2. 5">

<!一一Used by the JSTL database actions -->

<context-param>

<param-name>javax ・ servlet ・ jsp ・ jstl ・ sql. dataSource </param-name>

<param-valuc>jdbc:mysql://localhost:3306/homoworks?uscr二root&amp;password=root, com. mysq1. jdbc ・ D river</param-value>

</contcxt-param>

<description>

Servlet and JSP Examples.

</description>

<display-name>Servlet and JSP Examples</display-name>

<servlet>

<servlet-name>Test</servlet-name>

<display-name>Test</display-name>

<description>A test Servlet</description>

<servlet-class>test ・ ServletTest </servlet-class>

</servlet>

<servlet-mapping>

〈servlet - n?ime>Tes t〈 /servlet-name〉

<url-pattern>/Test</url-pattern>

</servlet-mapping>

</web-app>

4)建立和信息录入相关的JSP页面

Index.jsp网站首页

<html>

<head>

<titlc>Scarch in User Databasc</titlc>

</head>

<body bgco 1 or=wh i t e/?>

Welcome to my website home page

<P>if you are a member please click login

<P>if not then click on the registration

<P>

<br/>

<a hrcf= /register. jsp">

<input type 二"button" value=/zregi strati on" />

</a>

<a href=//login. jsp">

<input typo二"button" valuc=  login" />

</a>

</body>

</html>register.jsp:用于注册用户信息的录入。

<%@ page contentType二"text/html"%>

<%@ taglib prefix二"c" uri=z http://java. sun. com/jsp/jstl/core"%><%@ tagl ib prefix二"fn" uri= zhttp://java. sun. com/jsp/jstl/functions"%><html>

<head>

<title>User Entry Form</title>

</head>

<body>

Registered User Interface

<P>

Please enter information about a user below:

<form action=//validate. jsp" method二"post"〉

<table>

<tr>

<td>Login Name:</td>

<td><input type二"text" name= z 1 oginNamevalue=z/$ {fn: escapeXml (param, logi nName) }">

</td>

<td>${fn:escapeXml (loginNameError) }</td></tr>

<tr>

<td>Password:</td>

<td><input type二"text" name=z passwordz value=//$ (fn: escapeXml (param, password) }"></td><td>${fn:escapeXml (passwordError) }</td>

</tr>

<tr>

<td>First Name:</td>

<td><input type="text" name=//firstNamez value二"$ {fn:escapeXml (param, firstName) }"></td><td>${fn:escapeXml (f irstNameError) }</td>

</tr>

<tr>

<td>Last Name:</td>

<td>〈in put type 二"text" n ame=z last Namez/value=z $ (fn: escapeXml (param, last Name) }  z></td><td>${fn:escapeXml (lastNamcError) }</td>

</tr>

<tr>

<td>Emai1 Address:</td>

<td><input type二"text" namc二"emailAddress" value=/ $ {fn:escapeXml (param, cmailAddrcss) }"></td>

<td>${fn:escapeXml (cmailAddrcssError) }</td>

<td>(Use format name@company. com) 〈 /td>

</tr>

<tr>

<td colspan=2Xinput typc="submit" value二"Submit"></td>

</tr>

</table>

</form>

</body>

</html>val idate.jsp 用于验证录入的用户信息

程序代码如下

<%@ taglib prefix二"c" uri=/zhttp://java. sun. com/jsp/jstl/core/z%><%@ taglib prefix二"fmt"uri=//http://java. sun. com/jsp/jstl/fmt"%><c:set var二"isValid" value二"tme" />

<c: if test=  ${empty param- loginName}zz>

<c: set varvalue二"Login missing" />

<c:set var=  isValid / value二"false" />

</c: if>

<c: if test=  $ {empty param. password}  z>

<c:set var/>

<c:set var=z isValid z value二"faIse" />

</c: if>

<c: if test=  ${empty param- firstName}zz>

<c:set var〃 />

<c:set var二"isValid" value二"false" />

</c: if>

<c: if test二〃 $ {empty param・ 1 astName}   >

<c:set var二〃 />

<c:set var="isVaJicT value二"false" />

</c: if>

<c: if test=/ $ (empty param, emai 1 Address}

<c: set var=  emai 1 AddressError z scope二"request" value=/zEmai 1 Address missing" /><c:set var二"isValid" value二"false" />

</c: if><c:choose>

<c:when test二"$ {isValid}">

<jsp:forward page二"store, jsp" />

</c:whon>

<c:otherwisc>

<jsp:forward page二"register ・ jsp" />

〈 /c:otherwise〉

</c:choose>store.jsp用于将录入的信息保存到数据库中。

程序代码如下

<%@ taglib prefix=〃c〃 uri二〃http://java ・ sun. com/jsp/jstl/core〃 %>

<%@taglib prefix=*sql/ uri二"http://java. sun. com/jsp/jstl/sql"%><%@taglib prefix二"fmt"uri=zhttp://java. sun. com/jsp/jstl/fmt/z%><%—

See if the user is already defined. If not, insert theinfo, else update it.

—%>

<sql: query var= /user  >

SELECT * FROM User

WHERE LoginName = ?

<sql:param value二〃 $ {param, loginName}" /></sql:query>

〈--

Deal with the date values: parse the register date and create a Date object from it, and createa new variable to hold the current date. - -〉

<fmt :parseDate value=/z$ {param. registerDate) z var=/ parsedRegisterDate/z pattern二〃yyyy_MM-dd〃/>

<jsp:useBean id二"now" class二〃jnva. util. Date" />

<c:choose>

<c:when test二〃 ${user- rowCount == 0}">

<sql:update>

INSERT INTO User

(LoginName, Password, FirstName, LastNamc, EmailAddress)

VALUES

(?, ?, ?, ?, value二〃 $ {param・ loginName}" />

?) value==

<sql:param z$ {param. firstName}" /> value二〃

<sql:param $ {param. lastN且me} 〃 />value.

<sql:param emailAddress} z />

<sql:param

<sql:param </sql:update>

</c:when>

<c:otherwise>

<sql:update>

UPDATE User

SET Password = ?,

FirstName = ?,

LastNamc = ?,

EmailAddress = ?,

WHERE

LoginName 二? valuc=

<sql:param 二〃 $ {param. firstName}" />

<sql:param valuc=/>

<sql:param value=  $ {param. emailAddress}z />

<sql:param value= z$ {param. loginName}  z />

<sql:param

</sql:update>

</c:otherwise>

</c:choose>

<%―Get the new or updated data from the database --%><sql:query var=  newUser!nfo z scope二〃session〉

SELECT * FROM User

WHERE LoginName 二?

<sql: param value=/ $ {param. loginName}/>

</sql:query>

<%-一Redirect to the confirmation page --%><c:redirect url=  confirmation. jspz />confirmationjsp:用于显示己保存到数据的信息。程序代码如下

<%@ page contentType二"text/html"%>

<%@ taglib prefix二"c" uri=z http://java. sun. com/jsp/jstl/core"%>

<%@ taglib prefix二"fn" uri=z http://java. sun. com/jsp/jstl/functions"%><html>

<head>

<title>User Info Stored</title>

</head>

<body bgcolor= /whitez >

<form action二"login, jsp" method二"get">

This is the information stored in the homeworks database:

<table>

<c: forEach i tcms=/z$ {newUserlnfo. rows} " var=  row z>

<c:forEach items二"$ {row} 〃 var二"column"〉

<tr>

<td align二right>

<b>${fn:escapcXml (column, key) } :</b>

</td>

<td>

${fn:escapeXml (column, value) }

</td>

</tr>

</c:forEach>

</c:forEach〉

<td><input type二"submit" value二"GoBack">〈 /td>

</table>

</body>

</html>

二.用户登陆lo gin.j sp注册用户登陆界面

<%@page contentType=, ,text/htmr,%>

<%@taglib prcfix=HcM uri=,,http://java.sun.com/jsp/jstl/coren%>

<%@taglib prefix二"fn”uri="http://java.sun.com/jsp/jstl/functions"%>

<h tm l>

<head>

<title>Search in User Database</title>

</head>

<body bgcolor=HwhitcH>

<tab le>

<tr>

<td>login Name:</td>

<td><input type=</td>

</tr>

HostKvm新上联通CUVIP线路VPS,八折优惠后1G内存套餐$5.2/月起

最近上洛杉矶机房联通CUVIP线路主机的商家越来越多了,HostKvm也发来了新节点上线的邮件,适用全场8折优惠码,基于KVM架构,优惠后最低月付5.2美元起。HostKvm是一家成立于2013年的国人主机商,提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,君选择国内直连或优化线路,延迟较低,适合建站或者远程办公等。以洛杉矶CUVIP线路主机为例,...

速云:广州移动/深圳移动/广东联通/香港HKT等VDS,9折优惠,最低月付9元;深圳独立服务器1050元/首月起

速云怎么样?速云,国人商家,提供广州移动、深圳移动、广州茂名联通、香港hkt等VDS和独立服务器。现在暑期限时特惠,力度大。广州移动/深圳移动/广东联通/香港HKT等9折优惠,最低月付9元;暑期特惠,带宽、流量翻倍,深港mplc免费试用!点击进入:速云官方网站地址速云优惠码:全场9折优惠码:summer速云优惠活动:活动期间,所有地区所有配置可享受9折优惠,深圳/广州地区流量计费VDS可选择流量翻...

HostMem,最新优惠促销,全场75折优惠,大硬盘VPS特价优惠,美国洛杉矶QuadraNet机房,KVM虚拟架构,KVM虚拟架构,2核2G内存240GB SSD,100Mbps带宽,27美元/年

HostMem近日发布了最新的优惠消息,全场云服务器产品一律75折优惠,美国洛杉矶QuadraNet机房,基于KVM虚拟架构,2核心2G内存240G SSD固态硬盘100Mbps带宽4TB流量,27美元/年,线路方面电信CN2 GT,联通CU移动CM,有需要美国大硬盘VPS云服务器的朋友可以关注一下。HostMem怎么样?HostMem服务器好不好?HostMem值不值得购买?HostMem是一家...

简单网站制作为你推荐
操作http用户applethinksns请问除了discuz、ThinkSNS、wordpress、phpwind之外,还有什么类似这样的开360和搜狗360搜索和搜狗搜索谁好谁流量大?为什么我在网上搜索到的数据有一定矛盾?做广告推广哪个好呢?asp.net什么是asp.netcisco2960配置Cisco2960是二层交换机,怎么可以进入配置界面进行配置。不是说二层交换机不需要配置吗?波音737起飞爆胎客机起飞的时候时速是多少?重庆400年老树穿楼生长重庆吊脚楼人人视频总部基地落户重庆迁户口入重庆厦门三五互联科技股份有限公司厦门三五互联怎么样?
成都虚拟主机 vps租用 欧洲欧洲vps 查询ip地址 个人域名备案 荣耀欧洲 云网数据 edis godaddy优惠券 搜狗抢票助手 lamp配置 免费mysql 共享主机 免费活动 佛山高防服务器 南通服务器 傲盾官网 新世界服务器 华为云服务登录 smtp虚拟服务器 更多