超市订单管理系统-项目搭建准备工作

SMBMS

image-20210506102315309

数据库:

image-20210506102544206

项目如何搭建?

考虑使用不适用Maven? 依赖,jar

项目搭建准备工作

  1. 搭建一个maven web项目

  2. 配置Tomcat、

  3. 测试项目是否能够跑起来

  4. 导入项目中需要的依赖

    <!--测试单元-->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>
    <!--servlet的依赖-->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>4.0.1</version>
    </dependency>
    <!--jsp的依赖-->
    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>javax.servlet.jsp-api</artifactId>
        <version>2.3.3</version>
    </dependency>
    <!--jstl的依赖-->
    <dependency>
        <groupId>javax.servlet.jsp.jstl</groupId>
        <artifactId>jstl-api</artifactId>
        <version>1.2</version>
    </dependency>
    <!--标签库-->
    <dependency>
        <groupId>taglibs</groupId>
        <artifactId>standard</artifactId>
        <version>1.1.2</version>
    </dependency>
    <!--数据库的依赖-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.47</version>
    </dependency>
    
  5. 创建项目包结构

    image-20210506105509981

  6. 编写实体类

    ORM映射:表-类映射

  7. 编写基础公共类

    1. 数据库配置文件

      driver=com.mysql.jdbc.Driver
      url=jdbc:mysql://localhost:3306/smbms?/useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
      username=root
      password=123456
      
    2. 编写数据库的公共类

      package com.tr.dao;
      
      import java.io.IOException;
      import java.io.InputStream;
      import java.sql.*;
      import java.util.Properties;
      
      /**
       * @author TRasdzz
       * @version 1.0
       * @since create in 2021/5/6 11:31
       */
      
      //操作数据库的公共类
      public class BaseDao {
          private static String            driver;
          private static String            url;
          private static String            username;
          private static String            password;
          private static InputStream       in;
          
          //静态代码块,类加载的时候就初始化了
          static {
              
              try {
                  //通过类加载器读取对应的资源
                  in = BaseDao.class.getClassLoader().getResourceAsStream("db.properties");
                  Properties prop = new Properties();
                  prop.load(in);
                  
                  //获取properties中的文件
                  driver = prop.getProperty("driver");
                  url = prop.getProperty("url");
                  username = prop.getProperty("username");
                  password = prop.getProperty("password");
                  
                  Class.forName(driver);
              } catch (IOException e) {
                  e.printStackTrace();
              } catch (ClassNotFoundException e) {
                  e.printStackTrace();
              } finally {
                  if (in != null) {
                      try {
                          in.close();
                      } catch (IOException e) {
                          e.printStackTrace();
                      }
                  }
              }
          }
          
          //获取数据库的链接
          public static Connection getConnection() throws SQLException {
              return DriverManager.getConnection(url, username, password);
          }
          
          //编写查询公共方法
          public static ResultSet execute(Connection conn, PreparedStatement st, String sql, Object[] params) throws SQLException {
              st = conn.prepareStatement(sql);
              for (int i = 0; i < params.length; i++) {
                  st.setObject(i + 1, params[i]);
              }
              return st.executeQuery();
          }
          
          //编写增删该公共方法
          public static int update(Connection conn,PreparedStatement st, String sql, Object[] params) throws SQLException {
              st = conn.prepareStatement(sql);
              for (int i = 0; i < params.length; i++) {
                  st.setObject(i + 1, params[i]);
              }
              return st.executeUpdate();
          }
          
          //关闭对象
          public static boolean release(Connection conn, Statement st, ResultSet rs) {
              boolean flag = true;
              if (rs != null) {
                  try {
                      rs.close();
                      //GC回收
                      rs = null;
                  } catch (SQLException e) {
                      e.printStackTrace();
                      flag = false;
                  }
              }
              if (st != null) {
                  try {
                      st.close();
                      st = null;
                  } catch (SQLException e) {
                      e.printStackTrace();
                      flag = false;
                  }
              }
              if (conn != null) {
                  try {
                      conn.close();
                      conn = null;
                  } catch (SQLException e) {
                      e.printStackTrace();
                      flag = false;
                  }
              }
              return flag;
          }
      }
      
    3. 编写字符编码过滤器

  8. 导入静态资源

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值