基于javaweb+mysql的jsp+servlet简单购物车(java+jsp+servlet+mysql)

基于javaweb+mysql的jsp+servlet简单购物车(java+jsp+servlet+mysql)

私信源码获取及调试交流

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

注册、登录、注销

商品加入购物车,查看购物车,删除购物车中的商品和清空购物车

生成订单,查看历史订单及订单详情等

技术框架

JSP Servlet MySQL JDBC Tomcat

基于javaweb的JSP+Servlet简单购物车(java+jsp+servlet+mysql)

			db.setData(sql);
			resp.sendRedirect(req.getContextPath()+"/show.cart");
		}
		db.close();
	}

}

public class UserServlet extends HttpServlet {
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/login.user".equals(path)){
			login(req,resp);
		}
		if("/register.user".equals(path)){
			register(req,resp);
		}
		
	}
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/logout.user".equals(path)){
			logout(req,resp);
		}
		if("/check.user".equals(path)){
			check(req,resp);
	}
	
	protected void logout(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		HttpSession session=req.getSession();
		session.invalidate();
		resp.sendRedirect(req.getContextPath()+"/show.goods");
	}
	protected void check(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		if(u==null) {
			resp.sendRedirect(req.getContextPath()+"/login.jsp");
			return;
		}
		String tag = req.getParameter("tag");
		if("AddCart".equals(tag)) {
			String index=req.getParameter("index");
			resp.sendRedirect(req.getContextPath()+"/add.cart?index="+index);
		}
		else{
			resp.sendRedirect(req.getContextPath()+"/show.cart");
		}
	}
}

