CDI进阶第三步 CDI验证器
2016-01-11 14:32
218 查看
CDI进阶第三步 验证器
验证的需求在实际的应用开发中经常用到,比如对EMAIL进行验证,对手机号码进行验证等等。
我这里用一个简单的DEMO来讲下怎样使用J2EE的验证技术。
J2EE的验证技术很通用,不止在CDI可以用,而且在EJB,JPA都可以使用。
为了简单起见,我们先使用J2EE内建的注解来进行验证。
先写个简单的CDI BEAN。
package cdivalidate;
import javax.enterprise.context.RequestScoped;
import javax.validation.constraints.Max;
@RequestScoped
public class HelloBean {
private int num;
public void setNum(@Max(100) int num) {
this.num = num;
}
public CharSequence greeting() {
return "Hello," + num;
}
}
这里用到一个注解,javax.validation.constraints.Max,这是个内建注解,表示最大值为100,也就是超过100就不会报错。然后我们写个servlet来试一试。
package cdivalidate;
import java.io.IOException;
import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/hello.html")
public class HelloServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Inject
private HelloBean helloBean;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
int num = Integer.parseInt(req.getParameter("num"));
helloBean.setNum(num);
resp.getWriter().append(helloBean.greeting());
}
}
好了,servlet写完了。
开始在浏览器试一试。
可以看到当我在浏览器输入100时,很正常,输入101后,就报异常了,验证不通过。
验证的需求在实际的应用开发中经常用到,比如对EMAIL进行验证,对手机号码进行验证等等。
我这里用一个简单的DEMO来讲下怎样使用J2EE的验证技术。
J2EE的验证技术很通用,不止在CDI可以用,而且在EJB,JPA都可以使用。
为了简单起见,我们先使用J2EE内建的注解来进行验证。
先写个简单的CDI BEAN。
package cdivalidate;
import javax.enterprise.context.RequestScoped;
import javax.validation.constraints.Max;
@RequestScoped
public class HelloBean {
private int num;
public void setNum(@Max(100) int num) {
this.num = num;
}
public CharSequence greeting() {
return "Hello," + num;
}
}
这里用到一个注解,javax.validation.constraints.Max,这是个内建注解,表示最大值为100,也就是超过100就不会报错。然后我们写个servlet来试一试。
package cdivalidate;
import java.io.IOException;
import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/hello.html")
public class HelloServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Inject
private HelloBean helloBean;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
int num = Integer.parseInt(req.getParameter("num"));
helloBean.setNum(num);
resp.getWriter().append(helloBean.greeting());
}
}
好了,servlet写完了。
开始在浏览器试一试。
可以看到当我在浏览器输入100时,很正常,输入101后,就报异常了,验证不通过。
相关文章推荐
- ajax 点击加载更多,出现后面的内容,一次加载十条内容
- Dubbo安装部署
- 写代码中遇到的奇异的事件--------------间断更新中
- gdbserver调试工具移植到ARM Linux教程
- Android studio报错Plugin is too old 解决方案
- FTP,FTPS,FTPS与防火墙
- Python进阶之路---1.3python环境搭建
- js动画--链式运动
- Shell标准输出、标准错误 >/dev/null 2>&1
- crontab
- const限定符(一)
- jsp页面中动态添加上传输入项注意的问题:“添加上传文件”按钮的name属性值不能和onclick属性的值相同!!!
- Debian for armel 进展情况
- Java语法基础(三)
- 跨平台APP----对Native/Hybrid/Web APP三种开发模式的分析(系列一)
- JDBC的批处理操作三种方式
- Java 基本数据类型
- (转)【ASP.NET开发】获取客户端IP地址 via C#
- 大数据量下高并发同步的讲解
- oracle学习笔记 学习路线分析