JSP中MVC模式的Demo
来源:互联网 发布:照片视频制作软件下载 编辑:程序博客网 时间:2024/05/16 18:01
MVC模式是什么,我就不废话了。。。直接说它的流程吧。
在login.jsp中定义了一个表单:<form action="Controller" name="loginForm" method="post" >
这样,就完成了从V层进入到C层。
Controller.java是个Servlet,要继承HttpServlet.首先要在配置文件中把它布置上哈,代码就是:
String id = request.getParameter("userId");
String name = request.getParameter("userName");
////使用模型(UserBeanDL),完成对用户的处理
///1.创建一个UserBean处理对象
UserBeanDL ubd = new UserBeanDL();
try{
int iId = Integer.parseInt(id);
if(ubd.checkUser(iId, name)){
System.out.println("通过Servlet完成控制");
///在跳转到wel.jsp页面时,就把要显示的数据准备好
ArrayList al = ubd.getUsersByPage(1);
int pageCount = ubd.getPageCount();
////将参数传递,此处传递一个ArrayList
request.setAttribute("result", al);
////注意:后面的参数是对象,要把int-->对象 (String)
request.setAttribute("pageCount", pageCount + "");
///转向
//response.sendRedirect("welcom.jsp");
///因为sendRedirect方法效率不高,所以软件公司中常用转发的方法
///这种方法效率,同时request中的对象还可以在下一页面中使用。
request.getRequestDispatcher("threedown/welcome.jsp").forward(request, response);
}else{
request.getRequestDispatcher("three/login.jsp").forward(request, response);
}
……
在UserBean.中,全是对数据库的操作:
public class UserBeanDL {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
private int pageCount = 0;
int pageSize = 3;
int rowCount = 0;
////关闭资源
////得到总行数
/////得到pageCount
//////增加(over)
//////修改(over)
//////删除
//////查找
////验证用户是否存在
UserBean.java是个实体类。
Welcome.jsp中:
<tr><td>ID</td><td>姓名</td><td>年龄</td></tr>
<%
int pageNow = 1;
String szPageNow = request.getParameter("pageNow");
if(szPageNow != null)
{
pageNow = Integer.parseInt(szPageNow);
}
ArrayList al = (ArrayList)request.getAttribute("result");
for(int i=0;i<al.size();i++)
{
UserBean ub = (UserBean)al.get(i);
%>
<tr><td><%=ub.getId()%></td>
<td><%=ub.getName()%></td>
<td><%=ub.getAge()%></td></tr>
<%
}
////从object --> string --int
int pageCount = Integer.parseInt((String)request.getAttribute("pageCount")) ;
//int pageCount = ubd.getPageCount();
for(int i=1;i<pageCount;i++){
%>
<a href=UserDL?pageNow=<%=i%>><<%=i%>></a>
<%
}
%>
</table>
UserDL.java是个专门用于分页的Servlet
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("通过Servlet分页");
String s_pageNow = request.getParameter("pageNow");
UserBeanDL ubd = new UserBeanDL();
try{
int pageNow = Integer.parseInt(s_pageNow);
ArrayList al = ubd.getUsersByPage(pageNow);
int pageCount = ubd.getPageCount();
request.setAttribute("pageNow", pageNow);
request.setAttribute("result", al);
request.setAttribute("pageCount", pageCount + "");
request.getRequestDispatcher("threedown/welcome.jsp").forward(request, response);
}catch(Exception e){
e.printStackTrace();
}
}
- JSP中MVC模式的Demo
- JSP的MVC模式
- JSP的设计模式mvc
- 基于Servlet的MVC模式Demo
- JSP的开发模式之MVC模式
- JSP学习总结------MVC模式(JDDC 、Servlet 、Jsp的MVC)
- 解读AFNetworking中Demo的MVC
- 解读AFNetworking中Demo的MVC
- jsp mvc设计模式的登陆注册
- mvc模式jsp笔记
- JSP MVC模式
- JSP/Servlet MVC模式
- jsp 简易mvc模式
- MVC模式理解+小Demo
- 基于MVC开发模式的天气预报小Demo
- JSP的开发模式——MVC设计模式
- JSP的开发模式和设计模式(MVC)
- JSP的开发模式和设计模式(MVC)
- boost_1.47在VS2010下的安装
- VC 2010 发布
- 1.7、缺省适配器模式
- android入门
- Linux 下定时器的实现方式分析
- JSP中MVC模式的Demo
- 比较全的Domino常用服务器命令(包括邮件替换)
- 使用QtSdk为symbian操作系统编写程序
- VC 2010 MFC Ribbon 设计
- 感悟
- 如何查询postgreSQL 里面某个数据库中所有用户定义的数据表的名字
- 分析各家2440开发板的性价比(转自Gooogleman)
- C++项目中的extern "C" {}
- 写给在Linux/Ubuntu门外徘徊的少年们