# Mars-java
**Repository Path**: edik/Mars-java
## Basic Information
- **Project Name**: Mars-java
- **Description**: 这是一个javaWeb开发框架,构建非常简单,导入一个jar包,编写一个yml配置文件,就可以从main方法启动了,单表操作只需要一行注解
- **Primary Language**: Java
- **License**: GPL-3.0
- **Default Branch**: master
- **Homepage**: http://mars-framework.com
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 40
- **Created**: 2019-10-23
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README



Js框架有React,Vue,AngularJS,但java框架只有一个Spring。 很多人说我正在制造轮子,但我不这么认为,所以...是时候挑战Spring了,我希望每个人都能参与进来,贡献代码,让java开发人员有另一种选择
其他子项目
我能做什么
- 搭建简单,开箱即用
- 使用netty做的http服务
- 使用JWT做的会话管理
- 支持AOP,IOC,MVC,Mybatis,事务管理
- 通过 Mars-cloud 可以分布式部署
- 通过 Mars-config 可以远程配置【迭代中】
只需要一个jar包
````
com.github.yuyenews
mars-start-pure
最新版,可看文档
````
一个配置文件
````
#配置端口号(默认8080)
port: 8088
#配置持久层
jdbc:
#配置数据源,必须是阿里巴巴的 druid数据源
dataSource:
name: dataSource
url: jdbc:mysql://10.211.55.5:3306/test?serverTimezone=GMT%2B8
username: root
password: rootroot
driverClassName: com.mysql.cj.jdbc.Driver
````
然后从main方法启动
````
public class Start {
public static void main(String[] args){
StartMars.start(Start.class);
}
}
````
除此之外再无任何配置文件
- 很多框架宣称自己没配置文件,其实是把配置放在了java类里面,而Mars-java只有一个yml,比java类更加灵活,更省代码
- Controller,Bean,DAO,单表操作都可以使用纯注解完成,而且及其简洁
----------将Mars-java项目升级为Mars-cloud项目及其简单----------
只需要换一个start
````
com.github.yuyenews
mars-cloud-start
最新版,可看目录《版本指引》
````
添加5行配置
````
cloud:
# 服务名称,同一个服务的负载均衡集群的name必须一致,不同集群之间必须唯一
name: cloud-client1
# 尽量长一点,防止接口过多来不及发布
sessionTimeout: 10000
# 是否作为网关
gateWay: yes
# 请求Mars-Cloud接口超时时间
timeOut: 10000
# zookeeper地址,多个地址用英文逗号分割
# 多个地址,一定要加双引号,不然解析yml文件会出错
register: 10.211.55.9:2180
````
搭建是不是超简单? 简直秒懂
帮助文档
[Document](http://mars-framework.com)
扩展包
支持redis连接
封装了 Email, MD5, AES 和 其他工具类 并 集成了hutool
[Extension package](https://github.com/yuyenews/Mars-extends)
简单对比
| 名称 |
AOP |
IOC |
MVC |
持久层 |
配置文件 |
启动方式 |
| Mars-java |
OK |
OK |
OK |
支持mybatis,并有自己的JDBC |
只有一个,并支持远程配置 |
Main方法 |
| Springboot |
OK |
OK |
OK |
支持大部分主流框架 |
只有一个,并支持远程配置 |
Main方法,War包+Tomcat |