SpringMVC Pipeline [A] part2

基于Spring的MVC框架设计与实现 说明:这篇博客中并非讲SpringMVC,而是讲述我曾经实现过的一个MVC框架, 阅读详情

SpringMVC Pipeline [A] part2


SpringMVC Project

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • mobile1.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>mobileWeb</title>
    <link href="css/jquery.mobile-1.3.2.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page" id="page1">
    <div data-role="header">
        <h1>mobile web</h1>
    </div>
    <div data-role="content">
        <p>content <a href="#page2">page2</a> </p>
    </div>
    <div data-role="footer">
        <h1>footer</h1>
    </div>
</div>
<div data-role="page" id="page2">
    <div data-role="header">
        <h1>mobile web2</h1>
    </div>
    <div data-role="content">
        <p>content2 <a href="#page1">page1</a> </p>
    </div>
    <div data-role="footer">
        <h1>footer2</h1>
    </div>
</div>

</body>
</html>
  • mobile2.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>dialog</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page" id="page1">
    <div data-role="header">
        <h1>mobile web</h1>
    </div>
    <div data-role="content">
        <!--<p>content <a href="#page2" data-transition="fade" data-rel="dialog">page2</a> </p>-->
        <!--<p>content <a href="#page2" data-transition="flip" data-rel="dialog">page2</a> </p>-->
        <!--<p>content <a href="#page2" data-transition="flow" data-rel="dialog">page2</a> </p>-->
        <!--<p>content <a href="#page2" data-transition="pop" data-rel="dialog">page2</a> </p>-->
        <!--<p>content <a href="#page2" data-transition="slide" data-rel="dialog">page2</a> </p>-->
        <!--<p>content <a href="#page2" data-transition="slideup" data-rel="dialog">page2</a> </p>-->
        <p>content <a href="#page2" data-transition="pop" data-rel="dialog">page2</a> </p>
    </div>
    <div data-role="footer">
        <h1>footer</h1>
    </div>
</div>
<div data-role="page" id="page2">
    <div data-role="header">
        <h1>dialog info</h1>
    </div>
    <div data-role="content">
        <p>content2 <a href="#page1">page1</a> </p>
    </div>
    <div data-role="footer">
        <h1>footer</h1>
    </div>
</div>
</body>
  • mobile3.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>button</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page" id="page1">
    <div data-role="header">
        <h1>mobile web</h1>
    </div>
    <div data-role="content">
        <button data-inline="true">button1</button>
        <input type="button" value="button2">
        <a href="#page2" data-role="button">button3</a>
    </div>
    <div data-role="footer">
        <h1>footer</h1>
    </div>
</div>
<div data-role="page" id="page2">
    <div data-role="header">
        <h1>mobile web2</h1>
    </div>
    <div data-role="content">
        <button>button1</button>
        <input type="button" value="button2">
        <a href="#page1" data-role="button">button3</a>
        <a href="#" data-role="button" data-rel="back">back</a>
    </div>
    <div data-role="footer">
        <h1>footer2</h1>
    </div>
</div></body>
</html>
  • mobile4.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>button</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page" id="page1">
    <div data-role="header">
        <h1>mobile web</h1>
    </div>
    <div data-role="content">
        horizontal: <br/>
        <div data-role="controlgroup" data-type="horizontal">
            <a href="#" data-role="button">A</a>
            <a href="#" data-role="button">B</a>
            <a href="#" data-role="button">C</a>
            <a href="#" data-role="button">D</a>
        </div>
        Vertical: <br/>
        <div data-role="controlgroup" data-type="vertical">
            <a href="#" data-role="button">Add</a>
            <a href="#" data-role="button">Edit</a>
            <a href="#" data-role="button">Delete</a>
            <a href="#" data-role="button">Query</a>
        </div>
    </div>
    <div data-role="footer">
        <h1>footer</h1>
    </div>
</div>
</body>
</html>
  • mobile5.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>button</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page" id="page1">
    <div data-role="header">
        <h1>mobile web</h1>
    </div>
    <div data-role="content">
        <a href="#" data-role="button" data-icon="search" data-inline="true">add</a>
        <a href="#" data-role="button" data-icon="info" data-inline="true">add</a>
        <button data-icon="minus">Edit</button>
        <input type="button" data-icon="delete" value="delete" >
        <input type="button" data-icon="home" value="home" data-inline="true">
        <input type="button" data-icon="arrow-l" data-iconpos="notext" data-inline="true">
        <input type="button" data-icon="arrow-r" data-iconpos="notext" data-inline="true">
        <a href="#link" data-role="button" data-icon="search" data-iconpos="top" data-inline="true">top</a>
        <a href="#link" data-role="button" data-icon="search" data-iconpos="left" data-inline="true">left</a>
        <a href="#link" data-role="button" data-icon="search" data-iconpos="bottom" data-inline="true">bottom</a>
        <a href="#link" data-role="button" data-icon="search" data-iconpos="right" data-inline="true">right</a>
    </div>
    <div data-role="footer">
        <h1>footer</h1>
    </div>
</div>
</body>
</html>
  • mobile6.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>button</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
        <a href="#" data-role="button" class="ui-btn-right">search</a>
    </div>
    <div data-role="content">content</div>
    <div data-role="footer">
        <a href="#" data-role="button">add</a>
        <a href="#" data-role="button">edit</a>
        <a href="#" data-role="button">delete</a>
    </div>
</div>
</body>
</html>
  • mobile7.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>button</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
        <a href="#" data-role="button" class="ui-btn-right">search</a>
    </div>
    <div data-role="content">content<br/>content</div>
    <div data-role="footer">
        <div align="center" data-role="controlgroup" data-type="horizontal">
            <a href="#" data-role="button">add</a>
            <a href="#" data-role="button">edit</a>
            <a href="#" data-role="button">delete</a>
        </div>
    </div>
</div>
</body>
</html>
  • mobile8.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>button</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <!--<div data-role="header" data-position="fixed">-->
        <div data-role="header" data-position="fixed" data-fullscreen="true">
        <h1>Home</h1>
        <a href="#" data-role="button" class="ui-btn-right">search</a>
    </div>
    <div data-role="content">
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
        content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>content<br/>
    </div>
    <!--<div data-role="footer" >-->
        <div data-role="footer" data-position="fixed" data-fullscreen="true">
        <div align="center" data-role="controlgroup" data-type="horizontal">
            <a href="#" data-role="button">add</a>
            <a href="#" data-role="button">edit</a>
            <a href="#" data-role="button">delete</a>
        </div>
    </div>
