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

简单网站制作  时间: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>

totyun:香港cn2 vps,5折优惠,$6/月,10Mbps带宽,不限流量,2G内存/2核/20g+50g

totyun,新公司,主要运作香港vps、日本vps业务,接入cn2网络,不限制流量!VPS基于KVM虚拟,采用系统盘和数据盘分离,从4G内存开始支持Windows系统...大家注意下,网络分“Premium China”、“Global”,由于站长尚未测试,所以也还不清楚情况,有喜欢吃螃蟹的尝试过不妨告诉下站长。官方网站:https://totyun.com一次性5折优惠码:X4QTYVNB3P...

老薛主机VPS年付345元,活动进行时。

老薛主机,虽然是第一次分享这个商家的信息,但是这个商家实际上也有存在有一些年头。看到商家有在进行夏季促销,比如我们很多网友可能有需要的香港VPS主机季度及以上可以半价优惠,如果有在选择不同主机商的香港机房的可以看看老薛主机商家的香港VPS。如果没有记错的话,早年这个商家是主营个人网站虚拟主机业务的,还算不错在异常激烈的市场中生存到现在,应该算是在众多商家中早期积累到一定的用户群的,主打小众个人网站...

Webhosting24:€15/年-AMD Ryzen/512MB/10GB/2TB/纽约&日本&新加坡等机房

Webhosting24是一家始于2001年的意大利商家,提供的产品包括虚拟主机、VPS、独立服务器等,可选数机房包括美国洛杉矶、迈阿密、纽约、德国慕尼黑、日本、新加坡、澳大利亚悉尼等。商家VPS主机采用AMD Ryzen 9 5950X CPU,NVMe磁盘,基于KVM架构,德国机房不限制流量,网站采用欧元计费,最低年付15欧元起。这里以美国机房为例,分享几款套餐配置信息。CPU:1core内存...

简单网站制作为你推荐
dangersbit360退出北京时间怎样让电脑时间与北京时间相同什么是支付宝支付宝是什么ipad代理想买个ipad买几代性价比比较高加多宝和王老吉王老吉和加多宝是什么关系银花珠树晓来看谜语白色花无人栽一夜北风遍地开。旡根无叶又无枝不知是谁送花来。谜底是什么加多宝与王老吉加多宝王老吉有什么区别吗?3g手机有哪些现在有哪些比较适用的3g手机?headersalreadysentPHP中session_start的意思是什么图文模块图文模块的标题栏填什么啊?
免备案虚拟主机 VPS之家 韩国加速器 directadmin 卡巴斯基永久免费版 howfile 183是联通还是移动 免费网页申请 多线空间 免费私人服务器 个人免费主页 华为云盘 海外空间 独立主机 国外网页代理 黑科云 mteam 建站技术 websitepanel 超低价 更多