Atitit java rest mvc微服务原理以及框架选型 目录 第一节 Mvc原理 model controler view 1 第二章 Spark 最简单 1 第一节 Sprbt to
Atitit java rest mvc微服务原理以及框架选型
目录
第一节 Mvc原理 model controler view
第一节 Sprbt tomcat jetty swoole workman ci tp
Rest
微服务 通过同步异步模式调用跨进程调用 ,,rest ws socket mq等。。Cli
Sprbt 啰嗦,启动速度慢。。
Tomcat 但是和sprbt冲突,可以使用jetty
Jetty 只能code,
Tp ci yii lalavel等rest lib Codeigniter
Swoole Workerman
多个app启动类即可了。。。同一份prj,但是多重启动。。不同的端口部署不同的微服务。。
package rest;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.eclipse.jetty.webapp.AbstractConfiguration;
import org.eclipse.jetty.webapp.Configuration;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.AbstractHandler;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;
import org.eclipse.jetty.webapp.FragmentConfiguration;
import org.eclipse.jetty.webapp.JettyWebXmlConfiguration;
import org.eclipse.jetty.webapp.MetaInfConfiguration;
import org.eclipse.jetty.webapp.WebAppContext;
import org.eclipse.jetty.webapp.WebInfConfiguration;
import org.eclipse.jetty.webapp.WebXmlConfiguration;
import com.fasterxml.classmate.AnnotationConfiguration;
public class JettyWebserver {
/**
* <pre>
* 一个简单的 jetty 服务
* </pre>
*
* @author saligia
* @date 17-10-10
*/
public static void main(String [] args) throws Exception {
// int port = 13140;
// int port=Integer.parseInt(args[0].trim()) ;
Server server = new Server(80); // 创建一个 jetty 服务
// server.setHandler( new AbstractHandler () {
//
// @Override
// public void handle(String target, Request rq, HttpServletRequest htrq, HttpServletResponse rsp)
// throws IOException, ServletException {
// System.out.println("target :" + target);
// System.out.println("request : " + rq.getRequestURI());
// System.out.println("requestServ : " + htrq.getRequestURI());
//
// }});
WebAppContext context = new WebAppContext();
context.setResourceBase("webapps/");
// context.setDescriptor("web/WEB-INF/web.xml");
context.setConfigurations(new Configuration[]{
new WebXmlConfiguration(),
new WebInfConfiguration(),
new MetaInfConfiguration(),
new FragmentConfiguration(),new JettyWebXmlConfiguration()});
// AbstractConfiguration
// , new AnnotationConfiguration(), new EnvConfiguration()
context.setContextPath("/");
context.setParentLoaderPriority(true);
server.setHandler(context);
//------------ add svlt is ok...
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/ct2");
context.addServlet(new ServletHolder(new HtmlSvlt()), "/html");
// context.addServlet(new ServletHolder(new Iphone()), "/iphone");
server.setHandler(context);
server.start();
server.dumpStdErr();
server.join();
}
/**
* <pre>
* </pre>
*
* @author
* @param target - 目标请求,可以是一个URI或者是一个转发到这的处理器的名字
* @param request - Jetty自己的没有被包装的请求,一个可变的Jetty请求对象
* @param httpServletRequest - 被filter或者servlet包装的请求,一个不可变的Jetty请求对象
* @param httpServletResponse - 响应,可能被filter或者servlet包装过
* @return
*/
}
相关文章
- java实现遍历树形菜单方法——映射文件VoteTree.hbm.xml
- Java实现 LeetCode 390 消除游戏
- java实现南北朝时
- java实现孪生素数
- java实现拉丁方块填数字
- Java实现 蓝桥杯VIP 算法训练 排列问题
- bug_ _java.lang.IllegalArgumentException: View not attached to window manager
- Java微服务篇2——SpringCloud
- Atittit HDFS hadoop 大数据文件系统java使用总结 目录 1. 操作系统,进行操作1 2. Hdfs 类似nfs ftp远程分布式文件服务2 3. 启动hdfs服务start
- atitit.添加win 系统服务 bat批处理程序服务的法总结instsrv srvany java linux
- atitit.添加win 系统服务 bat批处理程序服务的法总结instsrv srvany java linux
- 如何给运行在 SAP BTP 上的 Java 微服务增添访问控制功能
- 华为OD机试 - 服务失效判断(Java & JS & Python)
- java系统服务运行分析
- Java制作数字加减法验证码
- Java并发编程实战之基于生产者消费者模式的日志服务读书笔记
- mybatis添加数据时报出的错误: java.lang.IllegalArgumentException java.lang.ClassCastException
- Java中Scanner的使用方法
- 【云原生 | Kubernetes 系列】---Prometheus 监控Java服务
- Linux复习资料——一篇文章学会安装Java(免环境配置)以及tomcat服务
- Java核心类库之(Stream流:生成、中间、终结、收集操作)
- 添加native和java系统服务