首页 > 其他分享 >案例-修改-回显数据

案例-修改-回显数据

时间:2023-06-30 14:44:52浏览次数:31  
标签:BrandMapper 回显 修改 brand 案例 sqlSession import Brand itheima

 

package com.itheima.mapper;

import com.itheima.pojo.Brand;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.ResultMap;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface BrandMapper {
    /*
    * 查询所有
    * */
    @Select("select * from tb_brand")
    @ResultMap("brandResultMap")
    List<Brand> selectAll();

    /*
    * 添加
    * */
    @Insert("insert into tb_brand values (null,#{brandName},#{companyName},#{ordered},#{description},#{status})")
    void add(Brand brand);

    /*
     * 根据Id查询
     * */
    @Select("select * from tb_brand where id=#{id}")
    @ResultMap("brandResultMap")
    Brand selectById(int id);
}
package com.itheima.service;

import com.itheima.mapper.BrandMapper;
import com.itheima.pojo.Brand;
import com.itheima.util.SqlSessionFactoryUtils;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;

import java.util.List;

public class BrandService {
        //1. 使用工具类获util取到getSqlSessionFactory
        SqlSessionFactory factory = SqlSessionFactoryUtils.getSqlSessionFactory();
    /*
    * 查询所有
    * */
    public List<Brand> selectAll(){
        // 调用BrandMapper.selectAll()

        //2. 获取SqlSession
        SqlSession sqlSession = factory.openSession();

        //3. 获取BrandMapper
        BrandMapper mapper = sqlSession.getMapper(BrandMapper.class);

        //4. 调用方法selectAll()
        List<Brand> brands=mapper.selectAll();

        //返回brand集合,释放资源
        sqlSession.close();
        return brands;
    }

    /*
    * 添加
    * */
    public void add(Brand brand){
        //2. 获取SqlSession
        SqlSession sqlSession = factory.openSession();

        //3. 获取BrandMapper
        BrandMapper mapper = sqlSession.getMapper(BrandMapper.class);

        //调用方法
        mapper.add(brand);

        //提交事务
        sqlSession.commit();

        //释放资源
        sqlSession.close();
    }

    /*
     * 根据Id查询
     * */
    public Brand selectById(int id){

        //2. 获取SqlSession
        SqlSession sqlSession = factory.openSession();

        //3. 获取BrandMapper
        BrandMapper mapper = sqlSession.getMapper(BrandMapper.class);

        //4. 调用方法selectById()
        Brand brand = mapper.selectById(id);

        //返回brand,释放资源
        sqlSession.close();
        return brand;
    }
}
package com.itheima.web;

import com.itheima.pojo.Brand;
import com.itheima.service.BrandService;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

@WebServlet("/selectByIdServlet")
public class SelectByIdServlet extends HttpServlet {

    private BrandService service=new BrandService();

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1.接受id
        String id = request.getParameter("id");

        //2.调用service查询
        Brand brand = service.selectById(Integer.parseInt(id));

        //3.储存到request中
        request.setAttribute("brand",brand);

        //4.转发到update.jsp
        request.getRequestDispatcher("/update.jsp").forward(request,response);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.doGet(request,response);
    }

}
<%--
  Created by IntelliJ IDEA.
  User: admin
  Date: 2023/6/30
  Time: 13:25
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>修改品牌</title>
</head>
<body>
<h3>修改品牌</h3>
<form action="/brand-demo/addServlet" method="post">
    品牌名称:<input name="brandName" value="${brand.brandName}"><br>
    企业名称:<input name="companyName" value="${brand.companyName}"><br>
    排序:<input name="ordered"  value="${brand.ordered}"><br>
    描述信息:<textarea rows="5" cols="20" name="description">${brand.description}</textarea><br>
    状态:
    <c:if test="${brand.status == 0}">
        <input type="radio" name="status" value="0" checked>禁用
        <input type="radio" name="status" value="1">启用<br>
    </c:if>

    <c:if test="${brand.status == 1}">
        <input type="radio" name="status" value="0">禁用
        <input type="radio" name="status" value="1" checked>启用<br>
    </c:if>

    <input type="submit" value="提交">
