反射的使用
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String action = req.getParameter("action");
try {
// 获取action业务鉴别字符串,获取相应的业务方法反射对象
Method method = this.getClass().getDeclaredMethod(action,
HttpServletRequest.class, HttpServletResponse.class);
method.invoke(this, req, resp);
} catch (Exception e) {
e.printStackTrace();
}
}
BeanUtils的使用
BeanUtils工具类,它可以一次性把所有的请求的参数注入到JavaBean中。
BeanUtils工具类,经常用于把Map中的值注入JavaBean中,或者是对属性值的拷贝操作。
BeanUtils他不是jdk的类,是第三方工具类。
需要导入:commons-beanutils-1.8.0.jar 和 commons-logging-1.1.1.jar
WebUtils工具类
public class WebUtils {
/**
* 把map中的值注入到对应的JavaBean中
*
* @param value
* @param bean
*/
public static <T> T copyParamToBean(Map value, T bean) {
try {
/**
* 把所有请求的参数都注入user对象中
*/
BeanUtils.populate(bean, value);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
return bean;
}
}
MVC概念
- MVC全称:Model模型、View视图、Controller控制器。
- MVC最早出现在JavaEE三层结构中的web层,它可以有效的直到Web层的代码如何有效分离,单独工作。
- View视图:只负责数据和界面的显示,不接受任何域显示无关的代码,便于程序员和美工的分工合作——JSP/HTML
- Controller控制器:只负责接收请求,调用业务层的代码处理请求,然后派发页面,是一个“调度者”的角色——Servlet。转到某个页面。或者是重定向到某个页面。
- Model模型:将与业务逻辑相关的数据封装为具体的JavaBean类,其中不参杂任何与数据处理相关的代码——JavaBean.domain/entity/pojo
- MVC 是一种思想:理念是将软件代码拆分成为组件,单独开发,组合使用(目的还是为了降低耦合度)。