Paoding Rose学习(一)

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                       

Paoding Rose学习(一)

本文包括一下几个内容

  • rose环境介绍
  • 一个简单的基于rose的web程序
  • web.xml介绍
  • 自动化部署

需要的环境

  • eclipse/Intellij IDE
  • Maven插件
  • Tomcat7.x

rose环境介绍

  rose是在Spring基础上构建的Web开发框架,它符合Servlet规范,且大量的采用约定优于配置的策略,比如Controller、DAO等,具体的描述可以查看陈老师的这篇文章: [ rose手册 ]

一个简单的基于rose的web程序

HelloController.java
/** *  这里的 注解@Path是url访问的主路径,即用户想访问这个Controller时,url类似于 : *  localhost:8080/packageName/rose_study/ * */@Path("rose_study")public class HelloController {    /**     * 我们可以从名称就可以看出,这个方法支持post和get的访问,其中的helloworld就是url的子路径,     * 如果需要访问到这个方法,那么url就好像这样:     * localhost:8080/packageName/rose_study/helloworld     * */    @Get("helloworld")    @Post("helloworld")    public String helloWorld(Invocation inv) {        return "@Hello, world. This is the first rose app";    }}
  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

注:

  • HelloController.java,就像前面说的约定优于配置,Rose中规定,所有的Controller都必须要以Controller结尾
  • @Get(“helloworld”) @Post(“helloworld”),helloWorld方法同时支持 get、post访问,但是只需要用注解去声明,是不是比Spring中做的更加优雅(Spring实现Get方法:@RequestMapping(value = “/helloworld”, method = RequestMethod.GET))
  • Invocation inv 这个需要作为函数的参数,是由容器传递进来的,我们可以用它来传递数据给页面,当然也可以用它从请求端获取参数
  • @Hello, world. This is the first rose app,这是函数的返回值,也就是url的返回值,rose中的约定是这样:
               
url返回形式
@String会在页面上看到一个字符串
@json + String会在页面上看到一个json类型的字符串
String返回自定义的页面

 这个文件需要的jar包依赖配置在pom文件中,如下:

    <dependency>        <groupId>com.54chen</groupId>        <artifactId>paoding-rose</artifactId>        <version>1.0</version>    </dependency>    <dependency>        <groupId>com.54chen</groupId>        <artifactId>paoding-rose-scanning</artifactId>        <version>1.0</version>    </dependency>
  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

web.xml介绍

  如果我们在程序中没有配置其他的过滤器,那么只需要在web.xml文件中添加如下的过滤器   :

    <filter>        <filter-name>roseFilter</filter-name>        <filter-class>net.paoding.rose.RoseFilter</filter-class>  </filter>    <filter-mapping>        <filter-name>roseFilter</filter-name>        <url-pattern>/*</url-pattern>        <dispatcher>REQUEST</dispatcher>        <dispatcher>FORWARD</dispatcher>        <dispatcher>INCLUDE</dispatcher>  </filter-mapping>
  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

  如果在程序中需要配置其他的过滤器,那么一定要在roseFilter之前。

自动化部署

  写好web程序之后当然需要部署下,然后用正确的url去访问它,查看结果是不是自己想要的,对于本例来说,应该会返回一个字符串。
  这里我利用Maven提供的插件对web程序实现自动化部署,注意,本例中tomcat版本是7.0.64,不过对于7.x版本都是支持的,Tomcat6.x 配置不会比7多,所以,也是支持的,Tomcat8还没用过,不知道支不支持。
  实现自动化部署需要这样5步操作:

  • tomcat-users.xml
    在tomcat的conf中找到tomcat-users.xml,在其中添加:

        <tomcat-users>        <role rolename="manager-gui"/>        <role rolename="manager-script"/>        <role rolename="manager-jmx"/>        <role rolename="manager-status"/>        <user username="username" password="password" roles="manager-gui,manager-script,manager-jmx,manager-status"/>    </tomcat-users>
        
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    这里为了方便我个人记忆书写,用户名直接配置username,密码配置password

  • 验证上述配置是否成功
    在浏览器中输入: http://localhost:8080/manager/,写入用户名和密码查看是否能登陆成功
    注: 每次修改完tomcat的配置后都需要重启tomcat服务

  • settings.xml
    进入到/home/mi/.m2中,找到settings.xml,加入:
    这个文件需要的jar包依赖配置在pom文件中,如下:

        <server>       <id>local_server</id>       <username>username</username>       <password>password</password>    </server>
        
        
    • 1
    • 2
    • 3
    • 4
    • 5

    注: 这样,maven就可以用这个身份来跟tomcat服务器进行沟通

  • pom文件
    在工程的pom文件中加入:
      这个文件需要的jar包依赖配置在pom文件中,如下:

    <plugin>    <groupId>org.apache.tomcat.maven</groupId>    <artifactId>tomcat7-maven-plugin</artifactId>    <version>2.1</version>    <configuration>        <server>local_server</server>        <url>http://localhost:8080/manager/text</url>        <path>/${project.build.finalName}</path>        <update>true</update>        <username>username</username>        <password>password</password>    </configuration></plugin>
        
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    注:true 如果不加这个,那么重复部署就会出现文件已经存在的异常

  • 自动部署
    执行命令:mvn -U clean package tomcat7:deploy

如果你按照上面的5步执行完之后,你就会在tomcat的webapps目录下找到你的war包了(需要配置pom文件,指明打包类型和打包插件)

  这篇文章简单的介绍了Rose环境开发并部署web应用程序的过程,内容比较简单,在以后的笔记中会介绍其他的Rose技术。

           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
这里写图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值