上海古都建筑设计集团,上海办公室装修设计公司,上海装修公司高质量的内容分享社区,上海装修公司我们不是内容生产者,我们只是上海办公室装修设计公司内容的搬运工平台

JavaWeb:servlet+MyBatis+ajax (商品管理系统)

guduadmin342月前

文章目录

        • 1、开发环境
        • 2、环境准备
        • 3、功能实现
          • 3.1、查询所有
          • 3.2、增加数据
            1、开发环境
            • IDEA
            • mysql8.0
            • ajax
            • servlet
              2、环境准备

              1、创建数据库

              CREATE DATABASE ajax_test;
              USE ajax_test;
              -- 删除tb_brand表
              DROP TABLE IF EXISTS tb_brand;
              -- 创建tb_brand表
              CREATE TABLE tb_brand
              (
                  -- id 主键
                  id           INT PRIMARY KEY AUTO_INCREMENT,
                  -- 品牌名称
                  brand_name   VARCHAR(20),
                  -- 企业名称
                  company_name VARCHAR(20),
                  -- 排序字段
                  ordered      INT,
                  -- 描述信息
                  description  VARCHAR(100),
                  -- 状态:0:禁用  1:启用
                  STATUS       INT
              );
              -- 添加数据
              INSERT INTO tb_brand (brand_name, company_name, ordered, description, STATUS)
              VALUES ('三只松鼠', '三只松鼠股份有限公司', 5, '好吃不上火', 0),
                     ('华为', '华为技术有限公司', 100, '华为致力于把数字世界带入每个人、每个家庭、每个组织,构建万物互联的智能世界', 1),
                     ('小米', '小米科技有限公司', 50, 'are you ok', 1);
              SELECT * FROM tb_brand;
              SELECT id, brand_name AS brandName, company_name AS companyName FROM tb_brand;
              

              2、创建web项目

              3、pom.xml文件导入依赖

              
                  
                  
                      org.mybatis
                      mybatis
                      3.5.5
                  
                  
                  
                      mysql
                      mysql-connector-java
                      5.1.46
                  
                  
                  
                      javax.servlet
                      javax.servlet-api
                      3.1.0
                      provided
                  
                  
                  
                      javax.servlet.jsp
                      jsp-api
                      2.2
                      provided
                  
                  
                      com.alibaba
                      fastjson
                      1.2.58
                  
              
              

              4、编写mybatis配置文件

              
              
              
                  
                      
                      
                      
                  
                  
                  
                      
                  
                  
                      
                          
                          
                              
                              
                              
                              
                          
                      
                  
                  
                      
                      
                  
              
              

              5、创建项目结构导入js

              JavaWeb:servlet+MyBatis+ajax (商品管理系统),image-20240122143145247,第1张

              6、编写Mybatis工具类

              public class MyBatisUtils {
                  private static SqlSessionFactory sqlSessionFactory;
                  // 我们只需要一个SqlSessionFactory,在静态代码块中创建SqlSessionFactory
                  static {
                      try {
                          // 编写代码让MyBatis跑起来,执行SQL语句
                          String resource = "mybatis-config.xml";
                          // 加载核心配置文件
                          InputStream inputStream = Resources.getResourceAsStream(resource);
                          // 得到SqlSession工厂,赋值给成员变量
                          sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
                      } catch (IOException e) {
                          e.printStackTrace();
                      }
                  }
                  // 返回SqlSessionFactory
                  public static SqlSessionFactory getSqlSessionFactory() {
                      return sqlSessionFactory;
                  }
                  // 返回SqlSession
                  public static SqlSession openSession() {
                      return sqlSessionFactory.openSession();
                  }
                  public static SqlSession openSession(boolean autoCommit) {
                      return sqlSessionFactory.openSession(autoCommit);
                  }
              }
              

              7、编写实体类

              public class Brand {
                  // id 主键
                  private Integer id;
                  // 品牌名称
                  private String brandName;
                  // 企业名称
                  private String companyName;
                  // 排序字段
                  private Integer ordered;
                  // 描述信息
                  private String description;
                  // 状态:0:禁用  1:启用
                  private Integer status;
                  ....省略方法
              }
              
              3、功能实现
              3.1、查询所有

              JavaWeb:servlet+MyBatis+ajax (商品管理系统),image-20240122143746679,第2张

              代码实现

              1、在mapper包下编写BrandMapper接口,编写查询所有方法

              public interface BrandMapper {
                  @Select("select * from tb_brand;")
                  List selectAllBrand();
              }
              

              2、在service包下创建BrandService类

              public class BrandService {
                  public List selectAllBrand() {
                      SqlSession sqlSession = MyBatisUtils.openSession();
                      BrandMapper mapper = sqlSession.getMapper(BrandMapper.class);
                      List listBrand = mapper.selectAllBrand();
                      return listBrand;
                  }
              }
              

              3、在web包下编写SeleAllServlet

              @WebServlet(value = "/selectAllServlet")
              public class SelectAllServlet extends HttpServlet {
                  @Override
                  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                      //1、调用查询
                      BrandService brandService = new BrandService();
                      List brands = brandService.selectAllBrand();
                      // 2、将集合转化为JSON数据
                      String jsonString = JSON.toJSONString(brands);
                      // 3、响应JSON数据
                      response.setContentType("text/json;charset=utf-8");
                      response.getWriter().write(jsonString);
                  }
                  @Override
                  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                      request.setCharacterEncoding("UTF-8");
                      doGet(request,response);
                  }
              }
              

              4、编写前端代码

              
              
              
                  
                  所有品牌
                  
              
              
              
              

              序号 品牌名称 企业名称 排序 品牌介绍 状态 操作
              3.2、增加数据

              1、编写前端代码

              
              
              
                  
                  添加品牌
                  
              
              
              

              添加品牌

              品牌名称:
              企业名称:
              排序:
              描述信息:
              状态: 禁用 启用

              2、编写AddServlet

              @WebServlet(value = "/addServlet")
              public class AddServlet extends HttpServlet {
                  @Override
                  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                      // 1、获取数据
                      String brandJS = request.getReader().readLine();
                      // 2、转化成java对象
                      Brand brand = JSON.parseObject(brandJS, Brand.class);
                      // 3、调用方法
                      BrandService brandService = new BrandService();
                      brandService.addBrand(brand);
                      response.setContentType("text/json;charset=utf-8");
                      response.getWriter().write("添加数据成功");
                  }
                  @Override
                  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                      request.setCharacterEncoding("UTF-8");
                      doGet(request,response);
                  }
              }
              

              3、编写BrandService添加方法

              public void addBrand(Brand brand) {
                  SqlSession sqlSession = MyBatisUtils.openSession();
                  BrandMapper mapper = sqlSession.getMapper(BrandMapper.class);
                  mapper.addBrand(brand);
                  sqlSession.commit();
                  sqlSession.close();
              }
              

              4、接口添加方法

              @Insert("insert into tb_brand values (null,#{brandName},#{companyName},#{ordered},#{description},#{status})")
              void addBrand(Brand brand);
              

网友评论

搜索
最新文章
热门文章
热门标签
 
 梦见被入室抢劫并搏斗  原版周公解梦梦见鱼  做梦梦到蟒蛇是吉还是凶