Douyu是一种完全采用Java语言开发的、运行于JVM之上的新型基础开发平台。 在web层,Douyu完全抛弃了JSP/Servlet, 在数据库访问层,Douyu不依赖于任何ORM(对像关系映射)框架(如Hibernate)。
Douyu将Java语言编译器、Http服务器、MVC完美整合在一起,
几乎实现了ORM全自动化,同时在Java语言层面引入了权限管理模型。
Douyu内置的Java语言编译器基于OpenJDK Javac编译器(b60版),
并进行了修改和扩充,跟Http服务器结合之后能在控制器层发挥出强大的威力,
你只要修改Java源文件,然后刷新浏览器就能查看运行结果,
同时编译器也是实现ORM自动化的基石。
Douyu内置的Http服务器是基于NIO技术的,
是对Tomcat6及com.sun.net.httpserver(总共1300多个Java源文件)进行大刀阔斧的改造后得来的,
改造后的Http服务器目前只有60个左右的源文件,支持Http1.0/1.1协议。
Douyu内置的权限管理模型目前包含了功能权限、字段权限两类,
功能权限一般对应控制器类中的Action方法,Action方法可以与表单中的按钮关联,
字段权限能控制表单中的字段是否可以查看、修改或隐藏。
Douyu内置的ORM已几乎实现自动化,你只须建个数据库表(如pet),
然后在服务器配置文件中配置数据库驱动、并为每个数据库指定一个包名(如my.oracle.table),
然后就你可以在你的Java源文件中用import my.oracle.table.Pet导入模型类Pet。
Douyu还支持横跨多个数据库的事务,还支持保存点(Savepoint)。
一些示例代码:
import com.douyu.http.UploadedFile;
@Controller
public class FileUpload {
public void index(UploadedFile file1, String description) {
File f = new File("D:/Douyu/temp/uploadedFiles", file1.getSimpleName());
file1.saveTo(f);
}
}
Douyu是一种完全采用Java语言开发的、运行于JVM之上的新型基础开发平台。 在web层,Douyu完全抛弃了JSP/Servlet, 在数据库访问层,Douyu不依赖于任何ORM(对像关系映射)框架(如Hibernate)。 Douyu将Java语言编译器、Http服务器、MVC完美整合在一起, 几乎实现了ORM全自动化,同时在Java语言层面引入了权限管理模型。 Douyu内置的Java语
权限信息 · 控制近距离通信 · 检索正在运行的应用 · 修改系统设置 · 关闭其他应用 · 在其他应用之上显示内容 · 拍摄照片和视频 · 录音 · android.permission.CAPTURE_AUDIO_OUTPUT · android.permission.CAPTURE_VIDEO_OUTPUT · 读取您的USB存储设备中的内容 · 更改您的音频设置 · 修改或删除您的USB存
1 importrequests2 from lxml importetree3 from urllib importrequest4 importjson5 6 #全局变量(请求头+文件io对象) 7 headers ={8 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, li
using System; using System.Net; using System.Net.Sockets; using System.Text; using System.Text.RegularExpressions; using System.Threading; namespace danmu { class Program { private st
` `给大家介绍一个非常方便的Web框架: Douyu是一种完全采用Java语言开发的、运行于JVM之上的新型基础开发平台。 在web层,Douyu完全抛弃了JSP/Servlet, 在数据库访问层,Douyu不依赖于任何ORM(对像关系映射)框架(如Hibernate)。 Douyu将Java语言编译器、Http服务器、MVC完美整合在一起, 几乎实现了ORM全自动化,同时在Java语言层面引入
最初的版本抛弃了Servlet/JSP规范,并且自已实现容器,这思路理论上是没有大的错的, 但是太新潮了,原有的技术积累不能充分使用,所以但凡追求稳定第一的产品都不敢贸然尝试。 因此,douyu的设计思路也跟着变了,努力的方向是: 尽量兼容现有技术、寻求一种更简单更有效的办法改进现有技术。 douyu 0.6.1往这个方向迈出了第一步, 第一步主要关注Web层的东西,不涉及持久层,douyu 0.
斗鱼直播间积分系统 为你的直播间增加积分功能吧! 特点 能够长久地在低端的服务器上运行 热更新规则 配置灵活 安全完善的积分兑换机制 声明 本项目为个人兴趣开发,无任何盈利手段 水平有限,代码质量不高,互联网同好可参考使用,尊重作者劳动成果,引用请注明出处 若本项目有帮助到你,还请不要吝啬star❤ 作者: 小淳 / QQ: 189964430 / 邮箱: 189964430@qq.com 使
1.jdk1.6 因为douyu是在jdk1.6环境下开发的,所以最好安装jdk1.6 2.安装douyu服务器 可以在这个网址下载: http://douyu.googlecode.com/files/Douyu_0_1_0.rar 也可以下载附件,是一样的。 3.启动douyu服务器 假设将下载之后的解压到D:\Douyu目录。 点"开始->运行",输入cmd,打开一个控制台,切换到D:\Do
require_once __DIR__ . '/src/SocketMsg.php'; require_once __DIR__ . '/src/Room.php'; require_once __DIR__ . '/src/Log.php'; use DouYu\Room; use Douyu\Log; date_default_timezone_set('PRC'); defined('Do
#coding=utf-8 from selenium import webdriver from selenium.common.exceptions import NoSuchElementException from selenium.webdriver.support.ui import WebDriverWait import time import json import reque
这个有点麻烦,需要关联上下行的两个条件。 方法1: 大致思路如下: 按行读取文件,存入数组。 以循环方式按顺序处理数组中的数据。 循环内判断行是否已abc开头,如果是则将变量存入临时变量,并不做输出处理;如果不是abc开头则直接输出变量内容到文件,进入下次循环 再次循环时,判断上一行是否是abc开头,如果是再判断本次的变量结尾是否是def。 如果条件不满足则先输出上一次循环变量(在临时变量内。)到
随着微服务架构、云计算、单页应用和响应式设计的兴起,Web前端技术发展迅速。当前在网站开发中使用现代前端技术已经是基本形态,你可以基于Canvas、WebGL来开发二三维的H5游戏,也可以使用React Native等框架来开发新一代的移动APP,还可以使用Nodejs等框架来开发桌面应用,还可以开发ChromeAPP(PWA)、微信小程序、以及这几年很流行的WebVR和AR。 对于GIS行业来说
主要内容:基础类的功能如果您参考Apple文档,应该会看到框架的详细信息,如下所示。 框架定义了Objective-C类的基础层。 除了提供一组有用的原始对象类之外,它还引入了几个定义Objective-C语言未涵盖的功能的范例。 框架的设计考虑了这些目标 - 提供一小组基本实用程序类。 通过为解除分配等事项引入一致的约定,使软件开发更容易。 支持Unicode字符串,对象持久性和对象分发。 提供一定程度的操作系统独立
本文向大家介绍JavaWeb开发之Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架,包括了JavaWeb开发之Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架的使用技巧和注意事项,需要的朋友参考一下 简单介绍一下,本框架的基本功能点
本文向大家介绍微信公众平台开发教程(三) 基础框架搭建,包括了微信公众平台开发教程(三) 基础框架搭建的使用技巧和注意事项,需要的朋友参考一下 首先我们设计了模块层次图,当然图中只是给出一种实现方式,不局限于此。具体见下图。 主要功能介绍如下: 1)请求接口层。处理HTTP请求,及响应 2)分发层。由接口层传入请求,然后具体分析请求类型,分发至不同的处理器 3)业务逻辑层。这里是我们的具体业务逻辑
本文向大家介绍Android开发之Wifi基础教程,包括了Android开发之Wifi基础教程的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android开发Wifi的基础知识。分享给大家供大家参考。具体如下: Android提供了WifiManager这个类,通过这个类可以进行wifi相关的各种操作。 通过 可获取该类的实例。 1. 获取wifi开启状态 (只要手机的wifi打开了,即
本文向大家介绍浅谈Servlet开发技术基础,包括了浅谈Servlet开发技术基础的使用技巧和注意事项,需要的朋友参考一下 一、Servlet概述 1.sun公司提供的动态web资源开发技术。本质是上一段java小程序,要求这个小程序必须实现Servlet接口,以便服务器能够调用。 2.开发Servlet的两个步骤 *实验:Servlet的快速入门 (1)步骤一:写一个java程序实现Servle
我正在做基本的android开发人员教程,我正在开发dogglers应用程序:https://developer.android.com/codelabs/basic-android-kotlin-training-project-dogglers-app?continue=https://developer.android.com/courses/pathways/android-基础知识-ko
Swoole版本选择 EasySwoole 2.x版本全面支持swoole1.x与swoole2.x。若有协程需求,请使用swoole2.x。但对于大部分新手而言,若没有协程概念(可以理解为进程内多线程), 推荐还是配和swoole1.x使用,因为很多场景下,static变量在协程下是非常不安全的,例如单例模式的数据库连接。 若生产环境想上swoole,如果没有太多的基础或者是对内核执行机制比较了