程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

【JAVAWEB开发】基于Java+Servlet+Ajax+jsp网上购物系统设计实现

发布于2022-09-18 17:19     阅读(1252)     评论(0)     点赞(29)     收藏(2)


哈喽~大家好呀,这篇给的大家带来的是网上购物系统设计。在传统电商时代,用户是先有需求再购买,用户对平台较为依赖,商家对消费者很难有直接的影响力,而如今社交 + 电商解决了产品质量的信息不对称问题,电商已经成为当今经济发展的一个重要领域。而网上购物就是实现之一,现在我们就来看看吧。

一、效果演示

1、首页界面

 如果没有登录,就只能查看无法购买

2、商品界面

 3、商品详情界面

 4、购物车界面

 5、购物订单界面

 

 6、交易成功界面

 7、个人订单界面

8、个人收藏界面

 9、管理员界面

 10、全部订单界面

 11、全部收藏界面

 二、数据库设计

数据库定义:数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则查询的效率会很低。当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。

用户表(user):字段(id,用户名,密码,电话,邮箱)

购物车表(shopping_cart):字段(id,用户名,商品名,价格,购买数量,总价,图片地址)

订单表(order):字段(id,商品名,邮箱,用户名,收货地址,收货电话)

商品详情表(goods_parameters):字段(id,商品类型,图片地址)

商品类型(favorite):字段(id,商品类型名)

商品表(user):字段(id,商品名,商品类型名,价格,图片地址,销量,库存)

收藏表(favorite):字段(id,用户名,商品名,价格,图片地址)

历史记录表(browsinghistory):字段(id,记录名,记录价格,记录图片地址)、

品牌表(brand):字段(id,用户名,品牌类型,品牌名)

三、部分代码展示

登录展示

  1. <div class="registerarea ">
  2. <!-- 注册表头部 -->
  3. <h4>登录账号
  4. <div class="login"> 没有账号,去<a href="register.jsp" class="style_red">注册</a> &nbsp;&nbsp; <a href="retrievePassword.jsp">忘记密码?点击找回</a></div>
  5. </h4>
  6. <!-- 注册表身体 -->
  7. <div class="reg_form">
  8. <form action="/EasybuyProject/loginServlet" class="submit" method="post">
  9. <ul class="clearfix:after">
  10. <li>
  11. <label>账号:</label> <input type="text" class="inp username" name="username">
  12. <span class="error">格式错误,应为长度6-20并含有大小写字母数字</span>
  13. <font color="red">
  14. <%
  15. if(session.getAttribute("messageLogin")!= null){
  16. out.print(session.getAttribute("messageLogin"));
  17. session.invalidate();
  18. }
  19. %>
  20. </font>
  21. </li>
  22. <li>
  23. <label>密码:</label> <input type="password" class="inp password" name="password">
  24. <%-- <span class="error">格式错误,应为长度6-20并含有大小写字母数字</span>--%>
  25. </li>
  26. <li>
  27. <input type="submit" class="inputButton" value="登录"> &nbsp;&nbsp;
  28. <input type="reset" value="重置" class="inputButton">
  29. </li>
  30. </ul>
  31. </form>
  32. </div>
  33. </div>

正则验证

  1. <script>
  2. $(document).ready(function () {
  3. $(function () {
  4. var flagUser = false
  5. var flagPwd = false
  6. var $user_name = $('.username')
  7. var $pwd = $('.password')
  8. $user_name.blur(function () {
  9. var vals = $user_name.val();
  10. var reg = /^[a-zA-Z0-9\_]{6,20}$/;
  11. if (reg.test(vals)) {
  12. $user_name.next().hide();
  13. flagUser = true;
  14. } else {
  15. // $user_name.next().show().css("z-index","2").html('用户名是6-20位数字、字母和下划线!');
  16. $user_name.next().show();
  17. flagUser = false;
  18. }
  19. })
  20. $pwd.blur(function () {
  21. var vals = $pwd.val();
  22. var reg = /^[a-zA-Z0-9\_]{6,20}$/;
  23. if (reg.test(vals)) {
  24. $pwd.next().hide();
  25. flagPwd = true;
  26. } else {
  27. $pwd.next().show();
  28. flagPwd = false;
  29. }
  30. })
  31. })
  32. })
  33. </script>