public class GoodsServlet extends HttpServlet {
	public static List<Goods> goods=new ArrayList<Goods>();
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
	}
	//生成订单
	protected void generate(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String id=getOrderIdByTime();
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		for(Cart c:cart_) {
			String sql="insert into t_order(id,un,goodsname,number,price) values('"+id+"','"+username+"','"+c.getGoodsname()+"',"+c.getNumber()+","+c.getPrice()+")";
			db.setData(sql);
		}
		db.setData("DELETE FROM t_cart");
		req.setAttribute("id", id);
		req.getRequestDispatcher("success.jsp").forward(req, resp);
		cart_.clear();
		db.close();
	}
	//确认订单
	protected void confirm(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_cart where un='"+username+"'");
		
		try {
			while(rs.next()) {
				Cart c=new Cart();
				c.setGoodsname(rs.getString(1));
				c.setNumber(rs.getInt(2));
				c.setPrice(rs.getDouble(3));
				c.setUsername(username);
				cart.add(c);
				
			}
			
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		req.setAttribute("cart", cart);
		req.getRequestDispatcher("order.jsp").forward(req, resp);
		//备份 cart
		cart_.clear();
			login(req,resp);
		}
		if("/register.user".equals(path)){
			register(req,resp);
		}
		
	}
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/logout.user".equals(path)){
			logout(req,resp);
		}
		if("/check.user".equals(path)){
			check(req,resp);
		}
	}
	
	protected void register(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String username=req.getParameter("username");
		String password=req.getParameter("password");
		String phone=req.getParameter("phone");
		String address=req.getParameter("address");
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_user where un='"+username+"'");
		try {
			if(rs.next()) {
				req.setAttribute("msg", "用户名已注册,请重新注册!!!");
				req.getRequestDispatcher("/register.jsp").forward(req, resp);
				rs.close();
				db.close();
				return;
			}
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}
		String sql="insert into t_user(un,pwd,phone,addr) values('"+username+"','"+password+"','"+phone+"','"+address+"')";
		db.setData(sql);
		resp.sendRedirect(req.getContextPath()+"/login.jsp");
		db.close();
	}
	protected void login(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String username=req.getParameter("username");
		String password=req.getParameter("password");
		HttpSession session=req.getSession();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_user where un='"+username+"' and pwd='"+password+"'");
		try {
	protected void show(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_cart where un='"+username+"'");
		
		try {
			while(rs.next()) {
				Cart c=new Cart();
				c.setGoodsname(rs.getString(1));
				c.setNumber(rs.getInt(2));
				c.setPrice(rs.getDouble(3));
				c.setUsername(username);
				cart.add(c);
				
			}
			
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		req.setAttribute("cart", cart);
		req.getRequestDispatcher("cart.jsp").forward(req, resp);
		cart.clear();
		db.close();
	}

	protected void delete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		DataBase db=new DataBase();
		String type=req.getParameter("type");
		//清空
		if("All".equals(type)) {
		DataBase db=new DataBase();
		for(Cart c:cart_) {
			String sql="insert into t_order(id,un,goodsname,number,price) values('"+id+"','"+username+"','"+c.getGoodsname()+"',"+c.getNumber()+","+c.getPrice()+")";
			db.setData(sql);
		}
		db.setData("DELETE FROM t_cart");
		req.setAttribute("id", id);
		req.getRequestDispatcher("success.jsp").forward(req, resp);
		cart_.clear();
		db.close();
	}
	//确认订单
	protected void confirm(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_cart where un='"+username+"'");
		
		try {
			while(rs.next()) {
				Cart c=new Cart();
				c.setGoodsname(rs.getString(1));
				c.setNumber(rs.getInt(2));
				c.setPrice(rs.getDouble(3));
				c.setUsername(username);
				cart.add(c);
				
			}
			
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		req.setAttribute("cart", cart);
		req.getRequestDispatcher("order.jsp").forward(req, resp);
		if("All".equals(type)) {
			String sql="DELETE FROM t_cart";
			db.setData(sql);
			resp.sendRedirect(req.getContextPath()+"/show.cart");
		}
		//删除某个
		else {
			String goodsname=req.getParameter("goodsname");
//			byte[] b=goodsname.getBytes("ISO8859-1");
//			goodsname=new String(b,"utf-8");
//			这里取得的编码是utf-8不做处理,tomcat版本不同返回的值编码可能不一样,如果中文乱码,则对编码进行处理
			String sql="DELETE FROM t_cart WHERE goodsname = '"+goodsname+"' ";
			db.setData(sql);
			resp.sendRedirect(req.getContextPath()+"/show.cart");
		}
		db.close();
	}

}

public class UserServlet extends HttpServlet {
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");

public class CartServlet extends HttpServlet {
	public static List<Cart> cart=new ArrayList<Cart>();
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/add.cart".equals(path)){
			add(req,resp);
		}
		if("/show.cart".equals(path)){
			show(req,resp);
		}
		if("/delete.cart".equals(path)){
			delete(req,resp);
		}
	}
	
	protected void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String index=req.getParameter("index");
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_goods where goodsid="+index);
		String goodsname = "";
		Double price = 0.0;
		try {
			if(rs.next()) {
		HttpSession session=req.getSession();
		session.invalidate();
		resp.sendRedirect(req.getContextPath()+"/show.goods");
	}
	protected void check(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		if(u==null) {
			resp.sendRedirect(req.getContextPath()+"/login.jsp");
			return;
		}
		String tag = req.getParameter("tag");
		if("AddCart".equals(tag)) {
			String index=req.getParameter("index");
			resp.sendRedirect(req.getContextPath()+"/add.cart?index="+index);
		}
		else{
			resp.sendRedirect(req.getContextPath()+"/show.cart");
		}
	}
}

public class GoodsServlet extends HttpServlet {
	public static List<Goods> goods=new ArrayList<Goods>();
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/show.goods".equals(path)){
			show(req,resp);
		}
		
	}
			return;
		}
		String tag = req.getParameter("tag");
		if("AddCart".equals(tag)) {
			String index=req.getParameter("index");
			resp.sendRedirect(req.getContextPath()+"/add.cart?index="+index);
		}
		else{
			resp.sendRedirect(req.getContextPath()+"/show.cart");
		}
	}
}