</form>
</body>
</html>

 

标签:BrandMapper,回显,修改,brand,案例,sqlSession,import,Brand,itheima
From: https://www.cnblogs.com/Karl-hut/p/17516753.html

相关文章

  • sql server 默认时间 创建时间 最后修改时间
      创建时间:将字段设置为datetime类型,并设置默认值为getdate()ALTERTABLE表名ADDcreateTimeSMALLDATETIMEDEFAULT(GETDATE())修改时间:通过触发器,在updateAfter后,使用如下语句实现:updatetableNamesetcolumnName=getdate()WHEREIDIN(SELECTDISTINCTIDFR......
  • 案例-添加
     packagecom.itheima.mapper;importcom.itheima.pojo.Brand;importorg.apache.ibatis.annotations.Insert;importorg.apache.ibatis.annotations.ResultMap;importorg.apache.ibatis.annotations.Select;importjava.util.List;publicinterfaceBrandMapper......
  • Dynamics 365 主表修改了未保存,显示“未保存的更改”时,不可添加明细记录
     实现方式,在明细表的新增按钮,设置为可自定义,绑定函数://授权记录显示“未保存的更改”时不可添加授权产品functionIsSavedAuthorize(selectedEntityTypeName,primaryEntityTypeName,firstPrimaryItemId,primaryControl,selectedControl){if(Xrm.Page.data.getIsD......
  • 小游戏——贪吃蛇案例
    一、案例目的 1、实现贪吃蛇游戏基本功能,屏幕上随机出现一个“食物”,称为豆子,上下左右控制“蛇”的移动,吃到“豆子”以后“蛇”的身体加长一点。2、“蛇”碰到边界或蛇头与蛇身相撞,蛇死亡,游戏结束。3、为游戏设计友好的交互界面;例如欢迎界面,游戏界面,游戏结束界面。要有开始键......
  • TodoList案例
       案例介绍文本框里面输入内容,按下回车,就可以生成待办事项。点击待办事项复选框,就可以把当前数据添加到已完成事项里面。点击已完成事项复选框,就可以把当前数据添加到待办事项里面。但是本页面内容刷新页面不会丢失。toDoList分析以及注意点刷新页面不会丢失数据,......
  • 敏感词过滤--DFA算法及代码案例
    我们应该都遇见过敏感词过滤,比如当我们输入一些包含暴力或者色情的文本,系统会阻止信息提交。敏感词过滤就是检查用户输入的内容有没有敏感词,检查之后有两个策略。直接阻止信息保存,接口返回错误信息允许信息保存,但是会把敏感词替换为***不管是哪种策略,首先都得找到是否包含敏......
  • Windows修改远程桌面端口
    1.打开注册表编辑界面2.依次打开:计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp将PortNumber改为想要的端口值 ......
  • Git修改时间格式
    在使用gitlog时显示的commit历史的内容如下commit023a85972244c2aed34c9fb6d696d03a07e147ceAuthor:yourname<youre-mail>Date:2023-06-29修改Git日期格式要修改全局的Git日期格式,你可以使用gitconfig--global命令来配置date.format选项。运行以下命令来修改全......
  • 三菱PLC项目案例学习之PLC控制伺服或步进电机带动丝运行案例
    三菱PLC项目案例学习之PLC控制伺服或步进电机带动丝运行案例。器件:三菱FX1SPLC,威纶通触摸屏,48步进驱动器,伺服电机,丝杆滑台等。控制方式:PLC发脉冲给步进驱动器控制步进电机带动丝杆滑台同步运行。功能:学到:丝杆实际行走的距离转化成工程量脉冲个数的程序编写计算,fx1sPLC没有浮......
  • 台达A2 B2伺服电机编码器改功率软件 台达A2 B2伺服电机编码修改
    台达A2B2伺服电机编码器改功率软件台达A2B2伺服电机编码修改,用于更换编码器写匹配电机参数,更改编码器功率匹配驱动器测试维修用"台达A2B2伺服电机编码器改功率软件"是一款用于修改台达A2B2型号的伺服电机编码器的软件。它的主要功能是更换编码器并编写匹配的电机参数,以及修改......