hibenate配置文件定义datasoruce和sessionFactory
MVC模型层:javaBean 和ActionForm
SSH中提供依赖注入的是Srping
创建Crieria
Crieria c = session.createCriteria(User.class)
bean用来操作和访问JavaBean
单利模式:构造函数设置成private
DWR框架:封装Ajax,核心配置文件是dwr.xml
java===》js---》JavaScript
spring通过hiberanteTemplate简化Hibernian操作
封装事务
Java执行 Javac编译
spring通过delegateingActionProxy管理Struts的action
lang,io ,util,text ,sql,math,awt
XSL规定XML的样式
模型 视图 控制
数据层,表示层,逻辑层
LIst Set Map
set+map==colllecion
数组不是集合
采用SSH架构、Struts用来控制流程、Spring用于面向切面编程、Hibernate负责与数据库作逻辑、采用MVC模式。
Struts作为控制器,Spring作为业务层,Hibernate作为数据持久层
采用Hibernate作为持久层技术的最大的好处在于:可以完全以面向对象的方式进行系统分析、系统设计。
由Spring充当DAO工厂时,无须程序员自己实现工厂模式,只需要将DAO组件配置在Spring容器中,由ApplicationContext负责管理DAO组件的创建即可。借助于Spring提供的依赖注入,其他组件甚至不用访问工厂,一样可以直接使用DAO实例
Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。
Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。
表现层是传统的JSP技术
中间层采用的是流行的Spring+Hibernate,为了将控制层与业务逻辑层分离Struts的原理
Jsp - ActionFrom - Action - Hibernate - DB
DB - Hibernate - Action - ActionFrom
其实Jsp是先到ActionFrom然后才到Action的
struts是一个mvc的实现。
数据在jsp中提交,通过formbean绑定到form,对应的action从form中获取实体对象,通过action的execute方法或action中自定义的方法(继承dispatichaction)来执行。
action和form在struts_config.xml定义,struts通过读取该配置文件来获得对应的action和form
struts是基于servlet的实现
基本上就这样了
hibernate 的工作原理:实现了jdbc的封装,把对关系数据库操作转化为对对象的操作,简化了对数据库的操作
spring的工作原理:IOC(控制反转)把自己定义好的类交给系统来控制。当我们需要一个类时,spring会帮我们自动new好一个,降低了系统的耦合度。
有不足之处,spring也不是帮我们去new的,因为new这个东西实在是不好,spring是通过反射的机制帮助我们实现的,建议你去看看java的反射和动态代理,这个对你spring乃至以后的学习都是非常有用的!
spring是一个非常优秀的框架,他的官方强烈推荐使用面向接口编程,非常好的思想!方便以后程序的扩展!
Spring的基本原理是AOP(面向方面编程)和Ioc(依赖注入
MVC(Model/View/Controller)模式是国外用得比较多的一种设计模式,好象最早是在Smaltalk中出现。MVC包括三类对象。Model是应用对象,View是它在屏幕上的表示,Controller定义用户界面对用户输入的响应方式。
模型-视图-控制器(MVC)是80年代Smalltalk-80出现的一种软件设计模式,现在已经被广泛的使用。
1、模型(Model)
模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.
2、视图(View)
视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。
3、控制器(controller)
控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。)。
一、MVC设计思想
MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
分享到:
相关推荐
### JAVA杂谈:深入探索Java的核心机制与实践 #### 动态加载机制解析 Java的动态加载机制是其面向对象编程(OOP)理念的核心体现之一,它使得Java能够在运行时根据需要加载类,而非在程序启动之初加载所有类。这种...
### Java杂谈——一个计算机专业学生几年的编程经验汇总谈 #### 一、关于动态加载机制 在Java中,动态加载机制是实现高效资源管理的关键之一。它允许Java虚拟机(JVM)根据需要加载类,而不是一次性加载所有的类。...
Java编程语言是计算机科学中的一个重要组成部分,尤其对于计算机专业的学生来说,掌握Java的基础和高级概念至关重要。本文主要围绕Java的一些核心概念进行讨论,旨在帮助读者更好地理解和应用Java。 首先,我们来看...
在本文中,作者分享了作为一名计算机专业学生的编程经验,主要关注Java语言。文章分为三个部分,分别讨论了Java的动态加载机制、查找class文件的原理以及JDK和JRE的区别。 1. 动态加载机制: Java的动态加载机制...
Java学习杂谈系列涵盖了许多关于Java编程的基础概念和机制,以下是对这些知识点的详细解读: 1. **动态加载机制**: 动态加载机制是Java语言的一个关键特性,它使得程序在运行时才能确定哪些类需要加载。当你声明...
### Java学习杂谈:深入解析Java的动态加载机制、类搜索原理及JDK与JRE的区别 #### 动态加载机制解析 Java的学习者往往在掌握面向对象编程(OOP)概念时,会遇到“动态加载机制”这一关键点。相较于C++中面向过程...
键字)用于声明变量、方法或类,表示不可变或最终...以上是Java面试中常见的问题及答案,涵盖了Java的基础语法、面向对象、集合、多线程、异常处理等多个方面。掌握这些知识点对于成为一名合格的Java开发者至关重要。
例如,Python有PEP 8,Java有Google Java Style Guide,这些都是值得遵循的编码规范。 最后,项目管理在大型项目中扮演着重要角色。了解敏捷开发理念,如Scrum或Kanban,可以帮助团队有效地组织和管理任务。同时,...
.31 1.6 JAVA面试题解惑系列(六)——字符串(String)杂谈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 1.7 JAVA面试题解惑系列(七)——日期和时间的处理 . . . . . . . . . . . ....
[学习资料] 09年Java认证考试:JFreeChart做题杂谈 [学习资料] 09年Java认证考试:struts2.0的标签库(简介) [考试试题] 09年Java认证考试:5道JAVA题 [考试试题] 09年Java认证考试:传递引用的经典 [学习资料] 09...
《Java陈国君(第二版)课件》是一本备受推崇的Java入门教材,由资深Java专家陈国君精心编著,旨在帮助初学者系统、全面地掌握Java编程技术。这本书以深入浅出的方式介绍了Java的核心概念和实战技巧,对于想要踏入...
**1.6 JAVA面试题解惑系列(六)——字符串(String)杂谈** - **知识点**:深入探讨字符串处理技术,包括字符串拼接、比较、格式化等常见操作的内部实现,以及性能优化建议。 **1.7 JAVA面试题解惑系列(七)——...
来自网络,主要包括以下内容:1、类初始化的顺序;...6.String杂谈;7.日期与时间的处理;8.基本类型总结;9.继承,多态,重载,重写;10.多线程;11.运算符总结。 适合将要笔试面试Java的朋友参考。
Java中的字符串(String)是编程面试中的热门话题,其特性与操作是面试官常常用来考察候选人基础知识的手段。本文将深入探讨String对象的一些关键知识点。 首先,我们要了解`String`类的`length()`方法。这个方法返回...
Redisson是基于Redis的Java客户端,它提供了一整套高级特性和功能,如分布式的Map、Set、List等数据结构。通过Redisson,我们可以将传统的Web项目分布式化,实现数据的高可用性和高性能。例如,利用Redis进行会话...