ssm框架项目开发实战 学校教务管理系统 (spring+mybatis+layui)

《SSM项目开发实战 学校教务管理系统 (SpringMVC+MyBatis)》项目演示

简  介
系统一共分为两类用户:超级管理员和老师;
超级管理员具备权限:
超级管理员登录成功之后,可以对自己的个人信息进行修改,并且可以创建老师账号,但是默认密码设置为12356,超级管理员可以创建班级。对于管理员类型通过fl。。。
老师账号权限:
可以创建学生信息,对学生信息进行维护,增加学生成绩信息。。。。
3.1、为什么要后台验证


```javascript
```javascript
在前台(jsp)页面中,如果现在使用的layui前端框架,那么我们的验证可以在input标签中定义,如果有非法用户通过地址重写的方式进行数据提交那么我们的后台如果不对数据进行验证,那么我们的数据库将不在安全。
	通过地址重写的方式进行数据更新操作,那么安全就存在隐患:http://localhost:8080/pms/AdminLoginAction/login.html?aid=admin&password=shdflkhsd
	需要编写一个自动检查工具类,对于后台可以验证的数据类型包括:int、date、double、float、string;
	范例:定义自定义数据验证过滤器
<mvc:interceptors>
   <mvc:interceptor>
      <mvc:mapping path="/**/*.html"/>
      <bean class="cn.xmkeshe.utils.validation.ValidationInterceptor"/>
   </mvc:interceptor>
</mvc:interceptors>
	范例:定义资源文件
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
   <property name="basenames">
      <array>
         <value>Validation</value>
      </array>
**3.2、编写真实验证主题类****
      	本类主要负责数据验证处理,所有的控制层数据都需要通过这个类进行验证,但是这个类不会被直接调用。
	范例:定义数据验证主题类
package cn.xmkeshe.utils.validation;

/**
 * <li>此类负责数据验证,验证数据类型包括:int、string、double、date</li>
 */
public class ValidationUtils {
    /**
     * 字符串验证
     * @param str 表示要执行验证的字符串
     * @return
     */
    public static boolean isString(String str){
        if(str == null || "".equals(str)){
            return false;
        }
        return true;
    }

    /**
     * 数字验证
     * @param str 表示要执行验证的数字
     * @return
     */
    public static boolean isInt(String str){
        if(isString(str)){
            return str.matches("\\d+");
        }
        return false;
    }
    /**
     * 小数验证
     * @param str 表示要执行验证的数字
     * @return
     */
    public static boolean isDouble(String str){
        if(isString(str)){
            return str.matches("\\d+(\\.+\\d+)?");
        }
        return false;
    }

    /**
     * 对日期进行验证操作
     * @param str 表示要执行验证的日期字符串
     * @return
     */
    public static boolean isDate(String str){
        if(isString(str)){
           if(str.matches("\\d{4}-\\d{2}-\\d{2}")) {
               return true;
           }else{
               return str.matches("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}");
           }
        }
        return false;
    }
}

     
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200610095508299.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lsY3Rv,size_16,color_FFFFFF,t_70)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值