jsp设计模式(来之张孝祥,张老师的网站)

软件开发JSP基础与实例(张孝祥)源码 读者注意:这套视频语音讲解中引述的《软件开发课堂 - Java Web基础与案例开发详解》,即后来改名为《JSP基础与案例开发详解》一书的原稿,二者是同一本书。 01基础案例 02网页布局和修饰 03JDBC的应用 04Servlet的应用 05JSP的应用 06EL表达式 07自定义JSP标签 08JSP标准标签库 09使用技术浅析 10Log4j的应用 11JUint 12Ant的应用 13CVS的应用 14留言管理系统 15电子相册管理系统 16网上商店JpetStore 17传智博客BBS 立即下载

一直对张老师很是崇拜:所以不要再意我用您的东西

一:介绍
记得初学jsp的时候,总喜欢把他和asp,php去比较,也习惯于使用asp的开发模式去写jsp
后来才发现这真是很傻的做法,其实jsp一出了来就已经用MVC模式了。下面我就简要说说
jsp设计使用MVC来设计。

二:MVC介绍
MVC其实是模、视图、控制的缩写,也就是说在使用jsp时,有相应的文件去实现相应的操作
通常jsp只负责view也就是只负责显示页面。业务逻辑等有bean(ejb)去实现。下面讨论的是
不使用ejb的情况下实现。如果使用ejb,ejb负责M.C通常会由servlet去实现。或者使用struts.
struts的介绍你可是去http://jakarta.apache.org/struts去看。以后的文章中我会介绍。

三:设计思路
当你构建一个Application时。你必须考虑界面的问题,而界面修改是非常平常的。如果你在
jsp中实现所有的操作,一旦修改界面你麻烦大了。美工不懂jsp的,你必须自己去修改无数个
文件,头不要太大,而此时一般时间都很紧,使用MVC则可以减少你的一些麻烦。
在设计时候jsp只负责显示页面,也就是说jsp调用Bean(Struts,servlet)传过来的数据然后显示
而Bean(Struts,servlet)负责收集jsp需要的数据,用ArrayList(Arttibute)传给jsp。假如需要
提交表单,一般也直接提交给Struts,servlet,处理后以后再返回处理信息。
而其中相应的业务逻辑由Bean去实现。

四:Bean的设计
在我使用时候Bean通常有三类,分别在manager,entry,database目录下面。
manager下面的bean做商业逻辑
entry下的bean就是封装数据,其实就是每个数据库表对应会有一个bean。jsp得到的也全部是类。
database下的bean就是操作数据库,执行如insert,update,delete,load(查询一条记录),
batchload(查询多条记录)。
他们之间的关系是entry负责封装数据,作为database的调用参数,返回结果。
manager调用database处理的结果。manager和jsp通信。jsp得到的结果从manager来, jsp需要做
操作调用manager,即使是一个insert 在database存在这样的方法但在manager中你还是需要再封装
一次。这样做的目的是使结构尽量简单。database只负责操作数据库。manager只做逻辑(取相应的数据)
处理相应的逻辑,而entry则只把database取到的数据封装,或则把页面得到的参数封装,做为参数
传给相应的Bean.

五:设计实例
下面我把留言板作为实例来讨论:
entry/Guestbook.java(留言板对象)
database/GuestbookMap.java(更新,删除,修改留言板)
manager/GuestbookManager.java(处理所有的事务)
数据表结构(postgresql)
create sequence seq_guestbook increment 1 ;
/**序列号生成器**/
create table guestbook(
id int8 default nextval(′seq_guestbook′), /**主键**/
title varchar(64),/**主题**/
body text,/**内容**/
sayid int8,/**发言人**/
toid int8,/**接受人**/
saytime datetime default now(),/**留言时间**/
newflg smallint default 1/**是否查看过**/
);

Guestbook.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方法)
}

GuestbookMap.java
==============================
import Guestbook;
public class GuestbookMap(){
public GuestbookMap(){

}

public Guestbook load(int id){
//取到一条guestbook
}
//sqlstr 查询条件
//orderstr 排序条件
//rcdbegin 记录开始
//rcdend 记录结束
//
public ArrayList batchLoad(String sqlstr,String orderstr,int rcdbegin,int rcdend){
//ArrayList 里面封装了Guestbook
}

public void insert(Guestbook info){

}

public void update(Guestbook info){

}

public void delete(int id){
//取到一条guestbook
}

public int getRcdNums(String sqlstr){
//取记录条数
}
}

GuestbookManager.java
根据需要封装需要的方法,这部分才是你要写的
=============================
上面的方式entry,database的文件可以自动生成,这个工具我已经开发了,如果需要联系我。
你需要写的就是GuestbookManager里面的方法,你也许会觉得工作量比你所有的操作都在jsp中
大,但是这样结构非常清晰。你还需要的就是写一个数据库连接池,你所有的数据库操作都从一个地方
取,每一次都去连接数据库开销很大的。

