人人范文网 范文大全

Web常用工具类总结

发布时间:2020-03-02 02:20:37 来源:范文大全 收藏本文 下载本文 手机版

表单后台验证;

package cn.kgli.utils;

import java.util.Enumeration; import java.util.UUID;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.beanutils.BeanUtils;

public cla WebUtils {

//把request对象中的请求参数封装到bean中

public static T request2Bean(HttpServletRequest request,Cla clazz){

try{

T bean = clazz.newInstance();

//username=aa paword=bb email=aa@sina.com

Enumeration e = request.getParameterNames();

while(e.hasMoreElements()){

String name = (String) e.nextElement(); //username=aaa paword=123

String value = request.getParameter(name);

BeanUtils.setProperty(bean, name, value);

}

return bean;

}catch (Exception e) {

throw new RuntimeException(e);

}

}

public static String makeId(){

//UUID

128 36位字符

return UUID.randomUUID().toString(); }

}

package cn.itcast.web.formbean;

import java.util.HashMap; import java.util.Map;

import org.apache.commons.beanutils.locale.converters.DateLocaleConverter;

public cla RegisterFormBean {

private String username; private String paword; private String paword2; private String email; private String birthday;

private Map errors = new HashMap();

public Map getErrors() {

return errors; } public void setErrors(Map errors) {

this.errors = errors; } public String getUsername() {

return username; } public void setUsername(String username) {

this.username = username; } public String getPaword() {

return paword; } public void setPaword(String paword) {

this.paword = paword; } public String getPaword2() {

return paword2; } public void setPaword2(String paword2) {

this.paword2 = paword2; } public String getEmail() {

return email; } public void setEmail(String email) {

this.email = email;

} public String getBirthday() { return birthday; } public void setBirthday(String birthday) { this.birthday = birthday; } /* private String username; 用户名不能为空,并且要是3-8的字符 abcdABcd private String paword; 密码不能为空,并且要是3-8的数字 private String paword2; 两次密码要一致

private String email;

可以为空,不为空要是一个合法的邮箱 private String birthday; 可以为空,不为空时,要是一个合法的日期

*

*/ public boolean validate(){

boolean isOk = true;

if(this.username==null || this.username.trim().equals(\"\") ){

isOk = false;

errors.put(\"username\", \"用户名不能为空!!\"); }else{

if(!this.username.matches(\"[a-zA-Z]{3,8}\")){

isOk = false;

errors.put(\"username\", \"用户名必须是3-8位的字母!!\");

} }

if(this.paword==null || this.paword.trim().equals(\"\")){

isOk = false;

errors.put(\"paword\", \"密码不能为空!!\"); }else{

if(!this.paword.matches(\"\\d{3,8}\")){

isOk = false;

errors.put(\"paword\", \"密码必须是3-8位的数字!!\");

} }

//private String paword2; 两次密码要一致

if(this.paword2!=null){

if(!this.paword2.equals(this.paword)){

isOk = false;

errors.put(\"paword2\", \"两次密码不一致!!\");

}

}

//private String email;

可以为空,不为空要是一个合法的邮箱

// flx_itcast@sina.com.cn

if(this.email!=null){

if(!this.email.matches(\"\\w+@\\w+(\\.\\w+)+\")){

isOk = false;

errors.put(\"email\", \"邮箱不是一个合法邮箱!!\");

}

}

//private String birthday; 可以为空,不为空时,要是一个合法的日期

if(this.birthday!=null){

try{

DateLocaleConverter conver = new DateLocaleConverter();

conver.convert(this.birthday);

}catch (Exception e) {

isOk = false;

errors.put(\"birthday\", \"生日必须要是一个日期!!\");

}

}

return isOk; }

}

package cn.itcast.web.controller;

import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.util.Date;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.ConvertUtils; import org.apache.commons.beanutils.locale.converters.DateLocaleConverter;

import cn.itcast.domain.User; import cn.itcast.exception.UserExistException; import cn.itcast.service.BusineService; import cn.itcast.service.impl.BusineServiceImpl; import cn.itcast.utils.WebUtils; import cn.itcast.web.formbean.RegisterFormBean;

public cla RegisterServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

RegisterFormBean formbean = WebUtils.request2Bean(request, RegisterFormBean.cla);

//表单校验

if(formbean.validate()==false){

request.setAttribute(\"formbean\", formbean);

request.getRequestDispatcher(\"/WEB-INF/jsp/register.jsp\").forward(request,response);

return;

}

//把表单的数据填充到javabean中

User user = new User();

try {

//注册字符串到日期的转换器

ConvertUtils.register(new DateLocaleConverter(), Date.cla);

BeanUtils.copyProperties(user, formbean);

user.setId(WebUtils.makeId());

BusineService service = new BusineServiceImpl();

service.registerUser(user);

request.setAttribute(\"meage\", \"注册成功!!\");

request.getRequestDispatcher(\"/meage.jsp\").forward(request, response);

}catch (UserExistException e) {

formbean.getErrors().put(\"username\", \"注册用户已存在!!\");

request.setAttribute(\"formbean\", formbean);

request.getRequestDispatcher(\"/WEB-INF/jsp/register.jsp\").forward(request, response);

} catch (Exception e) {

e.printStackTrace(); //在后台记录异常

request.setAttribute(\"meage\", \"对不起,注册失败!!\");

request.getRequestDispatcher(\"/meage.jsp\").forward(request, response);

}

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doGet(request, response); }

}

过滤器解决中文乱码

package cn.itcast.web.filter;

import java.io.IOException; import java.io.UnsupportedEncodingException;

import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; import javax.servlet.http.HttpServletResponse;

public cla CharacterEncodingFilter implements Filter {

public void doFilter(ServletRequest req, ServletResponse resp,

FilterChain chain) throws IOException, ServletException {

HttpServletRequest request = (HttpServletRequest) req;

HttpServletResponse response = (HttpServletResponse) resp;

request.setCharacterEncoding(\"UTF-8\");

response.setCharacterEncoding(\"UTF-8\");

response.setContentType(\"text/html;charset=UTF-8\");

chain.doFilter(new MyRequest(request), response);

}

public void init(FilterConfig filterConfig) throws ServletException {

// TODO Auto-generated method stub

}

public void destroy() {

// TODO Auto-generated method stub

} }

cla MyRequest extends HttpServletRequestWrapper{ private HttpServletRequest request; public MyRequest(HttpServletRequest request) {

super(request);

this.request = request;

} @Override public String getParameter(String name) {

String value = this.request.getParameter(name);

if(value==null){

return null;

}

if(!this.request.getMethod().equalsIgnoreCase(\"get\")){

return value;

}

try {

value = new String(value.getBytes(\"iso8859-1\"),\"UTF-8\");

} catch (UnsupportedEncodingException e) {

throw new RuntimeException(e);

}

return value; }

}

分页前端

<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"UTF-8\"%> <%@taglib uri=\"http://java.sun.com/jsp/jstl/core\" prefix=\"c\"%>

显示所有书籍

图书信息

图书名称

作者

价格

图片

描述

操作

${book.name }

${book.author }

${book.price }

查看图片

${book.description }

修改

删除

当前第[${page.pagenum }]页    

[${pagenum }]

   

总共[${page.totalpage }]页,总[${page.totalrecord }]纪录

Web测试工具小结

web页面测试控件类

(总结)Web性能压力测试工具之ApacheBench(ab)详解

Web课程总结

Web课程设计总结

web试用期总结

web 算法总结

WEB框架总结

web期末考试总结

WEB测试总结

Web常用工具类总结
《Web常用工具类总结.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档