基于javaweb的SSM洋洒销售商城酒类购物平台(java+ssm+jsp+mysql+tomcat)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

361924401811

371924401811

381924401811

391924401811

401924401811

411924401811

431924401811

441924401811

451924401811

121924421811

基于javaweb的SSM洋洒销售商城酒类购物平台(java+ssm+jsp+mysql+tomcat)

功能:前台购物、后台管理等

管理员:http://localhost:8080/admin/index.jsp
admin 123456

用户:http://localhost:8080
user1 123456
user2 123456
user3 123456

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
			// 激活码错误的
this.addActionMessage("激活失败:激活码错误!");
} else {
// 激活成功
// 修改用户的状态
existUser.setState(2);
existUser.setCode(null);
userService.update(existUser);
this.addActionMessage("激活成功:请去登录!");
}
return "msg";
}

/**
* 跳转到登录页面
*/
public String loginPage() {
return "loginPage";
}

/**
* 登录的方法
*/
public String login() {
User existUser = userService.login(user);
// 判断
if (existUser == null) {
// 登录失败
this.addActionError("登录失败:用户名或密码错误或用户未激活!");
return LOGIN;
} else {
// 登录成功
// 将用户的信息存入到session中
ServletActionContext.getRequest().getSession()
.setAttribute("existUser", existUser);
// 页面跳转
return "loginSuccess";
}

}

/**
* 用户退出的方法
*/
public String quit(){
// 销毁session
ServletActionContext.getRequest().getSession().invalidate();
return "quit";
}

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48

public Integer getOid() {
return oid;
}
public void setOid(Integer oid) {
this.oid = oid;
}
public Double getTotal() {
return total;
}
public void setTotal(Double total) {
this.total = total;
}
public Date getOrdertime() {
return ordertime;
}
public void setOrdertime(Date ordertime) {
this.ordertime = ordertime;
}
public Integer getState() {
return state;
}
public void setState(Integer state) {
this.state = state;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
		productService.delete(product);
// 页面跳转
return "deleteSuccess";
}

// 编辑商品的方法
public String edit() {
// 根据商品id查询商品信息
product = productService.findByPid(product.getPid());
// 查询所有二级分类
List<CategorySecond> csList = categorySecondService.findAll();
ActionContext.getContext().getValueStack().set("csList", csList);
// 页面跳转到编辑页面:
return "editSuccess";
}

// 修改商品的方法
public String update() throws IOException {
// 将信息修改到数据库
product.setPdate(new Date());

// 上传:
if(upload != null ){
String delPath = ServletActionContext.getServletContext().getRealPath(
"/" + product.getImage());
File file = new File(delPath);
file.delete();
// 获得上传图片的服务器端路径.
String path = ServletActionContext.getServletContext().getRealPath(
"/products");
// 创建文件类型对象:
File diskFile = new File(path + "//" + uploadFileName);
// 文件上传:
FileUtils.copyFile(upload, diskFile);

product.setImage("products/" + uploadFileName);
}
productService.update(product);
// 页面跳转
return "updateSuccess";
}
}



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
		List<User> list = userDao.findByPage(begin,limit);
pageBean.setList(list);
return pageBean;
}


public User findByUid(Integer uid) {
return userDao.findByUid(uid);
}


public void delete(User existUser) {
userDao.delete(existUser);
}
}




