栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

8 RESTful案例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

8 RESTful案例

8、RESTful案例 8.1、准备工作

Employee类:

public class Employee {
    private Integer id;
    private String lastName;
    private String email;
    //1 male, 0 female
    private Integer gender;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getLastName() {
        return lastName;
    }
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public Integer getGender() {
        return gender;
    }
    public void setGender(Integer gender) {
        this.gender = gender;
    }
    public Employee(Integer id, String lastName, String email, Integer
            gender) {
        super();
        this.id = id;
        this.lastName = lastName;
        this.email = email;
        this.gender = gender;
    }
    public Employee() {
    }
}

EmployeeDao类:

@Repository
public class EmployeeDao {
    private static Map employees = null;
    static{
        employees = new HashMap();
        employees.put(1001, new Employee(1001, "E-AA", "aa@163.com", 1));
        employees.put(1002, new Employee(1002, "E-BB", "bb@163.com", 1));
        employees.put(1003, new Employee(1003, "E-CC", "cc@163.com", 0));
        employees.put(1004, new Employee(1004, "E-DD", "dd@163.com", 0));
        employees.put(1005, new Employee(1005, "E-EE", "ee@163.com", 1));
    }
    private static Integer initId = 1006;
    public void save(Employee employee){
        if(employee.getId() == null){
            employee.setId(initId++);
        }
        employees.put(employee.getId(), employee);
    }
    public Collection getAll(){
        return employees.values();
    }
    public Employee get(Integer id){
        return employees.get(id);
    }
    public void delete(Integer id){
        employees.remove(id);
    }


}

IDEA设置自动导包:

8.2、功能清单
功能URL 地址请求方式
访问首页√/GET
查询全部数据√/employeeGET
删除√/employee/2DELETE
跳转到添加数据页面√/toAddGET
执行保存√/employeePOST
跳转到更新数据页面√/employee/2GET
执行更新√/employeePUT
8.3、具体功能:访问首页 ①配置view-controller

②创建页面




Title


首页

访问员工信息
8.4、具体功能:查询所有员工数据(列表) ①控制器方法
@Controller
public class EmployeeController {

    @Autowired
    private EmployeeDao employeeDao;


    @GetMapping("/employee")
    public String getAllEmployee(Model model){
        //获取所有的员工信息
        Collection all = employeeDao.getAll();
        //将所有员工信息在请求域中共享
        model.addAttribute("allEmployee",all);
        return "employee_list";
    }
}


扫描不到,需要更改:

    
    
    @GetMapping("/employee")
    public String getAllEmployee(Model model){
        //获取所有的员工信息
        Collection all = employeeDao.getAll();
        //将所有员工信息在请求域中共享
        model.addAttribute("allEmployee",all);
        return "employee_list";
    }

新建html(employee_list):

employee_list
id lastName email gender options
update delete

处理静态资源

static静态资源:

引入资源:


    
    employee_list
    

配置

    


    
    

8.5、具体功能:删除

使用Vue.js
通过vue处理点击事件

employee_list
id lastName email gender options(add)
delete update
    @DeleteMapping("/employee/{id}")
    public String deleteEmployee(@PathVariable("id") Integer id){
        //删除员工信息
        employeeDao.delete(id);
        //重定向到列表
        return "redirect:/employee";
    }

8.6、具体功能:添加数据

实现跳转到添加数据页面:

options(add)

springmvc.xml配置:

    
    

employee_add.html




    
    employee_add


    
lastName:
email:
gender:male female

重定向跳转:

    @PostMapping("/employee")
    public String addEmployee(Employee employee){
        //保存员工信息
        employeeDao.save(employee);

        return "redirect:/employee";
    }

8.7、具体功能:修改数据

update(注意格式)

 update

页面跳转:

    @GetMapping("/employee/{id}")
    public String toUpdate(@PathVariable("id") Integer id,Model model){
        //根据id查询员工信息
        Employee employee = employeeDao.get(id);
        //将员工信息共享到请求域中
        model.addAttribute("employee",employee);
        //跳转到employee_update.html
        return "employee_update";
    }

employee_update页面:

lastName:
email:
gender:male female

update操作:

    @PutMapping("/employee")
    public String updateEmployee(Employee employee){
        //修改员工信息
        employeeDao.save(employee);
        return "redirect:/employee";
    }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1036187.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号