Servlet

  1. @WebServlet("/EasybuyProject/loginServlet")
  2. public class LoginServlet extends HttpServlet {
  3. @Override
  4. protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  5. doPost(req, resp);
  6. }
  7. @Override
  8. protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  9. req.setCharacterEncoding("utf8");
  10. resp.setCharacterEncoding("utf8");
  11. resp.setContentType("text/html;charset=UTF-8");
  12. String username = req.getParameter("username");
  13. String password = req.getParameter("password");
  14. UserService userService = new UserServiceImpl();
  15. User user = userService.login(username, password);
  16. HttpSession session = req.getSession();
  17. if (user != null && (!Objects.equals(username, "XzwadminNo1")) && !Objects.equals(password, "XzwadminNo1")) {
  18. resp.sendRedirect("/FrontPage/index.jsp");
  19. session.setAttribute("success",username);
  20. } else if(Objects.equals(username, "XzwadminNo1") && Objects.equals(password, "XzwadminNo1")){
  21. session.setAttribute("success",username);
  22. resp.sendRedirect("/FrontPage/indexAdmin.jsp");
  23. } else {
  24. session.setAttribute("messageLogin","用户名或者密码错误");
  25. resp.sendRedirect("/FrontPage/login.jsp");
  26. }
  27. }
  28. }

实体类

  1. public class User {
  2. private int id;
  3. private String username;
  4. private String password;
  5. private String tel;
  6. private String email;
  7. public User() {
  8. }
  9. public User(String tel, String email) {
  10. this.tel = tel;
  11. this.email = email;
  12. }
  13. public User(int id, String username, String password, String tel, String email) {
  14. this.id = id;
  15. this.username = username;
  16. this.password = password;
  17. this.tel = tel;
  18. this.email = email;
  19. }
  20. public int getId() {
  21. return id;
  22. }
  23. public void setId(int id) {
  24. this.id = id;
  25. }
  26. public String getUsername() {
  27. return username;
  28. }
  29. public void setUsername(String username) {
  30. this.username = username;
  31. }
  32. public String getPassword() {
  33. return password;
  34. }
  35. public void setPassword(String password) {
  36. this.password = password;
  37. }
  38. public String getTel() {
  39. return tel;
  40. }
  41. public void setTel(String tel) {
  42. this.tel = tel;
  43. }
  44. public String getEmail() {
  45. return email;
  46. }
  47. public void setEmail(String email) {
  48. this.email = email;
  49. }
  50. @Override
  51. public String toString() {
  52. return "User{" +
  53. "id=" + id +
  54. ", username='" + username + '\'' +
  55. ", password='" + password + '\'' +
  56. ", tel='" + tel + '\'' +
  57. ", email='" + email + '\'' +
  58. '}';
  59. }
  60. }

Dao

  1. public User login(String username, String password) {
  2. User user = null;
  3. Connection connection = null;
  4. PreparedStatement preparedStatement = null;
  5. ResultSet resultSet = null;
  6. try {
  7. connection = JdbcUtil.getConnection();
  8. String sql = "select * from user where username = ? and password= ?";
  9. preparedStatement = connection.prepareStatement(sql);
  10. preparedStatement.setString(1, username);
  11. preparedStatement.setString(2, password);
  12. resultSet = preparedStatement.executeQuery();
  13. if (resultSet.next()) {
  14. user = new User();
  15. user.setUsername(resultSet.getString("username"));
  16. user.setPassword(resultSet.getString("password"));
  17. }
  18. } catch (Exception e) {
  19. e.printStackTrace();
  20. } finally {
  21. JdbcUtil.release(resultSet, preparedStatement, connection);
  22. }
  23. return user;
  24. }

效果展示

源码获取见公众号

不积跬步无以至千里,趁年轻,使劲拼,给未来的自己一个交代!向着明天更好的自己前进吧!

原文链接:https://blog.csdn.net/aasd23/article/details/126644476



所属网站分类: 技术文章 > 博客

作者:飞翔公园

链接:http://www.javaheidong.com/blog/article/504388/a31fc3698b542f936f17/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

29 0
收藏该文
已收藏

评论内容:(最多支持255个字符)