本菜鸡是一名弱弱的测试工程师,最近完成了一个支付相关的项目,项目工作中,需要建立一个模拟支付宝的网关,主要是接收请求并返回数据。作为一名没有丝毫开发经验的菜鸡,初期入门相当费劲,主要还是思维上的转变。由于本人技能水平有限,本篇文章只介绍如何启动服务,并接收请求,返回数据。希望可以给想要入门的童鞋一些帮助。

一、首先建立一个maven工程

二、web.xml文件内容

 <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<filter>
<filter-name>jfinal</filter-name>
<filter-class>com.jfinal.core.JFinalFilter</filter-class>
<init-param>
<param-name>configClass</param-name>
<param-value>demo.DemoConfig</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>jfinal</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>

三、在main中创建DemoConfig.java

继承JFinalConfig类,并实现其中的5个抽象方法。

 package com.test.common;

 import com.jfinal.config.Constants;
import com.jfinal.config.*; /**
* Created by wangx on 2015/8/23 0023.
*/
public class DemoConfig extends JFinalConfig {
public void configConstant(Constants me){ } public void configRoute(Routes me){ } public void configPlugin(Plugins me){ } public void configInterceptor(Interceptors me){ } public void configHandler(Handlers me){ }
}

四、创建一个controller类,接收并返回数据。这里类名为DemoController.java并继承Controller

 package com.test.controller;

 import com.jfinal.core.Controller;

 /**
* Created by wangx on 2015/8/23 0023.
*/
public class DemoController extends Controller{
public void index(){
renderText("学无止境!");
}
}

五、检查一下web.xml中的param-value值,应该与DemoConfig文件的路径一致,包括包名和类名。以下截图也包括了我的工程结构,可以更直观的理解各个类的关系。

六、在DemoConfig中增加路由和main函数,注意端口号不要与其他程序重复。这里设置为80,是http默认端口号

 package com.test.common;

 import com.jfinal.config.Constants;
import com.jfinal.config.*;
import com.jfinal.core.JFinal;
import com.test.controller.DemoController; /**
* Created by wangx on 2015/8/23 0023.
*/
public class DemoConfig extends JFinalConfig {
public void configConstant(Constants me){
me.setDevMode(true);
} public void configRoute(Routes me){
me.add("/", DemoController.class);
} public void configPlugin(Plugins me){} public void configInterceptor(Interceptors me){} public void configHandler(Handlers me){} public static void main(String[] args) throws Exception {
JFinal.start("src/main/webapp", , "/", );
}
}

七、运行main函数,控制台print如下内容,则启动成功。这时我们打开网页,访问自己PC的ip

八、返回我们制定的内容

九、设置端口和url,更改DemoConfig中的两个参数,在DemoController中新增一个方法。帮助大家理解。

DemoConfig.java

 package com.test.common;

 import com.jfinal.config.Constants;
import com.jfinal.config.*;
import com.jfinal.core.JFinal;
import com.test.controller.DemoController; /**
* Created by wangx on 2015/8/23 0023.
*/
public class DemoConfig extends JFinalConfig {
public void configConstant(Constants me){
me.setDevMode(true);
} public void configRoute(Routes me){
me.add("/test", DemoController.class);
} public void configPlugin(Plugins me){} public void configInterceptor(Interceptors me){} public void configHandler(Handlers me){} public static void main(String[] args) throws Exception {
JFinal.start("src/main/webapp", , "/", );
}
}
DemoController.java
 package com.test.controller;

 import com.jfinal.core.Controller;

 /**
* Created by wangx on 2015/8/23 0023.
*/
public class DemoController extends Controller{
public void index(){
renderText("学无止境!");
} public void demo(){
renderText("吓死宝宝了!");
}
}

访问url:http://localhost:8080/test/demo

到此,可以启动服务,并返回数据。

十、pom文件

 <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.</modelVersion> <groupId>com.test</groupId>
<artifactId>jFinalDemo</artifactId>
<version>1.0</version>
<packaging>war</packaging> <properties>
<project.build.sourceEncoding>UTF-</project.build.sourceEncoding>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties> <dependencies>
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>jfinal</artifactId>
<version>2.0</version>
</dependency>
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>cos</artifactId>
<version>26Dec2008</version>
</dependency>
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>jetty-server</artifactId>
<version>8.1.</version>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build> </project>

