saas-export项目-company的表单回显修改功能

功能介绍(图):

在这里插入图片描述

在这里插入图片描述

功能分析

这个回显修改功能,其实可以看成如下步骤:

  1. 根据id,查询company

  2. 然后再将查询到的数据传给这个编辑更新的页面

  3. 页面拿到后台传来的值,给表单一一赋值(实现回显功能)

  4. 我们这时,可以对表单中的值进行修改

  5. 最后保存,实现修改功能

具体各层代码:

TestCompanyService(我这边是测试驱动开发,所以先来一个测试类,测试根据id的查询功能,然后再修改查询到的company中的值,实现更新功能)

    @Test
    public void test04(){
    
    
        //回显查询
        String id="c795075e-6d90-4e29-b46c-5efb5b015ca5";
        Company company = companyService.findById(id);
        log.info(company+"");
        company.setName("青软实训");
        companyService.updateCompany(company);
    }

ICompanyService

    //根据id查询
	Company findById(String id);
	//更新company的值
	void updateCompany(Company company);

CompanyServiceImpl

    @Override
    public Company findById(String id) {
    
    
        //service层调用dao层的findById方法,实现对数据库的操作
        Company company = iCompanyDao.findById(id);
        return company;
    }

ICompanyDao

    //根据id查询
	Company findById(String id);
	//更新company的值
	void updateCompany(Company company);

ICompanyDao.xml

 <select id="findById" parameterType="string" resultType="company">
select
	id,
	name ,
	expiration_date as expirationDate ,
	address,
	license_id as licenseId  ,
	representative ,
	phone  ,
	company_size as companySize  ,
	industry  ,
	remarks ,
	state,
	balance ,
	city
from ss_company
where  id = #{id}
    </select>


  <update id="update" parameterType="company">
     update ss_company
        set name           = #{name           },
            expiration_date= #{expirationDate},
            address        = #{address        },
            license_id     = #{licenseId     },
            representative = #{representative },
            phone          = #{phone          },
            company_size   = #{companySize   },
            industry       = #{industry       },
            remarks        = #{remarks        },
            state          = #{state          },
            balance        = #{balance        },
            city           = #{city           }
    where id = #{id}
    </update>

测试方法TestCompanyService运行效果:

在这里插入图片描述
方法测试通过!

接下来就是Controller层的开发,然后套上一一个前端页面,实现回显和赋值

CompanyController

    //${path}/company/toEdit.do?id=${item.id}

    @RequestMapping(path="/toEdit",method = RequestMethod.GET)
    public String toEdit(String id,Model model){
    
    
        l.info("toEdit id="+id);
        Company company=iCompanyService.findById(id);
        l.info("toEdit company="+company);

        model.addAttribute("company",company);
        //走视图解析器,跳转页面
        return "company/company-update";
    }

前台页面

company-update.jsp

使用el表达式,与 if标签,实现回显。

最终表单提交到action="${path}/company/update.do",走到Controller层,然后Controller层调service层调dao层,实现数据修改

猜你喜欢

转载自blog.csdn.net/qq_37924905/article/details/109407516