010 资源目录整理

来源:互联网 发布:数据分析师培训课程 编辑:程序博客网 时间:2024/06/06 03:34

010 资源目录整理

视频发布在youtube上面了
https://youtu.be/NcO_PRf94xY
优酷上面的链接
http://v.youku.com/v_show/id_XMjgzOTkwNzUxMg==.html?f=49760672

资源目录结构做了一下调整:

目录路径 说明 webapp/resources/commons/js 自定义通用脚本 webapp/resources/commons/jsExt 外部引用脚本 webapp/resources/themeDefault/css 默认主题css配置 webapp/resources/themeDefault/images 默认主题图片配置 webapp/resources/themeDefault/js 默认主题脚本配置

在TestUser里面加入@WebAppConfiguration注解,用于加载WebApplicationContext,名字改为TestUserService,因为这个是用来测试service接口的。

@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations = "classpath:springmvc.xml")@WebAppConfigurationpublic class TestUser{...

springmvc.xml需要添加一个配置,处理静态资源的

<mvc:annotation-driven conversion-service="conversionService">...</mvc:annotation-driven><!-- 由Spring MVC框架自己处理静态资源,并添加一些有用的附加值功能 --><mvc:resources mapping="/resources/**" location="/resources/commons/,/resources/themeDefault/"    order="0" cache-period="31556926">    <mvc:cache-control max-age="3600" cache-public="true" /></mvc:resources>

上面的设置请求/resources/**时Spring会映射到/resources/themeDefault/
当需要更新主题样式的时候更新一下即可

<mvc:resources mapping="/resources/**" location="/resources/theme-new/" />

修改user.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title><!-- 下面两个必须引用 --><script type="text/javascript"    src="resources/jsExt/jquery-easyui-1.5.2/jquery.min.js"></script><script type="text/javascript"    src="resources//jsExt/jquery-easyui-1.5.2/jquery.easyui.min.js"></script><!-- 国际化文件 --><script type="text/javascript"    src="resources//jsExt/jquery-easyui-1.5.2/locale/easyui-lang-zh_CN.js"></script><!-- 默认样式 --><link rel="stylesheet"    href="resources/jsExt/jquery-easyui-1.5.2/themes/default/easyui.css"><!-- 图标 --><link rel="stylesheet"    href="resources/jsExt/jquery-easyui-1.5.2/themes/icon.css"><!-- 自定义js --><script type="text/javascript" src="resources/js/teacherFormatter.js"></script><!-- 自定义的js脚本 --><script type="text/javascript" src="resources/js/commons.js"></script><script type="text/javascript" src="resources/js/user/userOper.js"></script><link rel="stylesheet" href="resources/css/user.css"></head><body>    <div id="tt" class="easyui-layout" style="margin: 20px 20px 20px 20px;">        <table id="dg" class="easyui-datagrid" title="用户列表"            style="width: 100%; height: 400px;pagination-num{width:200px}"            data-options="rownumbers:true,striped:true,fitColumns:true,singleSelect:true,autoRowHeight:true,pagination:true,                pageSize:12,pageList:[12,100,200,300],url:'${pageContext.request.contextPath}/getUsers',method:'get',toolbar:'#toolbar'">            <thead>                <tr>                    <th data-options="field:'id',width:100">ID</th>                    <th data-options="field:'name',width:100">name</th>                    <th data-options="field:'age',width:100">Age</th>                    <th data-options="field:'gender',width:60">Gender</th>                    <th data-options="field:'email',width:150">Email</th>                    <th data-options="field:'createTime',width:150">Create Time</th>                    <th data-options="field:'loginTime',width:150">Login Time</th>                    <th data-options="field:'teacher',width:100"                        formatter="teacherFormatter">Teacher Name</th>                </tr>            </thead>        </table>        <div id="toolbar">            <a href="#" class="easyui-linkbutton"                data-options="iconCls:'icon-add'" onclick="insert()">添加</a> <a                href="#" class="easyui-linkbutton"                data-options="iconCls:'icon-edit'" onclick="edit()">编辑</a> <a                href="#" class="easyui-linkbutton"                data-options="iconCls:'icon-remove'" onclick="del()">删除</a>        </div>    </div>    <!-- create user dialog -->    <div id="dlg" class="easyui-dialog"        data-options="iconCls:'icon-save',resizable:true,modal:true"        style="width: 400px; height: 280px; padding: 10px 20px" closed="true"        buttons="#dlg-buttons">        <div class="ftitle">用户信息</div>        <form id="fm" method="post">            <div class="fitem">                <label for="name">用户名:</label> <input name="name"                    class="easyui-validatebox" type="text" data-options="required:true">            </div>            <div class="fitem">                <label for="age">年 龄:</label> <input name="age"                    class="easyui-numberbox" type="text"                    data-options="required:true,validType:'number'">            </div>            <div class="fitem">                <label for="gender">性 别:</label> <input id="state1" name="gender"                    value="男" type="radio" checked="true" /><input id="state2"                    name="gender" value="女" type="radio" /></div>            <div class="fitem">                <label for="email">Email:</label> <input name="email"                    class="easyui-validatebox" type="text"                    data-options="required:true,validType:'email'">            </div>            <div class="fitem">                <label for="teacherId">教 师:</label> <input id="cc"                    class="easyui-combobox" name="teacherId"                    data-options="valueField:'id',textField:'name',panelHeight:80,editable:false,method:'get',url:'${pageContext.request.contextPath}/getTeacherComboData'">            </div>        </form>    </div>    <div id="dlg-buttons">        <a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-ok'"            onclick="save()">Save</a> <a href="#" class="easyui-linkbutton"            data-options="iconCls:'icon-cancel'"            onclick="javascript:$('#dlg').dialog('close')">Cancel</a>    </div></body></html>

修改一下userOper.js

/*! * imalex@163.com - v0.1 (2015-08-29 18:00:00 +0800) * Copyright 2015 */$(function() {});$('#dg').pagination({    pageSize: 20,//每页显示的记录条数,默认为10     pageList: [20, 50, 100],//可以设置每页记录条数的列表 });function insert() {    $('#dlg').dialog('open').dialog('setTitle', '新建用户');    $('#fm').form('clear');    url = ctx + '/users';    type = insert;}function edit() {    var row = $('#dg').datagrid('getSelected');    if (row) {        $('#dlg').dialog('open').dialog('setTitle', '编辑用户信息');        $('#fm').form('load', row);        //setCheckedValue(document.forms['fm'].elements['gender'], row['gender']);        url = ctx + '/users/' + row.id;        type = edit;    }}function save() {    $('#fm').form('submit', {        url : url,        type:type,        onSubmit : function(param) {            if (type == edit) {                //use put                 param._method ='PUT';            }            param.createTime = new Date().Format("yyyy-MM-dd hh:mm:ss");            param.loginTime = param.createTime;            var ret = $(this).form('validate');            return ret;        },        success : function(result) {            var result = eval('(' + result + ')');            if (result.errorMsg) {                $.messager.show({                    title : 'Error',                    msg : result.errorMsg                });            } else {                $('#dlg').dialog('close'); // close the dialog                $('#dg').datagrid('reload'); // reload the user data            }        }    });}function del() {    var row = $('#dg').datagrid('getSelected');    if (row) {        $.messager.confirm('确认', '请确认删除已选择用户?', function(r) {            if (r) {                $.post(ctx + '/users/' + row.id, {                    _method : 'DELETE'                }, function(result) {                    if (result.status != null) {                        $('#dg').datagrid('reload'); // reload the user data                    } else {                        $.messager.show({ // show error message                            title : 'Error',                            msg : result.errorMsg                        });                    }                }, 'json');            }        });    }}

现在测试一下,原有的功能应该是没有影响的