手把手教你SSM搭建Easymall电商项目 (六)

                    手把手教你SSM搭建Easymall电商项目 (六)


一.订单功能

     1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第1张图片

     1.1代码实现   通过传入的ID 去调用获取信息封装在list中

  手把手教你SSM搭建Easymall电商项目 (六)_第2张图片

     1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第3张图片

     1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第4张图片

     1.1效果实现

手把手教你SSM搭建Easymall电商项目 (六)_第5张图片

 

二.添加订单功能

 1.1代码实现

  调用了 购物车里面的功能 通过ID 获取购物车里面的信息 添加到订单中 手把手教你SSM搭建Easymall电商项目 (六)_第6张图片

 1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第7张图片

 

 1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第8张图片

 1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第9张图片


 1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第10张图片

手把手教你SSM搭建Easymall电商项目 (六)_第11张图片

三.删除订单

        1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第12张图片

        1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第13张图片

        1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第14张图片

        1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第15张图片

        1.1代码实现

手把手教你SSM搭建Easymall电商项目 (六)_第16张图片

手把手教你SSM搭建Easymall电商项目 (六)_第17张图片

四.超时删除订单

 

        1.1代码实现

设置一个配置 和依赖  来实现 pom.xml

 
	
org.quartz-scheduler
quartz
2.2.1

	
	  org.springframework
	  spring-context-support
	  ${spring.version}
	



	
	
		
		
		
		
		
		
		
		
		
		
	
	
	
	
		
		
		
	
	
	
	
	    
	        
	            
	        
	    
	


        1.1代码实现

package com.jt.easymall.job;

import java.util.Date;

import org.quartz.JobDetail;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.context.ApplicationContext;
import org.springframework.scheduling.quartz.QuartzJobBean;

import com.jt.easymall.mapper.OrderMapper;

/**
 * 从quartz的环境中获取spring框架的上下文对象context
 * 调用mapper中的方法,执行超时订单删除逻辑
 */
public class OrderOTJob extends QuartzJobBean{
	/*
	 * 定时任务实行方法
	 * @see org.springframework.scheduling.quartz.QuartzJobBean#executeInternal(org.quartz.JobExecutionContext)
	 */
	@Override
	protected void executeInternal(JobExecutionContext jobContext) throws JobExecutionException {
		//获取管理当前job的jobDetail对象
		JobDetail jobDetail = jobContext.getJobDetail();
		//在配置文件中 jobDetail的一个属性配置了map值,key applicationContext
		//value就是spring上下文对象context
		ApplicationContext context = (ApplicationContext) jobDetail.getJobDataMap().get("applicationContext");
		//获取orderMapper的bean(代理)
		System.out.println("定时任务开始执行");
		//超时删除的参数Date
		Date oTime=new Date(new Date().getTime()-60*60*24);
		context.getBean(OrderMapper.class).orderOTDelete(oTime);
		//进行参数传递,传递一个order_time<当前时间-1天的时间值
		System.out.println("定时任务执行结束");
	}
}

        1.1代码实现

package com.jt.easymall.service;

import java.util.Date;
import java.util.List;
import java.util.UUID;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.jt.easymall.mapper.OrderMapper;
import com.jt.easymall.pojo.Order;
@Service
public class OrderService {
	@Autowired
	private OrderMapper orderMapper;
	public List queryMyOrder(String userId) {
		//不适用left join等关联查询多张表格的语句,保持
		//单表的查询操作,保持性能;
		//第一种方法保持单表操作
		//第二种方法,在持久层完成所有数据封装,还能保持单表操作
		List orderList=orderMapper.queryOrder(userId);
		return orderList;
	}
	public void addOrder(Order order) {
		//缺少主键id值,orderTime,支付状态0未支付
		order.setOrderId(UUID.randomUUID().toString());
		order.setOrderTime(new Date());
		order.setOrderPaystate(0);
		orderMapper.saveOrder(order);
	}
	public void deleteOrder(String orderId) {
		orderMapper.deleteOrder(orderId);
	}

}












        1.1代码实现

这个SSM项目 懒得更新了  太简单  直接上传项目了   

        1.1代码实现   设置每20秒检查一下

手把手教你SSM搭建Easymall电商项目 (六)_第18张图片

你可能感兴趣的:(Esaymall,SSM项目实战演练,SSM)