jsp设计模式---MVC模式
一:介绍
以前自己是写asp和php代码的,后来为了赶上时代的步伐吧.我开始涉足jsp.
但是在刚刚开始写的时候,总是喜欢拿jsp和asp对比着来写程序.后来发现这样真的很笨.而且这样写jsp代码不如就写asp好了,根本就体现不出jsp和java的强大.当然这个就是我今天要和大家讨论的在jsp中实现MVC三层模式.
二:什么是MVC
MVC是MODEL_VIEW_CONTROL的缩写。MODEL_VIEW_CONTROL是软件设计的典型结构。在这种设计结构下,一个应用被分为三个部分:model,view和control,每个部分负责不同的功能。model是指应用程序的数据,以及对这些数据的操作;view是指用户界面;control负责用户界面和程序数据之间的同步,也就是完成两个方向的动作:一、在根据用户界面(view)的操作完成对程序数据(model)的更新,二、将程序数据(model)的改变及时反应到用户界面(view)上。
三:设计思路
当你构建一个网站时。你必须考虑界面的问题,而界面修改是非常平常的。如果你在jsp中实现所有的操作,一旦修改界面你麻烦大了。美工不懂jsp的,你必须自己去修改无数个文件,头不要太大,而此时一般时间都很紧,使用MVC则可以减少你的一些麻烦。
在设计时候jsp只负责显示页面,也就是说jsp调用Bean(Struts,servlet)传过来的数据然后显示而Bean(Struts,servlet)负责收集jsp需要的数据,用ArrayList(Arttibute)传给jsp。假如需要提交表单,一般也直接提交给Struts,servlet,处理后以后再返回处理信息。而其中相应的业务逻辑由Bean去实现。
四:Bean的设计
我一般在设计Bean的时候有两个目录:
比如说文章系统就有:
com.Guessbook.business
和
com.Guessbook.db
这两个文件夹(包)
business下放业务逻辑和封装数据
db下放操作数据库和数据库连接程序(当然我没有用数据池的情况下,建议使用存储过程)
五:设计实例
不知道为什么所有写设计实例和入门程序的都喜欢用留言板,那我也用用吧.
business下
有GuestbookInfo.java(用于封装数据) GuestbookFactory.java(连接DBGuestbook.java) Guestbook.java(用于写抽象类、接口并实现业务逻辑)
db下
有DBGuestbook.java(所有对数据库的操作都在这个里面,比如:insert,update,select,delete,并将没有操作在一个方法内) 和 DBConnection.java(数据库连接文件)
数据表结构
create table guestbook(
id int8 default nextval('seq_guestbook'), /**主键**/
title varchar(),/**主题**/
body text,/**内容**/
sayid int8,/**发言人**/
toid int8,/**接受人**/
saytime datetime default now(),/**留言时间**/
newflg smallint default 1/**是否查看过**/
);
以下是部分代码,仅参考:
GuestbookInfo.java
=======================
import java.util.*;
public class Guestbook(){
private int id;
private String title;
private body title;
private int sayid;
private int sayid;
private Date saytime;
private short newflg;
public Guestbook(){
}
public int getId(){
return this.id;
}
public void setId(int _id){
this.id=_id;
}
........
(全是get/set方法)
}
GuestbookFactory.java
============================================
public class GuestbookFactory {
private static String className = "com.Guestbook.db.DBGuestbook";
public GuestbookFactory() {
}
public static Guestbook getInstance() {
try {
return () Class.forName(className).newInstance();
}
catch (Exception e) {
return null;
}
}
}
Guestbook.java
==============================
package com.Guestbook.business;
import java.util.List;
public abstract class Guestbook {
protected GuestbookInfo gi;
public Guestbook() {
}
public GuestbookInfo getGi() {
return gi;
}
public void setGi(GuestbookInfo gi) {
this.gi = gi;
}
public abstract List getGuestbookList();
\\下面全是你对数据库操作的方法
}
DBGuestbook.java
============================
package com.Guestbook.db;
import java.sql.*;
import java.util.List;
import java.util.ArrayList;
import com.Guestbook.business.*;
public class DBGuestbook extends Guestbook {
String sql;
public DBGuestbook() {
}
public List getGuestbookList(){
ResultSet rs = null;
List GuestbookList = new ArrayList();
DBConnection conn = new DBConnection();
try{
rs=conn.executeQuery("select * from guestbook");
while (rs.next()){
GuessbookInfo gi=new GuestbookInfo();
gi.setId(rs.getInt("id"));
\\实现其他的方法 略
GuestbookList.add(gi);
}
}
catch (Exception e) {
System.err.println(
"com.Guessbook.db.DBGuestbook.getGuestbookList()" + "出错");
e.printStackTrace();
}
finally {
conn.close();
return GuestbookList;
}
}
}
六:技术优势
1:结构清晰
2:维护方便
3:保护代码比较好。
分享到:
相关推荐
JSP设计模式.ppt
MVC(Model-View-Controller)设计模式是一种广泛应用在Web开发中的架构模式,尤其是在Java Web领域,如JSP(JavaServer Pages)项目中。这种模式将应用程序的业务逻辑、用户界面和数据访问分离开来,提高了代码的可...
10. **优化与性能**:学习如何通过缓存、减少不必要的数据库查询、使用高效的JSP设计模式等方法来提高网站的性能。 通过【jsp建设动态网站教程】的学习,你将逐步掌握以上知识,并能够运用到实际项目中,实现功能...
**JSP+Servlet+AJAX DAO设计模式详解** 在Web开发中,DAO(Data Access Object)设计模式是一种常用的设计模式,用于将业务逻辑与数据访问层进行解耦,提高代码的可维护性和可复用性。本篇我们将深入探讨如何在JSP...
JSP设计模式** 设计模式是软件工程中的最佳实践,JSP中常见的设计模式有: - **Model-View-Controller (MVC)**:将应用逻辑、数据和用户界面分离,提高代码的可维护性和复用性。 - **Front Controller**:所有请求...
3.Struts设计模式改变单一JSP设计模式,使程序员更为方便地开发和维护Java Web程序。 4.Struts的运行环境是什么?答:Struts必须运行在Tomcat或者其它支持JSP和Servlet的服务器。 5.运行Struts是否需要安装JDK? 答...
(基于JSP的完整java毕业设计)jsp MVC设计模式应用之游戏卡在线销售系统(论文)(附源码).rar(基于JSP的完整java毕业设计)jsp MVC设计模式应用之游戏卡在线销售系统(论文)(附源码).rar(基于JSP的完整java毕业...
2. **JSP设计模式**:如Front Controller和MVP(Model-View-Presenter)模式提升代码质量。 总之,**JSP最新开发技术手册**是Java Web开发者的宝贵资源,它涵盖了从基础概念到高级特性的全方位讲解,能够帮助开发者...
### 基于MVC设计模式构筑JSP/Servlet+EJB的Web应用 #### 概述 随着互联网的快速发展,Web应用已经从简单的静态内容发布转变为支持动态交互内容的处理,例如在线娱乐、电子商务等。为了满足这些变化,Web应用程序...
本主题将深入探讨如何在JSP中利用DAO设计模式实现分页功能。 分页技术在Web开发中至关重要,它允许用户浏览大量的数据而不会感到压力,提高了用户体验。在Java环境中,我们通常使用Servlet和JSP结合DAO模式来处理...
Jsp+JavaBean+Servlet(MVC设计模式)的寝室管理系统 Jsp+JavaBean+Servlet(MVC设计模式)的寝室管理系统 Jsp+JavaBean+Servlet(MVC设计模式)的寝室管理系统
本书深入探讨了Servlet和JSP的众多组件,其中包括自定义标签库(Custom Tag Libraries)、可用的新过滤器(filters)和流行的Servlet与JSP设计模式。自定义标签库能够帮助开发者创建可重用的代码组件,增强代码的...
JSP的两种设计模式,即Model1和Model2,是Web开发中常见的架构模式,主要用于分离展示层、控制层和业务逻辑层,提高代码的可维护性和可扩展性。 **JSP Model1模式**是最基础的JSP开发模式,主要特点是将业务逻辑、...
**JSP留言管理系统Ⅵ基于MVC+DAO设计模式详解** 在Web开发中,MVC(Model-View-Controller)设计模式和DAO(Data Access Object)设计模式是两种常见的架构模式,它们被广泛应用于构建可维护性和扩展性高的应用程序...
jsp _MVC模式_课程设计 有利于大家的开发技术
**JSP设计(第三版)** 本资源是关于JSP设计的第三版教材,主要针对Java Server Pages(JSP)技术进行深入讲解。JSP是一种动态网页开发技术,由Sun Microsystems(现已被Oracle公司收购)在1999年推出,用于构建基于...
JSP+javaBean+Servlet(MVC设计模式)品红网站项目 JSP+javaBean+Servlet(MVC设计模式)品红网站项目 JSP+javaBean+Servlet(MVC设计模式)品红网站项目
【课程设计JSP】是一个基于Java技术的项目实践,它主要涵盖了Java编程语言、JavaBean组件以及MVC(Model-View-Controller)设计模式。在这个课程设计中,学生将学习如何构建一个动态网页应用程序,利用JSP(Java...
jsp MVC设计模式应用之游戏卡在线销售系统(论文). 这两年太卷了,毕设和毕业 答辩竞争激烈,越写越卷,没有创新和亮点的毕业答辩基本达不到老师的要求。 现在学长为你们准备计算机毕设JSP项目,需要的自取哦。jsp ...
本实例主要针对初学者,旨在帮助理解JSP的基础概念、设计模式以及实际应用。 1. **JSP基本结构** JSP文件本质上是一个HTML文件,但可以插入Java代码片段。这些代码片段可以在服务器端运行,并将结果插入到HTML中。...