基于jFinal建立简单的服务端-接收请求并返回指定内容
本菜鸡是一名弱弱的测试工程师,最近完成了一个支付相关的项目,项目工作中,需要建立一个模拟支付宝的网关,主要是接收请求并返回数据。作为一名没有丝毫开发经验的菜鸡,初期入门相当费劲,主要还是思维上的转变。由于本人技能水平有限,本篇文章只介绍如何启动服务,并接收请求,返回数据。希望可以给想要入门的童鞋一些帮助。
一、首先建立一个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建立简单的服务端-接收请求并返回指定内容的更多相关文章
- Query通过Ajax向PHP服务端发送请求并返回JSON数据
Query通过Ajax向PHP服务端发送请求并返回JSON数据 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuer ...
- jQuery通过Ajax向PHP服务端发送请求并返回JSON数据
SON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用.请接着往下看教 ...
- c#基于supersocket的简单websocket服务端收发消息实现
using log4net; using SuperSocket.SocketBase; using SuperSocket.WebSocket; using System; using System ...
- socket编程,简单多线程服务端测试程序
socket编程,简单多线程服务端测试程序 前些天重温了MSDN关于socket编程的WSAStartup.WSACleanup.socket.closesocket.bind.listen.acce ...
- C# TCP socket发送大数据包时,接收端和发送端数据不一致 服务端接收Receive不完全
简单的c# TCP通讯(TcpListener) C# 的TCP Socket (同步方式) C# 的TCP Socket (异步方式) C# 的tcp Socket设置自定义超时时间 C# TCP ...
- AgileEAS.NET SOA 中间件平台.Net Socket通信框架-简单例子-实现简单的服务端客户端消息应答
一.AgileEAS.NET SOA中间件Socket/Tcp框架介绍 在文章AgileEAS.NET SOA 中间件平台Socket/Tcp通信框架介绍一文之中我们对AgileEAS.NET SOA ...
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
Pomelo:网易开源基于 Node.js 的游戏服务端框架 https://github.com/NetEase/pomelo/wiki/Home-in-Chinese
- 基于JAX-WS的Web Service服务端/客户端 ;JAX-WS + Spring 开发webservice
一.基于JAX-WS的Web Service服务端/客户端 下面描述的是在main函数中使用JAX-WS的Web Service的方法,不是在web工程里访问,在web工程里访问,参加第二节. JAX ...
- winsock 编程(简单客户&服务端通信实现)
winsock 编程(简单客户&服务端通信实现) 双向通信:Client send message to Server, and if Server receive the message, ...
随机推荐
- python 输出十六进制中文乱码
代码中红色字体为解决方案: #-*-coding:utf-8-* import csv filename='C:\Users\yaru\Desktop\Senti_Value(1).csv' data ...
- multithreading - Reader/Writer Locks in C++
You Only Need To Note This: only 1 single thread can acquire an upgrade_lock at one time. others are ...
- linux下安装安装pcre-8.32
linux下安装安装pcre-8.32 ./configure --prefix=/usr/local/pcre 出现以下错误 configure: error: You need a C++ com ...
- Reed-Solomon码,QR
原文: Reed–Solomon codes for coders参考: AN2407.pdfWIKI: 里德-所罗门码实现:Pypi ReedSolo #译注:最近看到了RS码,发现还挺有意思的,找 ...
- asp.net 设置网页过期
/// <summary> /// 判断网页是否过期 /// </summary> /// <returns></returns> private bo ...
- Javase部分回顾(static (静态修饰符),修饰方法,单利的设计模式, 封装)
static (静态修饰符) 1.修饰成员变量 静态变量的访问方式: 方式一 : 通过对象访问. 对象.变量名 ...
- css预处理语言的模块化实践
编写css是前端工作中,一项普通而又频繁的劳动,由于css并不是一门语言,所以在程序设计上显得有些简陋.对于小型项目来说,css的量还不至于庞大,问题没有凸显,而如果要开发和持续维护一个较为大型的项目 ...
- cellmap for iphone
说明:Cellmap的Iphone版本已经上架APP Store. 如需下载,可以登陆app store,然后搜索cellmap进行下载. 或者直接登陆以下地址下载: https://itunes.a ...
- [Linux] - 阿里云CentOS 6.5 安装Docker
因为阿里云的CentOS 6.5版本默认内核kernel版本是2.6的,比较低.安装docker的后,运行不了. 步骤: 1.使用命令更新: yum update 2.安装Docker.这里忽略500 ...
- flex 布局 初次接触这个好使又不是特别好用的布局方法
刚开始学前端的童鞋们应该也是一样先学习的table然后再学习了盒子模型,感觉终于学会了简单的网页布局,使用各种display,float,position绞尽脑汁给页面布局成自己想要的页面样式,然而, ...