</div>
</body>
</html>
  • mobile9.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>button</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page" id="pagehome">
    <!--<div data-role="header" data-position="fixed">-->
    <div data-role="header">
        <h1>Home</h1>
        <div data-role="navbar">
            <ul>
                <li><a href="#pagehome" class="ui-btn-active ui-state-persist" data-icon="home">Home</a></li>
                <li><a href="#pagecpjs" data-icon="home">Info</a></li>
                <li><a href="#" data-icon="home">Products</a></li>
                <li><a href="#" data-icon="home">News</a></li>
                <li><a href="#" data-icon="home">Contact</a></li>
            </ul>
        </div>
    </div>
    <div data-role="content">CONTENT1<br/>
        <div data-role="navbar">
            <ul>
                <li><a href="#pagehome" class="ui-btn-active ui-state-persist" data-icon="home">Home</a></li>
                <li><a href="#pagecpjs" data-icon="home">Info</a></li>
                <li><a href="#" data-icon="home">Products</a></li>
                <li><a href="#" data-icon="home">News</a></li>
                <li><a href="#" data-icon="home">Contact</a></li>
            </ul>
        </div>
    </div>
    <!--<div data-role="footer" >-->
    <div data-role="footer">
        <div align="center" data-role="controlgroup" data-type="horizontal">
            <a href="#" data-role="button">add</a>
            <a href="#" data-role="button">edit</a>
            <a href="#" data-role="button">delete</a>
        </div>
    </div>
</div>
<div data-role="page" id="pagecpjs">
    <!--<div data-role="header" data-position="fixed">-->
    <div data-role="header">
        <h1>Home</h1>
        <div data-role="navbar">
            <ul>
                <li><a href="#pagehome" data-icon="home">Home</a></li>
                <li><a href="#pagecpjs" class="ui-btn-active ui-state-persist" data-icon="home">Info</a></li>
                <li><a href="#" data-icon="home">Products</a></li>
                <li><a href="#" data-icon="home">News</a></li>
                <li><a href="#" data-icon="home">Contact</a></li>
            </ul>
        </div>
    </div>
    <div data-role="content">CONTENT2<br/>
        <div data-role="navbar">
            <ul>
                <li><a href="#pagehome" data-icon="home">Home</a></li>
                <li><a href="#pagecpjs" class="ui-btn-active ui-state-persist" data-icon="home">Info</a></li>
                <li><a href="#" data-icon="home">Products</a></li>
                <li><a href="#" data-icon="home">News</a></li>
                <li><a href="#" data-icon="home">Contact</a></li>
            </ul>
        </div>
    </div>
    <!--<div data-role="footer" >-->
    <div data-role="footer">
        <div align="center" data-role="controlgroup" data-type="horizontal">
            <a href="#" data-role="button">add</a>
            <a href="#" data-role="button">edit</a>
            <a href="#" data-role="button">delete</a>
        </div>
    </div>
</div>
</body>
</html>
  • mobile10.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>collapse</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
    </div>
    <div data-role="content">
        <div data-role="collapsible-set">
            <div data-role="collapsible" data-inset="false" data-mini="true" data-collapsed="false">
                <h1>collapse1</h1>
                <p>content<br/>content<br/>content<br/>content<br/>
                    content<br/>content<br/>content<br/>content<br/></p>
            </div>
            <div data-role="collapsible" data-inset="true" data-mini="false" data-collapsed="true">
                <h1>collapse2</h1>
                <p>content<br/>content<br/>content<br/>content<br/>
                    content<br/>content<br/>content<br/>content<br/></p>
            </div>
            <div data-role="collapsible" data-collapsed="true">
                <h1>collapse3</h1>
                <p>content<br/>content<br/>content<br/>content<br/>
                    content<br/>content<br/>content<br/>content<br/></p>
            </div>
        </div>
    </div>
    <div data-role="collapsible" data-inset="false" data-mini="true" data-collapsed="false">
        <h1>collapse1</h1>
        <p>content<br/>content<br/>content<br/>content<br/>
            content<br/>content<br/>content<br/>content<br/></p>
    </div>
    <div data-role="collapsible" data-inset="true" data-mini="false" data-collapsed="true">
        <h1>collapse2</h1>
        <p>content<br/>content<br/>content<br/>content<br/>
            content<br/>content<br/>content<br/>content<br/></p>
    </div>
    <div data-role="collapsible" data-collapsed="true"
         data-collapsed-icon="arrow-d" data-expanded-icon="arrow-u">
        <h1>collapse3</h1>
        <p>content<br/>content<br/>content<br/>content<br/>
            content<br/>content<br/>content<br/>content<br/></p>
    </div>
</div>
</body>
</html>
  • mobile11.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>viewport</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
    </div>
    <div data-role="content">
        <div class="ui-grid-a">
            <div class="ui-block-a">
                <button>button1</button>
            </div>
            <div class="ui-block-b">
                <button>button2</button>
            </div>
        </div>
        <div class="ui-grid-b">
            <div class="ui-block-a">
                <button>button1</button>
            </div>
            <div class="ui-block-b">
                <button>button2</button>
            </div>
            <div class="ui-block-c">
                <button>button3</button>
            </div>
        </div>
        <div class="ui-grid-c">
            <div class="ui-block-a">
                <button>button1</button>
            </div>
            <div class="ui-block-b">
                <button>button2</button>
            </div>
            <div class="ui-block-c">
                <button>button3</button>
            </div>
            <div class="ui-block-d">
                <button>button4</button>
            </div>
        </div>
        <div class="ui-grid-d">
            <div class="ui-block-a">
                <button>button1</button>
            </div>
            <div class="ui-block-b">
                <button>button2</button>
            </div>
            <div class="ui-block-c">
                <button>button3</button>
            </div>
            <div class="ui-block-d">
                <button>button4</button>
            </div>
            <div class="ui-block-e">
                <button>button5</button>
            </div>
        </div>
    </div>
