JavaWorkshop--(4)WEB系统设计篇
2008-05-01 06:29
489 查看
在这个练习里,我们用一个Servlet、一个Javabean和两个Jsp来实现一个基本的WEB系统框架。不涉及一些具体模式的说明。可以说是一个系统的小小的架构,说起架构不知道大家对架构的定义是怎么想的,架构等于高层设计嘛?有一个网站说架构等于组件和连接器,并定义了一种架构语言(ADL)。不过设计模式不同于架构,但是象MVC这样的模式来说可以算是一个小系统的架构吧。
这里系统的流程是这样的,当Servlet接受了一个Get请求的时候,创建一个Bean对象,把它存储在一个session里面,调用Get.jsp。当Servlet接受了一个Post请求的时候,它找到Bean对象的Session,然后显示一个Post.jsp。我们先来看一下Servelt的代码:
importjava.io.*;
importjava.util.*;
importjavax.servlet.*;
importjavax.servlet.http.*;
publicclassStaffServletextendsHttpServlet{
publicvoiddoGet(HttpServletRequestreq,HttpServletResponseres)
throwsIOException,ServletException
{
StaffBeanbean=newStaffBean();
bean.setID("10");
bean.setName("Sanders");
HttpSessionsession=req.getSession(true);
session.setAttribute("staffBean",bean);
ServletContextctxt=getServletContext();
RequestDispatcherrd=ctxt.getRequestDispatcher("/jsp/Get.jsp");
if(rd!=null){
rd.forward(req,res);
}
}
publicvoiddoPost(HttpServletRequestreq,HttpServletResponseres)
throwsIOException,ServletException
{
HttpSessionsession=req.getSession(true);
StaffBeanbean=(StaffBean)session.getAttribute("staffBean");
bean.setDept("SERVICEDIV.");
bean.setJob("ITS");
bean.setYears("7");
ServletContextctxt=getServletContext();
RequestDispatcherrd=ctxt.getRequestDispatcher("/jsp/Post.jsp");
if(rd!=null){
rd.forward(req,res);
}
}
}
这里用了forward这个方法来吧请求forward到另外的资源中,这里我们用了jsp文件。
然后定义两个jsp文件
get.jsp
EmployeeID
Name
post.jsp
EmployeeID
Name
Department
JobTitle
YearsofContinuousEmployment
这里是java文件:
publicclassStaffBean{
privateStringID;
privateStringname;
privateStringdept;
privateStringjob;
privateStringyears;
publicStaffBean(){
}
publicStringgetID(){
returnID;
}
publicvoidsetID(Stringstr){
ID=str;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringstr){
name=str;
}
publicStringgetDept(){
returndept;
}
publicvoidsetDept(Stringstr){
dept=str;
}
publicStringgetJob(){
returnjob;
}
publicvoidsetJob(Stringstr){
job=str;
}
publicStringgetYears(){
returnyears;
}
publicvoidsetYears(Stringstr){
years=str;
}
}
这个例子比较简单,不过本人觉得对于刚刚起步学javaWEB开发的人有一定的参考价值,没有数据库,直接把四个文件放到tomcat相应的目录中就可以执行了。虽然在页面上永远看到的是一个Servlet,其他的文件都是用这个servlet来调用。Jsp的页面页比较整洁,没有过多的<%%>代码和html混合在一起。一个对象的所有属性的设置和取出均用Databean的各个方法来实现。
这里系统的流程是这样的,当Servlet接受了一个Get请求的时候,创建一个Bean对象,把它存储在一个session里面,调用Get.jsp。当Servlet接受了一个Post请求的时候,它找到Bean对象的Session,然后显示一个Post.jsp。我们先来看一下Servelt的代码:
importjava.io.*;
importjava.util.*;
importjavax.servlet.*;
importjavax.servlet.http.*;
publicclassStaffServletextendsHttpServlet{
publicvoiddoGet(HttpServletRequestreq,HttpServletResponseres)
throwsIOException,ServletException
{
StaffBeanbean=newStaffBean();
bean.setID("10");
bean.setName("Sanders");
HttpSessionsession=req.getSession(true);
session.setAttribute("staffBean",bean);
ServletContextctxt=getServletContext();
RequestDispatcherrd=ctxt.getRequestDispatcher("/jsp/Get.jsp");
if(rd!=null){
rd.forward(req,res);
}
}
publicvoiddoPost(HttpServletRequestreq,HttpServletResponseres)
throwsIOException,ServletException
{
HttpSessionsession=req.getSession(true);
StaffBeanbean=(StaffBean)session.getAttribute("staffBean");
bean.setDept("SERVICEDIV.");
bean.setJob("ITS");
bean.setYears("7");
ServletContextctxt=getServletContext();
RequestDispatcherrd=ctxt.getRequestDispatcher("/jsp/Post.jsp");
if(rd!=null){
rd.forward(req,res);
}
}
}
这里用了forward这个方法来吧请求forward到另外的资源中,这里我们用了jsp文件。
然后定义两个jsp文件
get.jsp
EmployeeID
Name
post.jsp
EmployeeID
Name
Department
JobTitle
YearsofContinuousEmployment
这里是java文件:
publicclassStaffBean{
privateStringID;
privateStringname;
privateStringdept;
privateStringjob;
privateStringyears;
publicStaffBean(){
}
publicStringgetID(){
returnID;
}
publicvoidsetID(Stringstr){
ID=str;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringstr){
name=str;
}
publicStringgetDept(){
returndept;
}
publicvoidsetDept(Stringstr){
dept=str;
}
publicStringgetJob(){
returnjob;
}
publicvoidsetJob(Stringstr){
job=str;
}
publicStringgetYears(){
returnyears;
}
publicvoidsetYears(Stringstr){
years=str;
}
}
这个例子比较简单,不过本人觉得对于刚刚起步学javaWEB开发的人有一定的参考价值,没有数据库,直接把四个文件放到tomcat相应的目录中就可以执行了。虽然在页面上永远看到的是一个Servlet,其他的文件都是用这个servlet来调用。Jsp的页面页比较整洁,没有过多的<%%>代码和html混合在一起。一个对象的所有属性的设置和取出均用Databean的各个方法来实现。
相关文章推荐
- java web开发的毕业设计论文管理系统
- java web 项目 图书管理系统的设计与实现
- 【《深入解析Java Web技术内幕》学习思维导图】第11章 Tomcat的系统架构与设计模式
- java web 项目 图书管理系统的设计与实现
- JavaWeb项目开发案例精粹-第6章报价管理系统-001需求分析及设计
- 从零开始写javaweb框架笔记6-需求分析与系统设计
- JavaWeb项目开发案例精粹-第3章在线考试系统-001设计
- Java Web系统架构设计需要解决的几个问题
- javaweb 项目的系统权限管理,怎么设计?shiro简单了解
- Java高手真经.系统架构卷 : Java Web系统设计与架构 : UML建模+设计模式+面向服务架构
- JavaWeb项目开发案例精粹-第4章博客网站系统-001设计
- java web 权限管理系统设计与实现
- CMS内容管理系统开发- Java Web开发及发布实例(1)
- Java Web系统常用的第三方接口
- Javaweb-xml编程-考生成绩管理系统(1)
- 自己动手设计java web框架(一)-封装请求拦截器DispatchServlet
- 大数据,分布式,hadoop,java,高并发系统设计,高端培训视频,各种大神学习路线
- JavaWeb项目开发案例精粹-第2章投票系统-002配置文件及公共类
- Java Web系统常用的第三方接口
- JavaWeb课程设计_宿舍管理系统04