public class GoodsServlet extends HttpServlet {
	public static List<Goods> goods=new ArrayList<Goods>();
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/show.goods".equals(path)){
			show(req,resp);
		}
		
		DataBase db=new DataBase();
		User u=(User)req.getSession().getAttribute("user");
		ResultSet rs = db.getData("SELECT distinct id FROM t_order where un='"+u.getUsername()+"' ");
		try {
			while(rs.next()) {
				String id=rs.getString("id");
				OrderId.add(id);
			}
			
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		
		req.setAttribute("OrderId", OrderId);
		req.getRequestDispatcher("historyOrders.jsp").forward(req, resp);
		OrderId.clear();
		db.close();
	}
	//生成订单
	protected void generate(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String id=getOrderIdByTime();
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		for(Cart c:cart_) {
			String sql="insert into t_order(id,un,goodsname,number,price) values('"+id+"','"+username+"','"+c.getGoodsname()+"',"+c.getNumber()+","+c.getPrice()+")";
			db.setData(sql);
		}
		db.setData("DELETE FROM t_cart");
		req.setAttribute("id", id);
		req.getRequestDispatcher("success.jsp").forward(req, resp);
		cart_.clear();
		db.close();
	}
	//确认订单
	protected void confirm(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_cart where un='"+username+"'");
		
		try {
		DataBase db=new DataBase();
		User u=(User)req.getSession().getAttribute("user");
		ResultSet rs = db.getData("SELECT distinct id FROM t_order where un='"+u.getUsername()+"' ");
		try {
			while(rs.next()) {
				String id=rs.getString("id");
				OrderId.add(id);
			}
			
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		
		req.setAttribute("OrderId", OrderId);
		req.getRequestDispatcher("historyOrders.jsp").forward(req, resp);
		OrderId.clear();
		db.close();
	}
	//生成订单
	protected void generate(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String id=getOrderIdByTime();
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		for(Cart c:cart_) {
			String sql="insert into t_order(id,un,goodsname,number,price) values('"+id+"','"+username+"','"+c.getGoodsname()+"',"+c.getNumber()+","+c.getPrice()+")";
			db.setData(sql);
		}
		db.setData("DELETE FROM t_cart");
		req.setAttribute("id", id);
		req.getRequestDispatcher("success.jsp").forward(req, resp);
		cart_.clear();
		db.close();
	}
			return;
		}
		String tag = req.getParameter("tag");
		if("AddCart".equals(tag)) {
			String index=req.getParameter("index");
			resp.sendRedirect(req.getContextPath()+"/add.cart?index="+index);
		}
		else{
			resp.sendRedirect(req.getContextPath()+"/show.cart");
		}
	}
}