六:技术优势
1:结构清晰
2:维护方便
3:保护代码比较好。
..........
七:结束语
我只是简单的介绍一下,具体的使用你需要在实际运用中积累,如果需要我的代码参看,联系我,
如果你觉得写的和狗屎,非常不好意思,浪费了你宝贵的时间

JSP的两种设计模式 Model1和Model2 ML文件解析 系统在工作时,需要配置文件信息(XML),但是,一般情况下,系统会在初始化的时候,一次将配置文件中的信息加载到内存中,用系统定义的配置对象来封装。所谓配置对象就是专门的用于封装配置信息的对象,它提供了比较方便的配置信息的查询机制。 设计配置文件XML(根据实际需要) ====================================== 立即下载

相关推荐

张孝祥java/jsp/web/j2ee面试题及技巧

张孝祥写的一些面试题,包括java,jsp,web,j2ee,javascript,html,等等方面的面试题和技巧,上次去4399笔试竟然基本上都给我在这里看到了。非常不错的一份面试题

JSP—MVC模式

MVC(Model-View-Controller)是一种软件设计模式,用于将应用程序分解为三个主要组成部分:模型、视图和控制器。它的目的是将应用程序的内部逻辑与用户界面分离,从而提高代码的可维护性和可扩展性。模型-视图-控制器(Model-View-Controller),简称为MVC。MVC已经成为软件设计者必须熟练使用的开发模式。理解、掌握在JSP程序设计中怎样具体体现MVC开发模式(其他语言的程序设计是非常类似的,仅仅是具体使用的API不同而已)。

Hu334039940的博客 1172

IDEA中Maven工具栏与命令执行全攻略:高效开发必备技巧

IntelliJ IDEA 作为强大的 Java 开发工具,其 Maven 功能独具优势。Maven 工具栏位于工作区右侧,图标功能丰富,涵盖项目导入、源码处理、依赖操作等。执行 Maven 命令有多种途径,Run Anything 窗口可输入或选目标执行,上下文菜单能右键运行目标,还可创建运行配置,指定命令参数后运行,为开发者高效管理 Maven 项目、便捷执行命令提供有力支持。

2301_82300081的博客 2027

MVC设计模式、JSP开发模式、三层架构&MVC练习学生信息管理系统

本文将介绍MVC设计模式、JSP开发模式、三层架构和MVC练习的基本概念,并演示如何使用这些技术来构建一个学生信息管理系统。该系统将包括数据库准备、查询、增加、删除、更新和分页功能。

互联说 1882

第十九届全国大学生智能车竞赛越野信标 硬件篇

全国大学生智能汽车竞赛,越野信标组

2301_77568650的博客 4115

上下文理解的AI增强方案:AI应用架构师的架构洞察

本文将从AI应用架构师的视角,深入探讨“上下文理解”的技术本质、核心挑战,以及一套可落地的上下文增强架构方案。我们会拆解上下文理解的底层需求,分析架构设计中的关键决策,并通过具体案例展示如何构建一个能“记住过去、理解现在、预测未来”的AI系统。三个维度:上下文的内容范围(短期/中期/长期)、数据类型(文本/结构化/多模态)、技术挑战(窗口限制/信息过载/跨会话一致性);三种架构模式:分层上下文存储(热/冷数据分离)、上下文路由(按需筛选)、动态压缩(适配模型窗口);四个关键组件。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 218

JSP的开发模式和设计模式(MVC)和实例---注册

JSP的开发模式和设计模式(MVC) 一 JSP的设计模式 1.MVC模式的概念: (1)在开发一个软件之前,必须先设计好其架构,一个基本的架构思想是将软件分成不同的模块,问题的关键就是如何划分模块。 (2)MVC(模型-视图-控制器)是20世纪80年代为Smalltalk-80编程语言发明的一种软件设计模式,它是一种分离业务逻辑与显示界面的设计方法。 (3)MVC的模型(Model)...

yaasshole 455

信创迁移实战:在银河麒麟V10-SP1上为Milvus离线部署Docker(附SP1专属避坑指南)

本文详细介绍了在银河麒麟V10-SP1 x86_64环境下离线部署Docker的全流程,特别针对该版本特有的自定义目录安装失败问题提供深度分析和解决方案。通过实战验证的步骤和避坑指南,帮助用户在信创项目中顺利完成Milvus等应用的容器化部署。

weixin_30687051的博客 531

JSP设计模式