</div>
</body>
</html>
  • mobile12.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>mobile</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="content">
        <h1>ul:</h1>
        <ul data-role="listview" data-inset="true">
            <li><a href="#">li1</a></li>
            <li><a href="#">li1</a></li>
        </ul>
        <h1>ol:</h1>
        <ol data-role="listview" data-inset="true">
            <li><a href="#">li2</a></li>
            <li><a href="#">li2</a></li>
        </ol>
        <h1>ul:</h1>
        <ul data-role="listview" >
            <li><a href="#">li1</a></li>
            <li><a href="#">li1</a></li>
        </ul>
        <h1>ol:</h1>
        <ol data-role="listview" >
            <li><a href="#">li2</a></li>
            <li><a href="#">li2</a></li>
        </ol>
    </div>
</div>
</body>
</html>
  • mobile13.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>mobile</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="content">
        <h1>ul:</h1>
        <ul data-role="listview" data-inset="true">
            <li data-role="list-divider">block1</li>
            <li><a href="#">li1</a></li>
            <li><a href="#">li1</a></li>
            <li data-role="list-divider">block2</li>
            <li><a href="#">li2</a></li>
            <li><a href="#">li2</a></li>
        </ul>
        <h1>ul:</h1>
        <ul data-role="listview" data-filter="true"
            data-filter-placeholder="enter search"
            data-autodividers="true" data-inset="true">
            <li><a href="#">ai1</a></li>
            <li><a href="#">aai1</a></li>
            <li><a href="#">ccci2</a></li>
            <li><a href="#">ci2</a></li>
        </ul>
    </div>
</div>
</body>
</html>
  • mobile14.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>mobile</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="content">
        <h1>ul:</h1>
        <ul data-role="listview" data-inset="true">
            <li><a href="#"><img class="ui-li-icon" src="img/sun.jpg">
                <h2>h2</h2>
                <p>paragraph</p></a></li>
            <li><a href="#"><img src="img/sun.jpg">
                <h2>h2</h2>
                <p>paragraph</p></a></li>
            <li><a href="#"><img src="img/sun.jpg">
                <h2>h2</h2><p>paragraph</p></a>
            <a href="#page2" data-rel="dialog">download</a>
            </li>
        </ul>
    </div>
</div>
<div data-role="page" id="page2">
    <div data-role="header"><h1>info</h1></div>
    <div data-role="content">
        dialog
    </div>
</div>
</body>
</html>
  • mobile15.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>mobile</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="content">
        <h1>ul:</h1>
        <ul data-role="listview" data-inset="true">
            <li><a>send info</a><span class="ui-li-count">100</span></li>
            <li><a>receive info</a><span class="ui-li-count">100</span></li>
            <li><a>draft info</a><span class="ui-li-count">100</span></li>
        </ul>
    </div>
</div>

</body>
</html>
  • mobile16.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Form</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
    </div>
    <div data-role="content">
        <form action="" method="get">
            <div data-role="fieldcontain">
                <label for="userId">userId:</label>
                <input type="text" id="userId" placeholder="userId" name="userId"/>
                <label for="password">password:</label>
                <input type="text" id="password" placeholder="password" name="password"/>
                <label for="info">info:</label>
                <textarea name="info" id="info"></textarea>
                <label for="search">search:</label>
                <input type="search" name="search" id="search">
                <label for="gender">sex:</label>
                <fieldset data-role="controlgroup" id="gender">
                    <label for="sex1">secret</label>
                    <input type="radio" name="sex" id="sex1" checked value="secret">
                    <label for="sex2">F</label>
                    <input type="radio" name="sex" id="sex2" value="F">
                    <label for="sex3">M</label>
                    <input type="radio" name="sex" id="sex3" value="M">
                </fieldset>
                <label for="interests">interests</label>
                <fieldset data-role="controlgroup" id="interests">
                    <label for="lol">lol</label>
                    <input type="checkbox" name="int" id="lol" value="lol">
                    <label for="lol2">lol2</label>
                    <input type="checkbox" name="int" id="lol2" value="lol">
                    <label for="lol3">lol3</label>
                    <input type="checkbox" name="int" id="lol3" value="lol">
                </fieldset>
            </div>
            <input type="submit" value="login"/>
        </form>
        <form action="" method="get">
            <label for="userId2">userId:</label>
            <input type="text" id="userId2" data-role="none" placeholder="userId" name="userId2"/>
            <br/>
            <label for="password2">password:</label>
            <input type="text" id="password2" data-role="none" placeholder="password" name="password2"/>
            <label for="info">info:</label>
            <textarea data-role="none" name="info2" id="info2"></textarea>
            <label type="search2">search:</label>
            <input data-role="none" type="search2" name="search2" id="search2">
            <input data-role="none" type="submit" value="login"/>
            <br/>
            <label>sex:</label>
            <fieldset data-role="none">
                <label for="sex11">secret</label>
                <input data-role="none" type="radio" name="sexx" id="sex11" checked value="secret">
                <label for="sex22">F</label>
                <input data-role="none" type="radio" name="sexx" id="sex22" value="F">
                <label for="sex33">M</label>
                <input data-role="none" type="radio" name="sexx" id="sex33" value="M">
            </fieldset>
            <br/>
            <label for="interestss">interests</label>
            <fieldset data-role="none" id="interestss">
                <label for="loll">lol</label>
                <input data-role="none" type="checkbox" name="int" id="loll" value="lol">
                <label for="loll2">lol2</label>
                <input data-role="none" type="checkbox" name="int" id="loll2" value="lol">
                <label for="loll3">lol3</label>
                <input data-role="none" type="checkbox" name="int" id="loll3" value="lol">
            </fieldset>
        </form>
    </div>
</div>
</body>
</html>
  • mobile17.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Form</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
    </div>
    <div data-role="content">
        <form action="" method="get">
            <div data-role="fieldcontain">
                <label for="gender">sex:</label>
                <fieldset data-role="controlgroup" id="gender" data-type="horizontal">
                    <label for="sex1">secret</label>
                    <input type="radio" name="sex" id="sex1" checked value="secret">
                    <label for="sex2">F</label>
                    <input type="radio" name="sex" id="sex2" value="F">
                    <label for="sex3">M</label>
                    <input type="radio" name="sex" id="sex3" value="M">
                </fieldset>
                <label for="interests">interests</label>
                <fieldset data-role="controlgroup" id="interests" data-type="horizontal">
                    <label for="lol">lol</label>
                    <input type="checkbox" name="int" id="lol" value="lol">
                    <label for="lol2">lol2</label>
                    <input type="checkbox" name="int" id="lol2" value="lol">
                    <label for="lol3">lol3</label>
                    <input type="checkbox" name="int" id="lol3" value="lol">
                </fieldset>
            </div>
            <input type="submit" value="login"/>
        </form>
    </div>
