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

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

Webhosting24:$1.48/月起,日本东京NTT直连/AMD Ryzen 高性能VPS/美国洛杉矶5950X平台大流量VPS/1Gbps端口/

Webhosting24宣布自7月1日起开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,价格依旧不变。目前来看,日本VPS国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),还是有相当大的性价比的。此外在6月30日,又新增了洛杉矶机房,CPU为AMD Ryzen 9...

恒创科技SonderCloud,美国VPS综合性能测评报告,美国洛杉矶机房,CN2+BGP优质线路,2核4G内存10Mbps带宽,适用于稳定建站业务需求

最近主机参考拿到了一台恒创科技的美国VPS云服务器测试机器,那具体恒创科技美国云服务器性能到底怎么样呢?主机参考进行了一番VPS测评,大家可以参考一下,总体来说还是非常不错的,是值得购买的。非常适用于稳定建站业务需求。恒创科技服务器怎么样?恒创科技服务器好不好?henghost怎么样?henghost值不值得购买?SonderCloud服务器好不好?恒创科技henghost值不值得购买?恒创科技是...

Virmach$7.2/年,新款月抛vps上线,$3.23/半年,/1核640M内存/10 GB存储/ 1Gbps/1T流量

Virmach自上次推出了短租30天的VPS后,也就是月抛型vps,到期不能续费,直接终止服务。此次又推出为期6个月的月抛VPS,可选圣何塞和水牛城机房,适合短期有需求的用户,有兴趣的可以关注一下。VirMach是一家创办于2014年的美国商家,支持支付宝、PayPal等方式,是一家主营廉价便宜VPS服务器的品牌,隶属于Virtual Machine Solutions LLC旗下!在廉价便宜美国...

简单网站制作为你推荐
mediawikiMediaWiki的权限及设置163yeahyeah邮箱和163邮箱的区别在哪里 那个好用特朗普吐槽iPhone华为余承东吐槽iPhone X,除了贵啥优点都没有internetexplorer无法打开电脑的Internet Explorer打不开?asp.net网页制作使用ASP.net技术创建一个网页,如何做?360arp防火墙在哪360的9.6版本ARP防火墙在哪?密码cuteftp解析cuteftp加多宝与王老吉加多宝王老吉有什么区别吗?什么是通配符DOS命令具体讲的是什么?
双线vps 域名交易网 主机测评网 kvmla inmotionhosting xen 京东商城双十一活动 cdn联盟 789电视网 cn3 100mbps 支付宝扫码领红包 新睿云 中国电信网络测速 申请免费空间 lamp什么意思 xuni godaddy空间 服务器硬件配置 带宽测试 更多