`

Rose框架介绍

 
阅读更多
Rose框架

官网:https://code.google.com/p/paoding-rose/


1 .对rose框架的整体认识

1.1B/S web开发

 我们所做的web开发是基于HTTP的应用服务开发,主要由两部分组成:浏览器+服务端

 大致流程为:浏览器向服务端发送HTTP请求,获取服务器IP,建立TCP连接,发送请求

 服务器侦听请求,侦听到请求,建立起连接,处理然后返回响应消息 

 1.2Rose框架

 初始化:

Tomcat启动时,会读取配置文件,进行服务的初始化工作 
而对于rose,会进行两个主要的初始化工作:

一个是:对于各个要使用的Bean进行实例化。包括controller、dao等

 另一个是:构建匹配树。这是rose解析用户请求并进行匹配处理的基础 

rose框架里面包含的思想:

 资源封装:对底层资源的封装,开发者不用考虑servlet实现,doget\dopost,数据库连接等底层实现,可以更加专注于业务逻辑的分析和处理

 分层设计:rose框架本身就包含了分层的概念,资源封装,通过提供接口

       我们在开发的时候也应该注意分层的概念,合理设计。页面,controller,service,jade层间设计与关联

 匹配机制:rose匹配树,实际为所定义的controller URL树。客户请求及响应实为与相关的controller间的交互 

Rose运行机制:

Rose解析客户的请求地址,从匹配树中寻找匹配的controller

寻找到相匹配的controller,如若存在拦截器注解,则还会先进行拦截器的处理,然后再传给controller

如果在匹配树中无法再到相匹配的controller,则会返回404的错误 

 IOC、依赖注入概念:

基本概念:程序运行过程中,当需要用到相关的对象时,动态的注入该对象,来执行对象方法,改变对象属性。

具体怎么实例化这个对象,对象生命周期的管理等,均由框架来自动管理

 而Rose提供了非常便利的@ 注解使用方式,让开发者可以方便的使用相关的类及类方法 
 这里的IOC概念,我觉得其实是对java垃圾回收的延伸

因为有垃圾回收的特性,才能够使对象生命周期的自动管理得以实现

  

小结:Rose框架本身维护着一个主‘进程/线程’,在初始化阶段会实例化相关的对象。

然后运行过程通过对客户端请求地址的解析,调用相匹配的对象方法进行处理,而这部分的实现代码则由框架进行封装维护

开发者只需要根据业务开发实现相关功能的类即可(封装)

  

2   基于rose框架的开发

 2.1web开发------web服务端开发

     我们所开发的web服务主要是服务端的服务,其包括三个部分:

     Views:用户提交请求,同时呈现响应信息:jsp

    业务逻辑处理:controller、service  

    数据持久化:mysql、jade

  

Rose框架其实是一套规则,我们就是利用这套规则,来进行快速高效的web服务开发 
(1)controller bean的定义规则:

1需在controllers package下进行controller类的定义

2controller类都需要以controller为后缀

(2)数据持久化:

数据库的操作采用rose jade 
使用规则:

1定义数据库操作的DAO接口,并使用@Dao标注

2使用@SQL标注并定义相关的sql语句作为该注解的值

3定义相关的sql方法接口作为调用实体


与匹配相关的问题

rose在运行过程中,客户请求处理首要过程就是进行对请求地址的解析 
在开发中常出现匹配异常:

可以注意是否定义相对应的get 或 post的controller方法

是否定义与url相对应的controller或者方法 
开发过程:

通过使用@Path @Get @Post可以对controller类的url地址进行设置

@get @post则可以配置相关get post方法

注意参数获取的对应url地址


 2.2 controller的深入

对于交互,即在与页面端的数据传输中:

Controller是在方法中通过@Param 参数的方式来获取提交的数据,或者可以在方法中通过getParameter的方法来获取

页面端向后端传递数据的方式有两种:

1在映射地址上直接传递数据

2可以通过表单等方式传递到对应变量中,如果传递的是bean数据,页面传递的数据会自动封装到bean里

Controller要返回相关的数据,则通过Invocation变量进行传输

可以采用addModel和setAuttribute的方法


 Controller功能分析:

根据rose匹配运行的机制,我们知道,controller其实是直接与用户进行交互的

获取用户提交的数据,同时返回响应的信息

因此,在设计controller bean的时候则要符合业务逻辑处理,即controller间的职责需要明确 ,一个controller对应一个业务处理块 

Controller主要是获取页面提交数据,返回响应信息,作为一个信息的中转站

业务逻辑的处理可以由service层进行处理,并由controller进行调用


 定义各个业务逻辑处理的service类,具体的编写规则:

1定义service类接口

2定义service类的实现

3在applicationContext  XML文件配置service bean,包括名字,实现类地址

4在要运用的类bean上标注@Autowired注解,则rose框架会自动实例化注入该对象


other question

对于数据库的操作,要注意sql语句的设计

不要把业务逻辑的处理带到sql语句中

Sql语句要原子化,业务处理由负责业务逻辑处理的service层进行考虑
分享到:
评论

相关推荐

    rose框架使用Demo

    **Rose框架详解与使用Demo** Rose框架,全称为Paoding Rose,是由人人网和糯米网共同推出的开源Java Web开发框架,旨在提供高效的开发体验。它以其简洁的API设计、强大的功能以及良好的性能,在Java开发社区中获得...

    rose框架知识介绍

    ### Rose框架知识介绍 Rose框架是一款轻量级的Java Web应用框架,以其简洁高效的特点而受到开发者们的喜爱。本文将详细介绍Rose框架中的几个关键知识点,包括如何实现自定义的错误处理、使用拦截器等。 #### 错误...

    Rose框架例子(rose-example)

    **Rose框架例子(rose-example)** Rose框架是一个用于软件开发的高级框架,它提供了一种高效、可扩展的方式来构建应用程序。这个"Rose框架例子(rose-example)"是专门为那些想要了解和学习Rose框架的学生或开发者准备...

    rose框架——简单示例

    **Rose框架简介** Rose框架,作为一个专业的软件开发工具,它主要应用于系统建模和软件设计领域。这个框架提供了一种直观的方式来表示复杂的系统结构和业务流程,使得开发者和非技术人员可以更好地理解和交流软件...

    paoding rose 框架实例

    环境配置为maven3.1.1,tomcat6.0.41,jdk1.7,myeclipse10,mysql数据库。使用paoding rose框架,spring3,mybatis3;在dao层简单进行BaseDao设计;用VM实现页面显示。 在controller层实现了单条user数据的显示。

    人人网开源paoding-rose框架的jar包

    人人网和糯米网释出的开源web框架,很好用,怎么用可以参考

    开源web框架Rose开发初感

    在Rose框架的上下文中,"lib"可能包含了Rose框架的核心组件、依赖库或者其他支持类库,这些都对理解Rose框架的运作至关重要。 基于以上信息,我们可以推测Rose框架的使用涉及以下知识点: 1. **Web框架概念**:...

    RoseAPI文档

    Rose框架目前到网上不好收索到.这个可供学习Rose框架的友人参考.

    Rose 内部教程 PPT+视频

    教程将详细介绍如何创建新模型、添加元素、建立关系、生成代码以及导出文档等步骤。 **8. 视频教程** 视频部分会通过实际操作展示Rose的各项功能,使学习者能直观地了解每一步骤的操作方法,加深理解和记忆。这包括...

    Rational_Rose介绍

    ### Rational Rose 详细介绍 #### 一、Rational Rose 概览 Rational Rose 是一款用于分析与设计面向对象软件系统的强大工具,在业界享有极高的声誉,是目前最流行的可视化软件开发工具之一。它通过提供一系列的图形...

    SSH 框架的 ROSE建模 实例 入门适用

    压缩包中的《ROSE分析——JSF-Spring-Hibernate.pdf》可能详细介绍了如何使用ROSE工具进行SSH框架的建模过程,包括如何创建模型元素、定义关系、以及如何将这些模型转化为实际的Java代码。这份文档可能还会涵盖一些...

    paoding-rose, paoding-rose 提供最好用的Java Web应用整体性框架。.zip

    "paoding-rose" 是一个针对Java Web应用的开源框架,它致力于提供一套全面、高效的解决方案,旨在简化开发过程并提升应用性能。"最好用的Java Web应用整体性框架"这一描述表明,paoding-rose旨在为开发者提供一套...

    rose的简单deno

    **Rose框架简介** Rose框架是用于构建Web应用的一个强大工具,尤其在JavaScript开发领域中,它为开发者提供了高效、简洁的API和结构化的方法来创建和管理项目。在这个"rose的简单deno"示例中,我们将深入理解Rose...

    paoding-rose备份

    由于描述中没有提供具体的信息,我将根据Paoding Rose的一般特性来详细介绍这个框架。 Paoding Rose的核心特性包括: 1. **URL映射**:Paoding Rose引入了一种强大的URL映射机制,允许开发者通过简洁的规则定义来...

    图书管理系统rose生成

    本实验报告旨在介绍图书管理系统的设计和实现,使用Rational Rose 2003对系统进行分析和设计。实验的主要目的是锻炼面向对象系统的分析和设计的能力,设计一个简单的图书管理系统。 一、 实验目的及要求 本实验的...

    rose

    标题“rose”可能指的是一个项目、工具或者框架的名称,但描述中提供的信息是空的,没有明确指出“rose”具体代表什么。然而,标签包括了“源码”和“工具”,这暗示“rose”可能是一个开源软件工具,且与代码相关。...

    paoding rose 一个完整的MVC的demo

    **Paoding Rose框架详解** Paoding Rose作为一个成熟的Java Web框架,它的核心功能包括: 1. **URL路由(Routing)**: Paoding Rose通过自定义的URL解析规则,使得URL更符合业务逻辑,同时也便于SEO(搜索引擎优化...

    paoding-rose-1.0.1.jar

    在Paoding Rose框架中,log4j的集成使得开发者在开发过程中能方便地追踪代码执行情况,调试问题,以及记录系统运行状态。 2. **上传下载功能**: Paoding Rose内包含了处理文件上传和下载的组件,这在构建Web应用时...

Global site tag (gtag.js) - Google Analytics