</div>
</body>
</html>
  • mobile18.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Form</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
    </div>
    <div data-role="content">
        <form action="" method="get">
            <label for="dpt">department</label>
            <select name="dpt" id="dpt">
                <option value=""> choose</option>
                <option value="tech">tech</option>
                <option value="human">human</option>
                <option value="clean">clean</option>
            </select>
            <label for="dpt1">department2</label>
            <select name="dpt" id="dpt1" data-native-menu="false">
                <option value=""> choose</option>
                <optgroup label="area1">
                    <option value="tech2">tech2</option>
                    <option value="human2">human2</option>
                    <option value="clean2">clean2</option>
                </optgroup>
                <optgroup label="area2">
                    <option value="tech2">tech2</option>
                    <option value="human2">human2</option>
                    <option value="clean2">clean2</option>
                </optgroup>
            </select>
            <label for="dpt2">department2</label>
            <select name="dpt" id="dpt2" multiple data-native-menu="false">
                <option value=""> choose</option>
                <optgroup label="area1">
                    <option value="tech2">tech2</option>
                    <option value="human2">human2</option>
                    <option value="clean2">clean2</option>
                </optgroup>
                <optgroup label="area2">
                    <option value="tech2">tech2</option>
                    <option value="human2">human2</option>
                    <option value="clean2">clean2</option>
                </optgroup>
            </select>
        </form>
    </div>
</div>
</body>
</html>
  • mobile19.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Form</title>
    <meta name="viewport" content="width-device-width, initial-scale=1">
    <link href="css/jquery.mobile-1.3.2.min.css" rel="stylesheet">
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<div data-role="page">
    <div data-role="header">
        <h1>Home</h1>
    </div>
    <div data-role="content">
        <form action="" method="get">
          <label for="age">age</label>
            <input type="range" name="age" id="age" data-hightlight="true"
                   value="18" min="0" max="150"/>
            <label>switch</label>
            <div data-role="fieldcontain">
                <select name="switch" data-role="slider">
                    <option value="ON">ON</option>
                    <option value="OFF" selected>OFF</option>
                </select>
            </div>
        </form>
    </div>
</div>
</body>
</html>
  • powerdesigner
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述 Text
在这里插入图片描述 Table
在这里插入图片描述 Reference

  • EducationSys.pdm
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • export sql
    在这里插入图片描述
    在这里插入图片描述
  • crebas2.sql
