SSM統合記事] 6。5つの記事の統合への追加や削除の統合に基づくSSM [SSM]

[関連記事] 6つのSSM統合。SSM [5つの記事の統合への追加や削除の統合に基づくSSM]

githubのソース(day58-SSM-CRUDhttps://github.com/1196557363/ideaMavenProject

プロジェクト準備

  1. このプロジェクトは、[記事] 5つのSSMの統合に基づいて
    5つの記事のSSMの統合]。SSMの統合+ layuiページの記事の統合に基づいて、[SSM] 4 https://blog.csdn.net/TheNew_One/article/details/103904387

1.増加

1.1追加jqeury.js

1.2の追加がempPage.htmlをジャンプするページを追加するために接続されています

<a href="emp/addEmpHtml">添加员工</a>

1.3作成AddEmp.html

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <base th:href="${#request.getContextPath()+'/'}">
</head>
<body>

    <form action="emp/addEmp" method="post">
        <table>
            <tr>
                <td>empName</td>
                <td><input type="text" name="empName" value="测试账号"/></td>
            </tr>
            <tr>
                <td>job</td>
                <td><input type="text" name="job" value="测试职业"/></td>
            </tr>
            <tr>
                <td>hireDate</td>
                <td><input type="text" name="hireDate" value="2020-1-10"/></td>
            </tr>
            <tr>
                <td>super</td>
                <td>
                    <input type="text" name="superName" id="superName"/>
                    <input type="hidden" name="superId" id="superId" value="" />
                </td>
            </tr>
            <tr>
                <td>deptNo</td>
                <td>
                    <select name="deptNo">
                        <option value="0">---请选择---</option>
                        <option th:each="dept:${deptList}" th:value="${dept.deptId}" th:text="${dept.deptName}"></option>
                    </select>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="submit" value="提交">
                </td>
            </tr>
        </table>
    </form>

    <script src="js/jquery-1.8.0.min.js"></script>
    <script>
        // 页面加载的时候调用
        $(function(){
            // 动态给领导的输入框绑定一个失去焦点事件
            $("#superName").blur(function(){
                // 1.先获取用户输入的领导id
                var superId = $("#superName").val();
                if(superId != ''){
  $.get("emp/getEmpBySuperId/"+superId,"",function(data){
                        console.log(data);
                        $("#superName").val(data.empName);
                        $("#superId").val(data.empId)
                    },"JSON");
                }
            })
        })
    </script>
</body>
</html>

1.4書き込みDAO、マッパー、サービスと独自の実装

1.4.1 Empdao

	/**
     * 添加Emp
     * @param emp
     */
    void addEmp(Emp emp);

    /**
     * 根据领导的Id编号查询Emp
     * @param superId
     * @return
     */
    Emp getEmpBySuperId(Integer superId);

1.4.2マッパー

<sql id="emp_column">
	(emp_name,
	job,
	hire_date,
	super_id,
	dept_no)
</sql>

<insert id="addEmp">
	INSERT INTO emp
		<include refid="emp_column" />
	VALUES
		(#{empName},#{job},#{hireDate},#{superId},#{deptNo})
</insert>

<select id="getEmpBySuperId" resultMap="empMap">
	SELECT * FROM emp WHERE emp_id = #{superId}
</select>

1.4.3サービス

    /**
     * 添加Emp
     * @param emp
     */
    void addEmp(Emp emp);

    /**
     * 根据领导的Id编号查询Emp
     * @param superId
     * @return
     */
    Emp getEmpBySuperId(Integer superId);

1.4.4 serivceImpl

 	@Autowired
    private IDeptService iDeptService;

    public void addEmp(Emp emp) {
        iEmpDao.addEmp(emp);
    }
    public Emp getEmpBySuperId(Integer superId) {
        return iEmpDao.getEmpBySuperId(superId);
    }

1.5ライト・コントローラ

 @RequestMapping("/addEmpHtml")
    public String addEmp(ModelMap map){
        List<Dept> deptList = iDeptService.getAllDept();
        map.put("deptList", deptList);
        return "addEmp";
    }
    
    @RequestMapping(value = "/addEmp", method = RequestMethod.POST)
    public String addEmp(Emp emp){
        System.out.println("------------------------" + emp);
        iEmpService.addEmp(emp);
        return "redirect:getEmpPage";
    }
    
    @RequestMapping(value = "/getEmpBySuperId/{superId}")
    @ResponseBody
    public String getEmpBySuperId(@PathVariable Integer superId){
        System.out.println(iEmpService.getEmpBySuperId(superId));
        return new Gson().toJson(iEmpService.getEmpBySuperId(superId));
}

完全に機能を追加します。

2.変更

EmpPage.htmlに2.1のイベントを追加するための編集

2.2の新EditEmp.html

2.3ライト・コントローラ(順序は新しいメソッドを作成するためのプロンプトを下に関係ありません)

2.3書き込みサービスとIMPL、DAO、マッパー

完全な編集

3. [削除]

3.1 EmpPage.htmlを削除するイベントを追加

2.2は削除するように求め

2.3ライト・コントローラ(順序は新しいメソッドを作成するためのプロンプトを下に関係ありません)

2.3書き込みサービスとIMPL、DAO、マッパー

削除機能が完了しています

公開された42元の記事 ウォンの賞賛8 ビュー2434

おすすめ

転載: blog.csdn.net/TheNew_One/article/details/103916086