public class GoodsServlet extends HttpServlet {
	public static List<Goods> goods=new ArrayList<Goods>();
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/show.goods".equals(path)){
			show(req,resp);
		}
		
	}
	protected void show(HttpServletRequest req, HttpServletResponse resp)
	throws ServletException, IOException {
	public static List<String> OrderId = new ArrayList<String>();
	//订单详情 List
	public static List<Order> order = new ArrayList<Order>();
	//时间+随机数
	public static String getOrderIdByTime() {
		SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMddHHmmss");
		String newDate=sdf.format(new Date()); 
		String result="";
		Random random=new Random();
		for(int i=0;i<3;i++) {
			result+=random.nextInt(10);
			
		}
		return newDate+result;
	}
		
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String path = req.getServletPath();
		resp.setContentType("text/html;charset=utf-8");
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		if("/confirm.order".equals(path)){
			confirm(req,resp);
		}
		if("/generate.order".equals(path)){
			generate(req,resp);
		}
		if("/showOrders.order".equals(path)){
			showOrders(req,resp);
		}
		if("/detail.order".equals(path)){
			detail(req,resp);
		}
		
	}
	//订单详情
	protected void detail(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String OrderId=req.getParameter("id");
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_order where id='"+OrderId+"'");
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		db.close();
		
	}
	
	protected void show(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_cart where un='"+username+"'");
		
		try {
			while(rs.next()) {
				Cart c=new Cart();
				c.setGoodsname(rs.getString(1));
				c.setNumber(rs.getInt(2));
				c.setPrice(rs.getDouble(3));
				c.setUsername(username);
				cart.add(c);
				
			}
			
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		db.close();
		
	}
	
	protected void show(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_cart where un='"+username+"'");
		
		try {
			while(rs.next()) {
				Cart c=new Cart();
				c.setGoodsname(rs.getString(1));
				c.setNumber(rs.getInt(2));
				c.setPrice(rs.getDouble(3));
				c.setUsername(username);
				cart.add(c);
				
			}
			
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		req.setAttribute("cart", cart);
		req.getRequestDispatcher("cart.jsp").forward(req, resp);
		cart.clear();
		db.close();
	}

	protected void delete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		DataBase db=new DataBase();
		String type=req.getParameter("type");
	protected void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String index=req.getParameter("index");
		User u=(User)req.getSession().getAttribute("user");
		String username=u.getUsername();
		DataBase db=new DataBase();
		ResultSet rs = db.getData("SELECT * FROM t_goods where goodsid="+index);
		String goodsname = "";
		Double price = 0.0;
		try {
			if(rs.next()) {
				goodsname=rs.getString(2);
				price=rs.getDouble(3);
			}
			else {
				System.out.println("获取出错!!!");
			}
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}
		rs = db.getData("SELECT * FROM t_cart  where goodsname='"+goodsname+"' and un='"+username+"'");
		try {
			if(rs.next()) {
				String sql="UPDATE t_cart SET number="+(rs.getInt("number")+1)+",price="+(price*(rs.getInt("number")+1))+" where goodsname='"+goodsname+"' and un='"+username+"'";
				db.setData(sql);
				req.setAttribute("msg", "商品"+goodsname+"加入购物成成功!");
				req.getRequestDispatcher("/show.goods").forward(req, resp);
			}
			else {
				String sql="insert into t_cart(goodsname,number,price,un) values('"+goodsname+"',1,'"+price+"','"+username+"')";
				System.out.print(sql);
				db.setData(sql);
				req.setAttribute("msg", "商品"+goodsname+"加入购物成成功!");
				req.getRequestDispatcher("/show.goods").forward(req, resp);
			}
			
		} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}finally {
			if(rs!=null) {
				try {
					rs.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
		db.close();
		

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 9
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我可以给你简单介绍一下一个基于Javaweb的Spring+jsp+Servlet+MySql的超市订单管理系统的大致架构和功能模块。 该系统主要分为前台和后台两个部分,前台是顾客使用的界面,可以进行商品浏览、购物车管理、订单提交等操作;后台是管理员使用的界面,可以进行商品管理、订单管理、用户管理等操作。 系统的技术架构主要采用Spring框架作为整个项目的基础框架,集成了MyBatis持久化框架、SpringMVC框架和Shiro安全框架等技术,通过Maven进行项目管理和依赖管理,使用Tomcat作为Web服务器,最终实现了一个高效、稳定、安全、易于维护的超市订单管理系统。 下面简单列举一下系统的功能模块: 1. 用户注册和登录:用户可以通过注册账号并登录系统来进行商品浏览、购物车管理、订单提交等操作。 2. 商品管理:管理员可以在后台管理界面中管理商品信息,包括商品的添加、修改、删除、查询等操作。 3. 订单管理:管理员可以在后台管理界面中管理订单信息,包括订单的查询、修改、删除等操作。 4. 用户管理:管理员可以在后台管理界面中管理用户信息,包括用户的查询、添加、修改、删除等操作。 5. 购物车管理:用户可以将感兴趣的商品添加到购物车中,也可以在购物车中修改、删除商品信息。 6. 支付和发货:用户可以在确认订单信息无误后进行支付操作,管理员可以在后台管理界面中进行订单发货操作。 7. 安全权限控制:系统通过Shiro框架实现了对用户登录和权限控制的安全管理,确保系统的数据安全性和稳定性。 以上仅是系统的简单介绍,具体的实现和细节还需要根据具体的需求进行设计和开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

java毕业

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值