/*==============================================================*/
/* DBMS name:      MySQL 5.0                                    */
/* Created on:     2021/6/1 21:25:15                            */
/*==============================================================*/
drop table if exists access_info;
drop table if exists attendance_info;
drop table if exists audition_info;
drop table if exists class_info;
drop table if exists class_trans_info;
drop table if exists classroom_inform;
drop table if exists data_dictionary;
drop table if exists discipline;
drop table if exists email;
drop table if exists evaluation_info;
drop table if exists im_info;
drop table if exists marketing_activities;
drop table if exists role_access_info;
drop table if exists role_info;
drop table if exists staff_info;
drop table if exists staff_salary;
drop table if exists stu_com_info;
drop table if exists stu_grade;
drop table if exists student_fin;
drop table if exists student_info;
drop table if exists syllabus_info;
drop table if exists template;
drop table if exists track_rec_info;
/*==============================================================*/
/* Table: access_info                                           */
/*==============================================================*/
create table access_info
(
   access_id            int not null,
   acc_access_id        int,
   access_name          varchar(100),
   access_desc          varchar(1000),
   access               varchar(1000),
   primary key (access_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: attendance_info                                       */
/*==============================================================*/
create table attendance_info
(
   atten_id             int not null,
   staff_id             int,
   atten_desc           varchar(100),
   atten_status         varchar(10),
   atten_time           datetime,
   atten_remark         varchar(2000),
   primary key (atten_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: audition_info                                         */
/*==============================================================*/
create table audition_info
(
   aud_id               int not null,
   stu_id               int,
   aud_time             datetime,
   aud_addr             varchar(300),
   aud_course           varchar(100),
   aud_desc             varchar(300),
   primary key (aud_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: class_info                                            */
/*==============================================================*/
create table class_info
(
   class_id             int not null,
   disc_id              int,
   syll_id              int,
   classroom_id         int,
   staff_id             int,
   class_name           varchar(100),
   class_num            int,
   class_start          datetime,
   class_end            datetime,
   class_effective      varchar(10),
   class_status         varchar(10),
   class_desc           varchar(1000),
   primary key (class_id)
)
 ENGINE = InnoDB;
/*=============================================================*/
/* Table: class_trans_info                                      */
/*==============================================================*/
create table class_trans_info
(
   class_trans_id       int not null,
   class_id             int,
   class_trans_title    varchar(100),
   class_trans_content  varchar(2000),
   class_trans_ppl      varchar(100),
   class_trans_time     datetime,
   class_trans_remark   varchar(2000),
   primary key (class_trans_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: classroom_inform                                      */
/*==============================================================*/
create table classroom_inform
(
   classroom_id         int not null,
   classroom_name       varchar(100),
   classroom_max        int,
   classroom_info       varchar(1000),
   classroom_remark     varchar(1000),
   primary key (classroom_id)
)
 ENGINE = InnoDB;

/*==============================================================*/
/* Table: data_dictionary                                       */
/*==============================================================*/
create table data_dictionary
(
   data_id              int not null,
   data_info            varchar(100),
   data_ENGINE            varchar(100),
   data_discr           varchar(1000),
   primary key (data_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: discipline                                            */
/*==============================================================*/
create table discipline
(
   disc_id              int not null,
   disc_name            varchar(100),
   disc_tuition         int,
   disc_time            int,
   disc_desc            varchar(2000),
   disc_effective       varchar(10),
   primary key (disc_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: email                                                 */
/*==============================================================*/
create table email
(
   em_id                int not null,
   staff_id             int,
   em_emp_id            int,
   em_title             varchar(1000),
   em_msg               varchar(2000),
   em_send_time         datetime,
   em_receiver          varchar(100),
   em_receiver_em       varchar(300),
   em_status            varchar(10),
   primary key (em_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: evaluation_info                                       */
/*==============================================================*/
create table evaluation_info
(
   eval_id              int not null,
   stu_id               int,
   eval_title           varchar(100),
   eval_content         varchar(2000),
   eval_course          varchar(100),
   eval_teacher         varchar(100),
   eval_time            datetime,
   primary key (eval_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: im_info                                               */
/*==============================================================*/
create table im_info
(
   im_id                int not null,
   staff_id             int,
   im_sender            int,
   im_sender_ENGINE       varchar(1000),
   im_receiver          varchar(50),
   im_receiver_cell     int,
   im_send_time         datetime,
   im_send_status       varchar(10),
   primary key (im_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: marketing_activities                                  */
/*==============================================================*/
create table marketing_activities
(
   act_id               int not null,
   staff_id             int,
   act_name             varchar(300),
   act_status           int,
   act_start            datetime,
   act_end              datetime,
   act_ENGINE             int,
   act_quote            double,
   act_cost             double,
   act_react            varchar(300),
   act_mem              varchar(300),
   act_desc             varchar(2000),
   primary key (act_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: role_access_info                                      */
/*==============================================================*/
create table role_access_info
(
   role_access_id       int not null,
   access_id            int,
   role_id              int,
   primary key (role_access_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: role_info                                             */
/*==============================================================*/
create table role_info
(
   role_id              int not null,
   role_name            varchar(100),
   role_desc            varchar(1000),
   role_status          varchar(10),
   primary key (role_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: staff_info                                            */
/*==============================================================*/
create table staff_info
(
   staff_id             int not null,
   role_id              int,
   staff_name           varchar(100),
   staff_sex            varchar(10),
   staff_age            int(10),
   staff_country        varchar(10),
   staff_id_num         varchar(100),
   staff_bday           datetime,
   staff_phone          varchar(50),
   staff_cell           varchar(50),
   staff_email          varchar(100),
   staff_address        varchar(200),
   staff_im             varchar(30),
   staff_start          datetime,
   staff_edu            varchar(20),
   staff_about          varchar(2000),
   staff_status         varchar(10) comment '1 useful
            0 unuseful
            2 teacher',
   user_num             varchar(100),
   user_pwd             varchar(100),
   primary key (staff_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: staff_salary                                          */
/*==============================================================*/
create table staff_salary
(
   staff_sal_id         int not null,
   staff_id             int,
   sta_staff_id         int,
   total_sal            double,
   deduct_sal           double,
   real_sal             double,
   paid                 varchar(10),
   staff_sal_time       datetime,
   staff_sal_remark     varchar(2000),
   primary key (staff_sal_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: stu_com_info                                          */
/*==============================================================*/
create table stu_com_info
(
   com_id               int not null,
   stu_id               int,
   staff_id             int,
   com_time             datetime,
   com_content          varchar(2000),
   primary key (com_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: stu_grade                                             */
/*==============================================================*/
create table stu_grade
(
   stu_grade_id         int not null,
   stu_id               int,
   staff_id             int,
   stu_grade_sub        varchar(1000),
   stu_grade            varchar(50),
   stu_grade_time       datetime,
   stu_grade_note       varchar(2000),
   primary key (stu_grade_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: student_fin                                           */
/*==============================================================*/
create table student_fin
(
   pay_id               int not null,
   stu_id               int,
   staff_id             int,
   pay_situ             varchar(1000),
   pay_method           int,
   pay_time             datetime,
   discount_amount      double,
   original_amount      double,
   paid_amount          double,
   debt_amount          double,
   pay_remark           varchar(2000),
   primary key (pay_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: student_info                                          */
/*==============================================================*/
create table student_info
(
   stu_id               int not null,
   staff_id             int,
   class_id             int,
   stu_name             varchar(100),
   stu_sex              varchar(10),
   stu_age              int,
   stu_phone            varchar(100),
   stu_email            varchar(200),
   stu_id_num           varchar(30),
   stu_address          varchar(300),
   stu_bday             varchar(100),
   stu_school           varchar(100),
   stu_im               varchar(100),
   stu_parent           varchar(100),
   stu_parent_phone     varchar(100),
   stu_province         varchar(100),
   stu_city             varchar(100),
   stu_ENGINE             varchar(10),
   stu_paid             varchar(10),
   stu_status           varchar(10),
   stu_mark             varchar(10),
   stu_desc             varchar(2000),
   stu_num              varchar(100),
   stu_pwd              varchar(100),
   primary key (stu_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: syllabus_info                                         */
/*==============================================================*/
create table syllabus_info
(
   syll_id              int not null,
   syll_mon             varchar(50),
   syll_tue             varchar(50),
   syll_wed             varchar(50),
   syll_thur            varchar(50),
   syll_fri             varchar(50),
   syll_sat             varchar(50),
   syll_sun             varchar(50),
   syll_effective       varchar(50),
   syll_name            varchar(100),
   primary key (syll_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: template                                              */
/*==============================================================*/
create table template
(
   template_id          int not null,
   template_title       varchar(200),
   template_content     varchar(2000),
   template_ENGINE        varchar(20),
   primary key (template_id)
)
 ENGINE = InnoDB;
/*==============================================================*/
/* Table: track_rec_info                                        */
/*==============================================================*/
create table track_rec_info
(
   track_rec_id         int not null,
   stu_id               int,
   track_rec_title      varchar(200),
   track_rec_content    varchar(2000),
   track_rec_time       datetime,
   track_rec_enroll     int,
   next_rec_time        varchar(200),
   primary key (track_rec_id)
)
 ENGINE = InnoDB;
alter table access_info add constraint FK_Reference_2 foreign key (acc_access_id)
      references access_info (access_id) on delete restrict on update restrict;
alter table attendance_info add constraint FK_Reference_23 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table audition_info add constraint FK_Reference_10 foreign key (stu_id)
      references student_info (stu_id) on delete restrict on update restrict;
alter table class_info add constraint FK_Reference_18 foreign key (disc_id)
      references discipline (disc_id) on delete restrict on update restrict;
alter table class_info add constraint FK_Reference_19 foreign key (syll_id)
      references syllabus_info (syll_id) on delete restrict on update restrict;
alter table class_info add constraint FK_Reference_20 foreign key (classroom_id)
      references classroom_inform (classroom_id) on delete restrict on update restrict;
alter table class_info add constraint FK_Reference_21 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table class_trans_info add constraint FK_Reference_22 foreign key (class_id)
      references class_info (class_id) on delete restrict on update restrict;
alter table email add constraint FK_Reference_7 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table evaluation_info add constraint FK_Reference_12 foreign key (stu_id)
      references student_info (stu_id) on delete restrict on update restrict;
alter table im_info add constraint FK_Reference_6 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table marketing_activities add constraint FK_Reference_5 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table role_access_info add constraint FK_Reference_11 foreign key (role_id)
      references role_info (role_id) on delete restrict on update restrict;
alter table role_access_info add constraint FK_Reference_4 foreign key (access_id)
      references access_info (access_id) on delete restrict on update restrict;
alter table staff_info add constraint FK_Reference_1 foreign key (role_id)
      references role_info (role_id) on delete restrict on update restrict;
alter table staff_salary add constraint FK_Reference_26 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table staff_salary add constraint FK_Reference_27 foreign key (sta_staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table stu_com_info add constraint FK_Reference_13 foreign key (stu_id)
      references student_info (stu_id) on delete restrict on update restrict;
alter table stu_com_info add constraint FK_Reference_14 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table stu_grade add constraint FK_Reference_15 foreign key (stu_id)
      references student_info (stu_id) on delete restrict on update restrict;
alter table stu_grade add constraint FK_Reference_16 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table student_fin add constraint FK_Reference_24 foreign key (stu_id)
      references student_info (stu_id) on delete restrict on update restrict;
alter table student_fin add constraint FK_Reference_25 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table student_info add constraint FK_Reference_17 foreign key (class_id)
      references class_info (class_id) on delete restrict on update restrict;
alter table student_info add constraint FK_Reference_8 foreign key (staff_id)
      references staff_info (staff_id) on delete restrict on update restrict;
alter table track_rec_info add constraint FK_Reference_9 foreign key (stu_id)
      references student_info (stu_id) on delete restrict on update restrict;
  • ERROR: [Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'type = ISAM type = InnoDB;

  • solve: delete TYPE=ISAM change TYPE=InnoDB to ENGINE=InnoDB

  • MySQL Navcat: ems> run sql
    在这里插入图片描述
    在这里插入图片描述

  • ems project
    在这里插入图片描述
    在这里插入图片描述

  • use mabatis-generator

  • pom add:

        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.3.2</version>
        </dependency>
   ...
   			<plugin>
                    <groupId>org.mybatis.generator</groupId>
                    <artifactId>mybatis-generator-maven-plugin</artifactId>
                    <version>1.3.2</version>
                    <configuration>
                        <configurationFile>src/main/java/generatorConfig.xml</configurationFile>
                        <verbose>true</verbose>
                        <overwrite>true</overwrite>
                    </configuration>
                    <executions>
                        <execution>
                            <id>Generate MyBatis Artifacts</id>
                            <goals>
                                <goal>generate</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
  • create generatorConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <!-- driver-->
    <classPathEntry location="D:\IJ\ems2\ems2\webapp\WEB-INF\lib\mysql-connector-java-8.0.23.jar"/>
    <context id="context1">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/ems"
                        userId="root" password="12345"></jdbcConnection>
        <!-- bean generator-->
        <javaModelGenerator targetPackage="com.ems.po" targetProject="src/main/java"></javaModelGenerator>
        <!--mapper xml    -->
        <sqlMapGenerator targetPackage="com.ems.system.mapper" targetProject="src/main/java"></sqlMapGenerator>
        <!--mapper interface       -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.ems.system.mapper" targetProject="src/main/java">
        </javaClientGenerator>
        <table schema="" tableName="staff_info"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
        </table>
    </context>
</generatorConfiguration>

在这里插入图片描述
在这里插入图片描述

  • Error: cannot resolve method getContextPath()
  • Solve: add following to pom.xml
...
       <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.0</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
        </dependency>

在这里插入图片描述
在这里插入图片描述

  • result
    在这里插入图片描述
  • ERROR: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource classpath:com/ems/system/mapper/StaffInfoMapper.xml
  • Solve: move StaffInfoMapper to resource folder
    在这里插入图片描述
  • solve: mybatis-config.xml
...
<mappers>
    <mapper resource="StaffInfoMapper.xml"/>
</mappers>
...
  • ERROR:org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named ‘staffInfoServiceImpl’ available
  • solve: add @Service
...
@Service
public class StaffInfoServiceImpl implements StaffInfoService{
...
  • idea: surround with: ctrl+alt+t surround with

  • My97DatePicker

  • copy into project

在这里插入图片描述

	this.icon = {
		root				: 'bootstrap/img/base.gif',
		folder			: 'bootstrap/img/folder.gif',
		folderOpen	: 'bootstrap/img/folderopen.gif',
		node				: 'bootstrap/img/page.gif',
		empty				: 'bootstrap/img/empty.gif',
		line				: 'bootstrap/img/line.gif',
		join				: 'bootstrap/img/join.gif',
		joinBottom	: 'bootstrap/img/joinbottom.gif',
		plus				: 'bootstrap/img/plus.gif',
		plusBottom	: 'bootstrap/img/plusbottom.gif',
		minus				: 'bootstrap/img/minus.gif',
		minusBottom	: 'bootstrap/img/minusbottom.gif',
		nlPlus			: 'bootstrap/img/nolines_plus.gif',
		nlMinus			: 'bootstrap/img/nolines_minus.gif'
	};
  • Edit access_info sql
    在这里插入图片描述
  • delete following fk
    在这里插入图片描述
  • Error: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.ems1.system.mapper.AccessInfoMapper.getAccessInfoList
  • add to mybatis-config.xml
<mapper resource="RoleInfoMapper.xml"/>
  • change role access info : role access id to auto increment
    在这里插入图片描述

在这里插入图片描述

  • make staffinfo: user_num unique
    在这里插入图片描述
  • ERROR: ororg.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘imController’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘imServiceImpl’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘imInfoMapper’ defined in file [ D:\IJ\ems2\ems2\target\ems2\WEB-INF\classes\com\ems1\marketing\mapper\ImInfoMapper.class]: Unsatisfied dependency expressed through bean property ‘sqlSessionFactory’; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘sqlSessionFactory’ defined in class path resource [beans.xml]: Invocation of init method failed; nested exception is org.springframework.core.NestedIOException: Failed to parse config resource: class path resource [mybatis-config.xml]; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 7; 不允许有匹配 " [ xX][mM][lL]" 的处理指令目标。
  • SOLVE: get rid of following space
    在这里插入图片描述
  • taskkill
C:\Users\Administrator>netstat -ano|findstr 1099
  TCP    0.0.0.0:1099           0.0.0.0:0              LISTENING       14600
  TCP    [::]:1099              [::]:0                 LISTENING       14600

C:\Users\Administrator>taskkill /f /pid 14600
成功: 已终止 PID 为 14600 的进程。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • mail
  • activation
  • ems overview: name ems2, for details see SpringMVC Pipeline [A] part3
  • ERROR: java.lang.ClassNotFoundException: com.sun.mail.util.MailLogger
  • change in POM
<dependency >
    <groupId >javax.mail </groupId >
    <artifactId >mail </artifactId >
    <version >1.4.7 </version >
</dependency >
  • ERROR: trying to connect to host “smtp.163.com”, port 25, isSSL false
  • Solve add to controller
MailSSLSocketFactory sf = new MailSSLSocketFactory();
sf.setTrustAllHosts(true);
properties.put("mail.smtp.ssl.enable", "true");
properties.put("mail.smtp.ssl.socketFactory", sf); 
  • ERROR: javax.mail.AuthenticationFailedException: 550 User has no permission
  • Solve
    在这里插入图片描述
  • ERROR: smtp.SMTPSendFailedException: 553 Mail from must equal authorized user
  • Solve
message.setFrom(new InternetAddress("dummy12345@163.com"));

在这里插入图片描述

  • ERROR: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.ems1.marketing.mapper.MarketingActivitiesMapper.getMActivList
  • Solve: add to mybatis-config.xml
        <mapper resource="MarketingActivitiesMapper.xml"/>
  • ERROR: [Failed to convert property value of type ‘java.lang.String’ to required type ‘java.util.Date’ for property ‘actStart’; nested exception is java.lang.IllegalStateException: Cannot convert value of type ‘java.lang.String’ to required type ‘java.util.Date’ for property ‘actStart’: no matching editors or conversion strategy found]
  • solve: add to controller:
//    time init
    @InitBinder
    public void initBinder(ServletRequestDataBinder bin) {
        bin.registerCustomEditor(Date.class,
                new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
    }
  • student_info

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • tracking record
    在这里插入图片描述

  • audition
    在这里插入图片描述

  • classroom
    在这里插入图片描述

  • class
    在这里插入图片描述

  • evaluation
    在这里插入图片描述

  • stu_com_info
    在这里插入图片描述

  • class activity transaction
    在这里插入图片描述

  • attendance
    在这里插入图片描述

  • student finance
    在这里插入图片描述

  • staff salary
    在这里插入图片描述

  • stuFin change pay_method
    在这里插入图片描述

  • get HighCharts


  • Project Preview:
  • eliminated educational folder

  • Project Preview
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


Project


login: admin 12345
output:
在这里插入图片描述


生产级机器学习模型服务落地实战指南 机器学习模型部署不是简单启动API,而是构建可运维、可观测、可弹性伸缩的生产系统。其核心在于工程化思维转型:从Notebook中的静态验证,转向真实场景下的数据漂移监控、特征服务治理与GPU推理优化。技术价值体现在稳定性保障(如Triton动态批处理提升GPU利用率)、故障快速定位(Kubernetes事件+结构化日志)和成本可控性(VPA+Spot实例)。典型应用场景包括实时风控、推荐系统与智能客服等高并发低延迟业务。本文聚焦MLOps落地中最易被忽视的‘上线后’环节,覆盖Docker确定性打包、Redi 阅读详情

相关推荐

从Notebook到生产环境的ML模型部署四层加固实践

机器学习模型部署不是简单封装API,而是面向高可用、可追溯、可灰度的工程化落地。其核心在于解决环境不一致、契约违约、资源争抢与可观测缺失四大生产断点。基于Docker镜像固化、Pydantic服务契约、Uvicorn异步弹性执行与OpenTelemetry全链路追踪等关键技术,实现模型服务在Kubernetes集群中的稳定运行。该方案已在银行反欺诈、工业预测性维护等真实场景验证,显著降低MTTR并提升版本回滚效率。本文聚焦MLOps中模型服务化(Model Serving)与生产就绪(Production-

weixin_33713503的博客 616

SpringMVC Pipeline [A] part1

Spring MVC Pipeline

tw808的博客 210

langchain1.X学习笔记-38-RAG之文档加载器(二)pdf、word、markdown、html、文件夹

加载pdf(PyPDFLoader),加载Markdown(UnstructuredMarkdownLoader),加载HTML(UnstructuredHTMLLoader),加载File Directory(DirectoryLoader)。

qq_20466211的博客 217

Pipeline一体化处理过程(了解)

数据集网站 国内网站: 天池大数据竞赛中的O2O很厉害,卷商的数据. sklearn.preprocessing.Imputer是做数据处理的,不过目前已经弃用

AI学习笔记 829

pipeline在实际项目中的应用

@RequestMapping(value = "/queryTotalData", method = RequestMethod.GET) public Result queryTotalData() { Long successNum = 0L; Long failNum = 0L; List<Object> list = ...

insider_way 976

新手必看:Ozone11臭氧插件在FL Studio 21里的保姆级安装与激活教程

本文提供Ozone11臭氧插件在FL Studio 21中的详细安装与激活教程,涵盖下载、系统兼容性检查、关键选项设置、FL Studio专属配置、授权激活流程及性能优化。适合新手快速掌握这一专业混音插件的使用方法,提升编曲效率。

weixin_33690963的博客 453

【课程设计】基于SSM框架流浪猫救援网站的设计与实现 毕业设计-附源码201502

本文以SSM为开发技术,实现了一个流浪猫救援网站。流浪猫救援网站的主要使用者分为注册用户、管理员;管理员功能包括有:首页、地区管理、领养中心、品种管理、领养信息;前台首页功能包括有:首页、交流论坛、公告栏、养猫百科、领养中心等功能。通过这些功能模块的设计,基本上实现了整个流浪猫救援网站的过程。 具体在系统设计上,采用了SSM的结构,后台上采用Mysql数据库,是一个非常优秀的流浪猫救援网站 。

Biye_Design的博客 1612

【课程设计】基于SSM框架流浪猫救援网站的设计与实现毕业设计源码201502

本文以SSM为开发技术,实现了一个流浪猫救援网站。流浪猫救援网站的主要使用者分为注册用户、管理员;管理员功能包括有:首页、地区管理、领养中心、品种管理、领养信息;前台首页功能包括有:首页、交流论坛、公告栏、养猫百科、领养中心等功能。...

专业程序开发源的博客 2774

Vue+SSM构建企业混合办公管理系统实践

企业管理系统在现代混合办公场景中扮演着关键角色,通过前后端分离架构实现高效协同。前端采用Vue.js框架配合Element UI组件库,后端基于SSM(Spring+SpringMVC+MyBatis)技术栈,构建了包含考勤、请假、活动管理等核心功能的解决方案。系统实现了基于JWT的认证授权和RBAC权限控制,确保数据安全。技术选型上,Vue 2.x的Options API更适合复杂业务场景,而MyBatis的灵活SQL管理则满足了报表查询需求。该系统典型应用于科技企业的日常办公管理,通过地理位置校验和人脸

weixin_34342992的博客 354

机器学习模型生产化落地:从Notebook到高可用服务的工程实践

机器学习模型部署不是简单运行predict函数,而是涉及模型封装、服务韧性、可观测性与基础设施协同的系统工程。其核心原理在于通过分层解耦(模型层/服务层/基础设施层)实现故障隔离,借助Docker+Kubernetes保障环境一致性,依托Prometheus+Grafana构建多维度监控体系,并以Feast等特征存储解决实时推理性能瓶颈。技术价值体现在稳定性提升、异常快速定位、业务影响最小化;典型应用场景包括金融风控评分、电商推荐API、实时反欺诈服务等。本文聚焦真实生产环境中模型‘能跑’到‘稳跑’的关键跃

weixin_30902251的博客 341

ML模型服务化实战:从Notebook到高稳定生产环境

机器学习模型服务化是将训练好的算法转化为可规模化、可持续演进的在线服务的关键环节。其核心在于突破Jupyter Notebook的开发舒适区,直面生产环境的数据不确定性、流量波动与系统耦合等现实挑战。技术原理上需构建分层防御体系——数据契约保障输入可信、特征管道实现可追溯计算、模型服务集成熔断降级与可观测性。这一过程显著提升服务稳定性与故障定位效率,并支撑实时风控、推荐系统、预测性维护等典型场景。本文聚焦真实落地中的硬核实践,涵盖FastAPI轻量部署、数据漂移监控、特征版本管理及灰度发布策略等关键能力。

weixin_30823001的博客 467

【问题来了】Spring项目启动出现 No bean named ‘xxx‘ available 的问题

问题描述: 今天项目中需要实现对各个菜单访问记录日志的功能,所以先编写了 MenuAccessLogService 服务类,用于保存日志数据到数据库中,然后在类似AuthFilter类(权限过滤器)中引入 MenuAccessLogService,当然这里可以提一下,在AuthFilter类中是无法通过注解方式注入bean的,而是采用另外一种方式,在 init 方法中加入以下代码即可完成注入: //注入service ServletContext sc = filterConfig.getSer

小飞快跑的博客 8273

spring获取Bean报错

错误: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'orderServiceImpl' is expected to be of type'com.service.impl.OrderServiceImpl' but was actually of type 'com.sun.proxy.$Proxy17' 代码: public void queryTest() throws SQL

李闪闪 1288

解决报错:org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'UserService'

解决报错:org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'UserService' available at org.springframework.beans. at org.springframework.beans.) 第一种可能是忘记加注解了 第二种可能是getBean里面的...

weixin_42342702的博客 5万+

No qualifying bean of type 'XxxService'遗漏错误原因解析

整合项目过程中想通过AOP加入前置通知、后置通知、异常通知等。运行过程中出现如下问题 报错如下: 之前在学习复习过程中,知道AOP的底层是动态代理,记住了细节。但是记住总归是记住,确实不能代表掌握,今天发现了之前总结过的一点,就是从ioc容器中取出加入了通知方法的Bean都是代理对象,因此getBean中如果放入目标类.class并不能找出 代理对象。 因此需要将父类接口的.c...

Step By Step 8178

数据可视化:AI处理多维数据的HTML5可视化方案

在真实业务中,“多维数据”几乎无处不在:用户行为有几十个特征、传感器每秒上报几十个指标、推荐系统的特征向量动辄上百维。传统的二维图表(折线图、柱状图、散点图)最多只能同时编码 3~4 个维度,一旦维度超过 5 个,人类就很难从图表中直接读出结构和规律。多维数据可视化的核心矛盾是:数据本身在高维空间遵循的分布规律,无法直接“摊平”到二维屏幕上,而信息损失又不可避免。因此,一个好的方案通常不是“画更复杂的图”,而是把流程拆成两步:本文会先对比主流 HTML5 可视化方案,再介绍 AI 处理多维数据的常用手段,最

2601_96493715的博客 343

HTMLHTML5 新特性、语义化标签、浏览器渲染流程(附《思维导图》)

HTML是构建网页结构与语义的核心标记语言。HTML5大幅增强原生能力,涵盖语义化标签、音视频、Canvas/WebGL、本地存储、表单验证、WebSocket等,并深度优化可访问性与SEO。其渲染流程贯穿DOM/CSSOM构建、布局、绘制到合成显示。

小江的记录本 367
上一篇: SpringMVC Pipeline [A] part1
下一篇: Linux [B]
tw808
博客等级 码龄7年 0粉丝 15原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值