如何在JSP页面中实现数据合法性校验

如何在JSP页面中实现数据合法性校验,第1张

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>登陆</title>

<script language="javascript">

function formcheck(){

if(document.myform.username.value==""){

alert("用户名不能为空,请输入用户名!")

document.myform.username.focus()

return false

}

if(document.myform.password.value==""){

alert("密码不能为空,请输入密码!")

document.myform.password.focus()

return false

}

}

</script>

<style type="text/css">

<!--

body,td,th {

font-size: 12px

}

-->

</style></head>

<body>

<table width="273" border="0" align="center" bgcolor="#B7D3FC">

<form name="myform" method="post" action="你的处理该表单的数据页面" onSubmit="return formcheck()">

<tr>

<td><div align="center">用户登陆</div> <div align="center"></div></td>

</tr>

<tr>

<td bgcolor="#FFFFFF"><div align="center">用户名:

<input name="username" type="text" size="18">

</div></td>

</tr>

<tr>

<td bgcolor="#FFFFFF"><div align="center">密  码:

<input name="password" type="password" size="19">

</div></td>

</tr>

<tr>

<td bgcolor="#FFFFFF"><div align="center">

<input type="submit" name="Submit" value="提交">    

<input type="reset" name="Submit2" value="重置">

</div> </td>

</tr>

</form>

</table>

</body>

</html>

(1)控制层controller:效验页面请求的参数的合法性,在服务端控制层conroller校验,不区分客户端类型(浏览器、手机客户端、远程调用)

(2)业务层service(使用较多):主要校验关键业务参数,仅限于service接口中使用的参数。

(3)持久层dao:一般是不校验的。

页面提交请求的参数,请求到controller方法中,使用validation进行校验。如果校验出错,将错误信息展示到页面。

(1) 需要的jar包(maven):

(2) 在SpringMVC配置文件中添加配置校验器

(3) 校验器注入到处理器适配器中

(4) 在pojo校验错误信息

(5) 在CustomValidationMessages.properties配置校验错误信息

(6) 捕获和显示校验错误信息

(7) 页面显示

在配置完成validation校验后,无法正确显示CustomValidationMessages.properties配置中的信息,显示为实体类中配置效验的路径。猜测可能没有去调用properties配置文件。

定义多个校验分组(其实是一个java接口),分组中定义有哪些规则

每个controller方法使用不同的校验分组

(1)校验分组

(2)在校验规则中添加分组

(3)在controller方法使用指定分组的校验

(1)springmvc默认对pojo数据进行回显

pojo数据传入controller方法后,springmvc自动将pojo数据放到request域,key等于pojo类型(首字母小写)

使用@ModelAttribute指定pojo回显到页面request中的key

(2)@ModelAttribute还可以将方法的返回值传到页面

controller

jsp

(3)最简单的数据回显model(不使用@ModelAttribute)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11639264.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存