记录一下JSP的学习过程,慢慢的写一个购物车代码。
首先是最基础的核心代码,只有简单的功能,我的目标是慢慢的去把不方便的操作删掉,然后重新丰满代码。这个感觉很像在组装机器人,慢慢的打磨搜索零件,然后再用各种工具尝试把他们拼接在一起。我很喜欢这个任务,做了一个比较不严肃的购物车,也算是跟着自己的兴趣跑了吧!
对于博客的书写方式还不是很习惯,用起来不是很方便,和我的代码学习一样,还在慢慢摸摸索。
*main如下
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><font size=2>
<p>欢迎来到本页面,请输入您的姓名
<Form action=""method=past name=form>
<p>用户名<input type="text" name="name"></p>
<p>密码<input type="password" name="pwd"></p>
<input type="submit" value="登录" name=submit>
</Form>
<% String name=request.getParameter("name");
if(name==null)
{
name=" ";
}
else
{
session.setAttribute("customerName",name);
}
%>
<% String pwd=request.getParameter("pwd");
if(pwd==null)
{
pwd=" ";
}
else
{
session.setAttribute("customerpwd",pwd);
}
%>
<% if(name.length()>0&&pwd.length()>0)
{
%><p>请选择购买你想要的商品
<A HREF="food.jsp">挑选商品</A>
<%
}
%>
</font>
</body>
</html>
food 如下
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><font size=3>
<p>点击此处,修改用户名及密码。
<A HREF=main.jsp>修改个人信息</A>
<p> 这里是商品列表,请选择您想要购买的商品:
<FORM action=""method=post name=form>
<input type="checkbox"name="choice"value="香肠">香肠
<input type="checkbox"name="choice"value="苹果">苹果
<input type="checkbox"name="choice"value="酱油">酱油
<input type="checkbox"name="choice"value="饮料">饮料
</BR>
<input type="submit" value="提交"name="submit">
</FORM>
</font>
<% String foodName[]=request.getParameterValues("choice");
if(foodName!=null)
{
for(int k=0;k<foodName.length;k++)
{session.setAttribute(foodName[k],foodName[k]);
}
}
%>
<p>点击超链接,连接到count.jsp的页面,去查看购物车中的商品
<A HREF="count.jsp">欢迎去count.jsp!</A>
</body>
</html>
count如下
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<p>这里是结账处,您的姓名以及选择的商品:
<% String personName=(String)session.getAttribute("customerName");
out.println("<br>您的姓名:"+personName);
String personPwd=(String)session.getAttribute("customerpwd");
out.println("<br>您的密码:"+personPwd);
Enumeration enumGoods=session.getAttributeNames();
out.println("<br>购物车中的商品:<br>");
while(enumGoods.hasMoreElements())
{
String key=(String)enumGoods.nextElement();
String goods=(String)session.getAttribute(key);
if(!(goods.equals(personName))&&!(goods.equals(personPwd))){
out.println(goods+"<br>");
}
}
%>
<p>点击超链接,连接到food.jsp的页面,购买食物。
<A HREF="food.jsp">欢迎去food.jsp!</A>
<p>点击超链接,链接到main,jsp的页面去修改名字。
<A HREF=main.jsp>欢迎去main.jsp!</A>
</body>
</html>
第一次修改如下,并没有调整什么网页功能,主要是美化了一下food.jsp页面。
food
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>你在想peach商店</title>
</head>
<style>
.a {
text-align:center;
line-height:center;
color:#F0FFFF;
font-family:"微软雅黑";
background:#000000;
}
</style>
<body><font size=3>
<div class="a">
<img src="tiao.jpg" alt="tiao.jpg" width=100% height=30%>
<p>点击此处,修改用户名及密码。
<A HREF=main.jsp>修改个人信息</A>
<p> 这里是正联英雄列表,请选择您想要购买的英雄:
<FORM action=""method=post name=form>
<table width="100%" border="0" align="center" >
<tr>
<td><img src="1.jpg" alt="Smiley face" width="300" height="410"></td>
<td><img src="2.jpg" alt="Smiley face" width="300" height="410"></td>
</tr>
<tr>
<td><input type="checkbox"name="choice"value="闪电侠" >闪电侠</td>
<td><input type="checkbox"name="choice"value="绿灯侠" >绿灯侠</td>
</tr>
<tr>
<td><img src="3.jpg" alt="Smiley face" width="300" height="410"></td>
<td><img src="4.jpg" alt="Smiley face" width="300" height="410"></td>
</tr>
<tr>
<td><input type="checkbox"name="choice"value="火星猎人">火星猎人</td>
<td><input type="checkbox"name="choice"value="海王" >海王</td>
</tr>
<tr>
<td><img src="5.jpg" alt="Smiley face" width="300" height="410"></td>
<td><img src="7.jpg" alt="Smiley face" width="300" height="410"></td>
</tr>
<tr>
<td><input type="checkbox"name="choice"value="蝙蝠侠">蝙蝠侠</td>
<td><input type="checkbox"name="choice"value="超人">超人</td>
</tr>
<tr>
<td><img src="6.6.jpg" alt="6.6.jpg" width="320" height="410"></td>
<td><img src="8.jpg" alt="Smiley face" width="300" height="410"></td>
</tr>
<tr>
<td><input type="checkbox"name="choice"value="神奇女侠">神奇女侠</td>
<td><input type="checkbox"name="choice"value="钢骨">钢骨</td>
</tr>
</table>
</BR>
<input type="submit" value="提交"name="submit">
</FORM>
</font>
<% request.setCharacterEncoding("UTF-8");
String foodName[]=request.getParameterValues("choice");
if(foodName!=null)
{
for(int k=0;k<foodName.length;k++)
{session.setAttribute(foodName[k],foodName[k]);
}
}
%>
<p>这里可以看到已经挑选的商品
<A HREF="count.jsp">购物车</A>
</div>
</body>
</html>
main
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>你在想peach商店</title>
</head>
<style>
.a {
text-align:center;
}
</style>
<body bgcolor="#FFE4E1"><font size=2>
<div class="a">
<p align="center">欢迎来到你在想peach商店,请输入您的姓名</p>
<Form action=""method=past name=form>
<% request.setCharacterEncoding("UTF-8");
%>
<p>用户名<input type="text" name="name"></p>
<p>密码<input type="password" name="pwd"></p>
<a href="food.jsp">
<input type="submit" value="登录" name=submit>
</Form>
<% request.setCharacterEncoding("UTF-8");
String name=request.getParameter("name");
if(name==null)
{
name=" ";
}
else
{
session.setAttribute("customerName",name);
}
%>
<%request.setCharacterEncoding("UTF-8");
String pwd=request.getParameter("pwd");
if(pwd==null)
{
pwd=" ";
}
else
{
session.setAttribute("customerpwd",pwd);
}
%>
<% if(name.length()>0&&pwd.length()>0)
{
%>
<p>请选择购买你想要的商品
<A HREF="food.jsp">商品列表</A>
</p>
<%
}
%>
</div>
</font>
</body>
</html>
count
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>你在想peach商店</title>
</head>
<style>
.a {
text-align:center;
line-height:center;
border: green solid 1px;
}
</style>
<body bgcolor="pink">
<div class="a">
<p>这里是结账处,您的姓名以及选择的商品:
<% request.setCharacterEncoding("UTF-8");
String personName=(String)session.getAttribute("customerName");
out.println("<br>您的姓名:"+personName);
String personPwd=(String)session.getAttribute("customerpwd");
out.println("<br>您的密码:"+personPwd);
Enumeration enumGoods=session.getAttributeNames();
out.println("<br>购物车中的商品:<br>");
while(enumGoods.hasMoreElements())
{
String key=(String)enumGoods.nextElement();
String goods=(String)session.getAttribute(key);
if(!(goods.equals(personName))&&!(goods.equals(personPwd))){
out.println(goods+"<br>");
}
}
%>
<h1 align="center">你在做什么梦</h1>
<p align="center">此处可以继续添加商品
<A HREF="food.jsp">继续添加</A>
<p>修改用户名和密码
<A HREF=main.jsp>个人信息</A>
</div>
</body>
</html>
心得:有时候会出现越写越乱的情况出现,主要是自己不够明确自己究竟想要什么样的功能导致的,这也算是我写代码的一道致命伤吧,总是想写很骚操作的代码,但是自我修养不够,写代码还是要踏踏实实写才行,一节课溜号没什么妨碍,三节课溜号就不会敲键盘了,一口还是吃不成胖子的。