一:介绍 记得初学jsp的时候,总喜欢把他和asp,php去比较,也习惯于使用asp的开发模式去写jsp 后来才发现这真是很傻的做法,其实jsp一出了来就已经用MVC模式了。下面我就简要说说 jsp设计使用MVC来设计。 二:MVC介绍 MVC其实是模、视图、控制的缩写,也就是说在使用jsp时,有相应的文件去实现相应的操作 通常jsp只负责view也就是只负责显示页面。业务逻辑等有bean(ejb

...... 732

opencv 常用函数总结

本文是一份OpenCV图像处理的常用函数总结,详细介绍了图像的读入、显示、保存、像素处理、图像属性获取、基础操作、阈值处理、图像平滑、形态学转换以及直方图处理等关键技术。文章通过代码示例和参数说明,帮助读者快速掌握OpenCV在图像处理领域的应用。

weixin_44063529的博客 1598

Windows系统3D Gaussian Splatting环境搭建全攻略:从零开始到成功运行

本文详细介绍了在Windows系统上搭建3D Gaussian Splatting环境的完整流程,包括CUDA 12.6安装、Anaconda环境配置、代码获取与依赖安装等关键步骤。针对Windows平台特有的环境配置问题,提供了实用的解决方案和常见错误排查方法,帮助开发者快速实现3D Gaussian Splatting的成功运行。

weixin_30832143的博客 452

第2课:JSP常用开发模式 (黄菊华Java网站开发系列教程)

JSP常用开发模式 单纯的JSP编程 在 JSP 编程模式下,通过应用 JSP 中的脚本标志,可以直接在 JSP 页面中实现各种功能。虽然这种模式很容易实现,但是,其缺点也非常明显。因为将大部分的 Java 代码与 HTML 代码混淆在一起,会给程序的维护和调试带来很多困难,而且难以理清完整的程序结构。 这就好比规划管理一个大型企业,如果将负责不同任务的所有员工都安排在一起工作,势必会造成公司秩序混乱、不易管理等许多隐患。所以说,单纯的 JSP 页面编程模式是无法应用到大型、中型的 JSP Web 应用程序

杭州.黄老师 890

【YOLO 系列】基于YOLOv8的工业零件表面缺陷智能检测系统【python源码+Pyqt5界面+数据集+训练代码】

本文详细介绍了如何基于YOLOv8深度学习模型和PyQt5图形界面,构建一套完整的工业零件表面缺陷智能检测系统。内容涵盖从环境搭建、数据集标注、模型训练调参到最终封装成可执行桌面软件的全流程,并深入解析了YOLOv8在工业视觉场景中的技术优势与落地优化策略。

ol78901234的博客 400

EasyUI——后台管理系统manager.jsp(自动获取后台写上来的数据,并塞进页面的指定位置,模块化编程,MVC)

首先,我引入了这些,为我下面的页面的搭建做准备 <link rel="stylesheet" type="text/css" href="jquery-easyui-1.3.3/themes/default/easyui.css"> <link rel="stylesheet" type="text/css" href="jquery-easyui-1.3.3/themes/ic...

qq_43918130的博客 999

深度学习12—VGG19实现

state_dict = load_state_dict_from_url(model_urls['vgg19'],model_dir='./model' ,progress=progress)#预训练模型地址。accuracy=((out.argmax(1)==label).sum()).clone().detach().cpu().numpy()#正确预测的总和比测试集的长度,即预测正确的精度。image=torch.reshape(image,(1,3,224,224))#四维图形,RGB三个通。

m0_55196097的博客 2441

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

JAVA学习 孙鑫 张孝祥 韩顺平 马士兵?哪个老师讲的更好些

本文转自: 如:尚学堂J2SE是最好的,而JSP则MLDN的最好,至于servlet,则数韩顺平老师录制的了!关于框架,struts尚学堂讲得很不错,传智的还行,但过于理论化,不建议初学者, hibernate其实尚学堂与传智都不怎么样,刚入门的会听不太懂,但传智的比尚学堂的讲得要好一点,看一下书,再听听视频就可以了,尚学堂的hibernate给人的感觉有点逻辑不清楚 ,spring 用

1万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

jsp设计模式

一:介绍 记得初学jsp的时候,总喜欢把他和asp,php去比较,也习惯于使用asp的开发模式去写jsp后来才发现这真是很傻的做法,其实jsp一出了来就已经用MVC模式了。下面我就简要说说jsp设计使用MVC来设计。 二:MVC(model,view,control)介绍 MVC其实是模型、视图、控制的缩写,也就是说在使用jsp时,有相应的文件去实现相应的操作通常jsp只负责view也就是只负责显

yuyu`s Blog 691

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

张孝祥Java面试宝典学习笔记---软件工程与设计模式(23种)

软件工程与设计模式(23种) 从四个方面进行阐述 1、UML方面      标准建模语言UML。用例图(usecase ),静态图(包括类图(class)、对象图(object)和包图(package)),行为图(action),交互图(顺序图((sequence),合作图(cooperate)),实现图。 2. 软件开发 3、j2ee常用的设计模式?说明工厂模式。

JobsLee' Blog 1219

jsp的设计模式

以用户登录为例子 1.动态页面要和数据库交互 用户->jsp–>jdbc查询–>jsp 可以把所有逻辑放在动态页面里面,不推荐这样做2.jsp——>servlet搜集user bean–>jdbc查询–>jsp 登录jsp负责展示登录界面,就是显示器 servlet负责用户验证操作,就是控制器 定义javaBean 用户实体类,就是组件 登录成功jsp负责展示用户成功登录之后的页面

小黄宝宝的专栏 402
上一篇: 别人的安全策略
下一篇: Java代码编写的30条建议(java中文站)
touchSea
博客等级 码龄20年 48粉丝 17原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值