Skip to content

最佳实践

zhōuhào edited this page Jun 4, 2018 · 5 revisions

前言

在使用hsweb之前,如果你已经掌握以下技术栈,应该能很快上手.

  1. java8 对java8有所了解,比如java8的新特性: lambda,stream-api.
  2. maven 熟悉maven多模块项目使用.
  3. spring,spring-mvc 熟悉常用注解,类,以及使用方式.
  4. spring-boot 了解spring-boot的自动配置,配置项目以及配置方式.
  5. mybatis 熟悉mybatis的使用,以及常用配置.
  6. restful 对restful有所了解会帮助你更快对熟悉hsweb中对web api.

开始使用

hsweb并不是像常见脚手架项目一样:直接下载到本地,修改其中代码,或者在上面新增功能.你应该:

  1. 使用maven依赖的方式使用hsweb,正式版都会上传到maven中央仓库,快照版将会发布到私有仓库. 最新的正式版为: Maven Central,快照版本为:Maven metadata URI

快照版和正式版的区别: 快照版为频繁更新的版本,会不定期发布更新,切版本号不会发生变更,使用快照版可以体验最新的特性.而正式版相对稳定,更新频率更慢,发布到中央仓库后无需引入私服即可使用.

如果使用快照版,需要在pom.xml中引入私服:

<repositories>
 <repository> 
     <id>hsweb-nexus</id> 
     <name>Nexus Release Repository</name> 
     <url>http://nexus.hsweb.me/content/groups/public/</url> 
     <snapshots> 
         <enabled>true</enabled> 
          <updatePolicy>always</updatePolicy> <!--每次都从服务器更新最新的快照版本-->
     </snapshots> 
 </repository> 
</repositories>
  1. 引入hsweb到依赖管理
<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.hswebframework.web</groupId>
                <artifactId>hsweb-framework</artifactId>
                <version>${hsweb.framework.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
</dependencyManagement>
  1. 引入相关模块依赖

基础依赖:

<dependencies>
   <!--基本启动模块,用于系统的初始化,自动配置等操作-->
   <dependency>
      <groupId>org.hswebframework.web</groupId>
      <artifactId>hsweb-spring-boot-starter</artifactId>
   </dependency>

   <!--spring-boot 日志模块,使用slf4j+logback进行日志管理-->
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-logging</artifactId>
   </dependency>
   <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
   </dependency>

    <!--spring-boot-web模块,自动配置springMvc,这里不使用tomcat,而是使用undertow作为内置servlet容器-->
    <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
         <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
         </exclusions>
     </dependency>
     <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-undertow</artifactId>
     </dependency>

     <!--对spring-cache的拓展,主要是修复一个spring-cache的bug,如果开启里使用缓存,则需要引入这个依赖-->
     <dependency>
            <groupId>org.hswebframework.web</groupId>
            <artifactId>hsweb-concurrent-cache</artifactId>
            <version>${hsweb.framework.version}</version>
     </dependency>
 
</dependencies>
  1. TODO

hsweb 3.0

 3.0,全新的架构
 模块化,更细,更轻
 吸取经验,优化功能
  1. 增删改查
  2. 权限控制
  3. 访问日志
  4. 动态数据源
  5. 常用并发工具
  6. 消息封装
  7. 其他工具
Clone this wiki locally