discover - 模块化编程的实践者


Apache
跨平台
Java

软件简介

discover

discover 是一个集成spring mvc+spring+hibernate的基础功能工程

定义功能

一个模块由后台管理,接口,freemarker标签组成,给前端更大的自由。前端可以通过标签或者接口构建页面和功能

技术选型:

  • 服务端

  • SSH (Spring、SpringMVC、Hibernate)

  • 安全权限 Shiro

  • 缓存 Ehcache

  • 视图模板 freemarker

  • 其它 Jsoup、gson

编码规范

1.项目结构规范

com.{公司域名}.{主工程}
com.{公司域名}.{主工程}.{子工程}

2.包结构规范

//主包结构
com.{公司域名}.{主工程}.{子工程}
com.{公司域名}.{主工程}.{子工程}.controller
com.{公司域名}.{主工程}.{子工程}.data
com.{公司域名}.{主工程}.{子工程}.freemaker
com.{公司域名}.{主工程}.{子工程}.web
com.{公司域名}.{主工程}.{子工程}.utils
com.{公司域名}.{主工程}.{子工程}.rest
com.{公司域名}.{主工程}.{子工程}.plugins
com.{公司域名}.{主工程}.{子工程}.web
com.{公司域名}.{主工程}.{子工程}.exception

//controller包子结构
com.{公司域名}.{主工程}.{子工程}.controller.admin
com.{公司域名}.{主工程}.{子工程}.controller.front
com.{公司域名}.{主工程}.{子工程}.controller.rest

//data包子结构
com.{公司域名}.{主工程}.{子工程}.data.dao
com.{公司域名}.{主工程}.{子工程}.data.entity
com.{公司域名}.{主工程}.{子工程}.data.enums
com.{公司域名}.{主工程}.{子工程}.data.service
com.{公司域名}.{主工程}.{子工程}.data.so

//rest包子结构
com.{公司域名}.{主工程}.{子工程}.rest.conver
com.{公司域名}.{主工程}.{子工程}.rest.resources

使用访问

已经发布到maven中央仓库了

 <dependency>
      <groupId>com.haoxuer.discover</groupId>
      <artifactId>discover-website</artifactId>
      <version>2.0.2</version>
 </dependency>

代码生成类ChainMake使用

   ChainMake make=  new ChainMake(TemplateSimpleDir.class,TemplateHibernateDir.class);
   make.setAction("com.youapp.controller.admin");//Controller类所在包
   //项目模板位置
   File view=new File("E:\\youweb\\src\\main\\webapp\\WEB-INF\\ftl\\admin");
   make.setView(view);
   List<Class<?>> cs=new ArrayList<Class<?>>();
   cs.add(LeaveData.class);//实体对象
   make.setMenus("1,39,44");//后台菜单号
   make.setDao(false);//是否生成dao代码
   make.setService(false);//是否生成Service代码
   make.setView(false);//是否生成后台管理页面
   make.setAction(true);//是否生成Controller代码
   make.makes(cs);