基于jFinal建立简单的服务端-接收请求并返回指定内容的更多相关文章

  1. Query通过Ajax向PHP服务端发送请求并返回JSON数据

    Query通过Ajax向PHP服务端发送请求并返回JSON数据 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuer ...

  2. jQuery通过Ajax向PHP服务端发送请求并返回JSON数据

    SON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用.请接着往下看教 ...

  3. c#基于supersocket的简单websocket服务端收发消息实现

    using log4net; using SuperSocket.SocketBase; using SuperSocket.WebSocket; using System; using System ...

  4. socket编程,简单多线程服务端测试程序

    socket编程,简单多线程服务端测试程序 前些天重温了MSDN关于socket编程的WSAStartup.WSACleanup.socket.closesocket.bind.listen.acce ...

  5. C# TCP socket发送大数据包时,接收端和发送端数据不一致 服务端接收Receive不完全

    简单的c# TCP通讯(TcpListener) C# 的TCP Socket (同步方式) C# 的TCP Socket (异步方式) C# 的tcp Socket设置自定义超时时间 C# TCP ...

  6. AgileEAS.NET SOA 中间件平台.Net Socket通信框架-简单例子-实现简单的服务端客户端消息应答

    一.AgileEAS.NET SOA中间件Socket/Tcp框架介绍 在文章AgileEAS.NET SOA 中间件平台Socket/Tcp通信框架介绍一文之中我们对AgileEAS.NET SOA ...

  7. Pomelo:网易开源基于 Node.js 的游戏服务端框架

    Pomelo:网易开源基于 Node.js 的游戏服务端框架 https://github.com/NetEase/pomelo/wiki/Home-in-Chinese

  8. 基于JAX-WS的Web Service服务端/客户端 ;JAX-WS + Spring 开发webservice

    一.基于JAX-WS的Web Service服务端/客户端 下面描述的是在main函数中使用JAX-WS的Web Service的方法,不是在web工程里访问,在web工程里访问,参加第二节. JAX ...

  9. winsock 编程(简单客户&服务端通信实现)

    winsock 编程(简单客户&服务端通信实现) 双向通信:Client send message to Server, and if  Server receive the message, ...

随机推荐

  1. python unicode 和 str 类型的关系

    python (2.X)在进行 运行时候字符串运算的时候, 分为两种类型 str, unicode 前者是 二进制的形式进行对字符串的保存, 后者是 以unicode的方式进行保存, 一般的工作方式为 ...

  2. jquery .attr()

    在JS中设置节点的属性与属性值用到setAttribute(),获得节点的属性与属性值用到getAttribute(),而在jquery中,用一个attr()就可以全部搞定了,赞一个先 ^^ jque ...

  3. 传统开发模型vs敏捷开发模型——过程模型的变革

    一.概念框架 在了解一个新概念的时候,最好的方法就是把它插入到原有的概念体系中.在不仅有助于对概念的记忆,更利于深刻地认识概念的本质.精髓.下图说明了"敏捷开发"在软件工程理论体系 ...

  4. oracle rman恢复数据库 方式恢复到异地数据库

    目的:从某个环境中,获取相关文件,放到异地机器使用rman 恢复.   情况说明:XX系统使用的是oracle数据库,现已从服务器拉下来相关文件,依靠这些文件来早本地的测试机上恢复数据库,方便进行数据 ...

  5. UVA 1395 (kruskal)

    /* 最大路与最小路的问题: 这道题看似简单,但是若不知道思路将无法写出. 思路:最小生成树很容易求出,但是最大值与最小值只差很难保证是最小的, 比如:1 5 5 6 100 101 很明显101 - ...

  6. git submodule 使用

    这个是备忘录,原网页: https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407 http://cncc.bingj.c ...

  7. 用JQuery动态为选中元素添加/删除类

    在做一些tab页功能时,我们经常会见到如下样式: 即当选中一个元素时,在此元素下会添加相应的类,以示区别.今天就研究了一下如何用JQuery实现此效果. 1. HTML代码 <a id=&quo ...

  8. 从0和1到Python

    什么是编程语言? 举一个例子: 如果我们不会英语,和一个不会中文的老外交流,怎么办?找个翻译. 电脑只懂0和1组成的机器语言. 用0和1告诉计算机做事很累:人类语言易了解,学习快,效率高. 如果定义一 ...

  9. formData上传图片

    ---------------------formData上传图片--------------------- <form id="imageform"> <img ...

  10. 采用sqlserver的缺省配置,在生产环境经常碰到系统响应慢(甚至hung的情况)

    请重视并正确配置sqlserver实例及数据库的参数,一般化的配置推荐如下: 1.数据和日志文件的初始大小分别设置为10G和2G,均设置为按照固定200M大小增长,不限制最大值: 2.sever实例设 ...