/**
* 购物车Action
*/
public class CartAction extends ActionSupport {
// 接收pid
private Integer pid;
// 接收数量count
private Integer count;
// 注入商品的Service
private ProductService productService;

public void setProductService(ProductService productService) {
this.productService = productService;
}

public void setPid(Integer pid) {
this.pid = pid;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
			<img src="${pageContext.request.contextPath}/image/a.jpg" width="260" height="343" alt="热门商品" title="热门商品">
</div> -->
<ul class="tabContent" style="display: block;">
<s:iterator var="p" value="hList">
<li>
<a href="${ pageContext.request.contextPath }/product_findByPid.action?pid=<s:property value="#p.pid"/>" target="_blank"><img src="${pageContext.request.contextPath}/<s:property value="#p.image"/>" data-original="http://storage.shopxx.net/demo-image/3.0/201301/0ff130db-0a1b-4b8d-a918-ed9016317009-thumbnail.jpg" style="display: block;"></a>
</li>
</s:iterator>
</ul>
<ul class="tabContent" style="display: none;">
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/c5b1b396-181a-4805-9e68-9b400d71f91e-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/c5b1b396-181a-4805-9e68-9b400d71f91e-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/4107e1ce-5e7c-4941-bc0f-718f35ba14cd-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/4107e1ce-5e7c-4941-bc0f-718f35ba14cd-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/6f8ae4bf-cbd3-41c7-aa22-0fe81db6add4-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/6f8ae4bf-cbd3-41c7-aa22-0fe81db6add4-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/3d835c07-08c5-46d7-912d-adcd41f8c8e6-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/3d835c07-08c5-46d7-912d-adcd41f8c8e6-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/5e5be432-fbee-4bdd-a7bd-a92e01f9bfc4-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/5e5be432-fbee-4bdd-a7bd-a92e01f9bfc4-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/cae1bc6b-0159-4ce0-9a9c-4926df231b4f-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/cae1bc6b-0159-4ce0-9a9c-4926df231b4f-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/40e34b2d-d240-446e-9874-89969edbe89f-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/40e34b2d-d240-446e-9874-89969edbe89f-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/a8db4410-05e5-4dfa-8217-eb885a104af3-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/a8db4410-05e5-4dfa-8217-eb885a104af3-thumbnail.jpg" style="display: block;"></a>
</li>
</ul>
<ul class="tabContent" style="display: none;">
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/9f164e13-bcaa-48a6-9b35-0ca96629f614-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/9f164e13-bcaa-48a6-9b35-0ca96629f614-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/c41d0347-364c-42bb-baeb-25142c1ed167-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/c41d0347-364c-42bb-baeb-25142c1ed167-thumbnail.jpg" style="display: block;"></a>
</li>
<li>
<a target="_blank"><img src="./Mango商城 - Powered By Mango Team_files/2af8be8a-75b9-41ae-b009-a7c54b685a4e-thumbnail.jpg" data-original="http://storage.shopxx.net/demo-image/3.0/201301/2af8be8a-75b9-41ae-b009-a7c54b685a4e-thumbnail.jpg" style="display: block;"></a>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

// 生成订单的执行的方法:
public String saveOrder() {

// 调用Service完成数据库插入的操作:
// Order order = new Order();
// 设置订单的总金额:订单的总金额应该是购物车中总金额:
// 购物车在session中,从session总获得购物车信息.
Cart cart = (Cart) ServletActionContext.getRequest().getSession()
.getAttribute("cart");
if (cart == null) {
this.addActionMessage("亲!您还没有购物!");
return "msg";
}
order.setTotal(cart.getTotal());
// 设置订单的状态
order.setState(2); // 1:未付款.
// 设置订单时间
order.setOrdertime(new Date());
// 设置订单关联的客户:
User existUser = (User) ServletActionContext.getRequest().getSession()
.getAttribute("existUser");
if (existUser == null) {
this.addActionMessage("亲!您还没有登录!");
return "msg";
}
order.setUser(existUser);
// 设置订单项集合:
for (CartItem cartItem : cart.getCartItems()) {
// 订单项的信息从购物项获得的.
OrderItem orderItem = new OrderItem();
orderItem.setCount(cartItem.getCount());
orderItem.setSubtotal(cartItem.getSubtotal());
orderItem.setProduct(cartItem.getProduct());
orderItem.setOrder(order);

order.getOrderItems().add(orderItem);
}
orderService.save(order);
// 清空购物车:
cart.clearCart();

// 页面需要回显订单信息:
// 使用模型驱动了 所有可以不使用值栈保存了
// ActionContext.getContext().getValueStack().set("order", order);

return "saveOrder";
}


项目链接:
https://javayms.github.io?id=351924401811201pp
https://javayms.pages.dev?id=351924401811201pp