• (一)Java秒杀项目之项目环境搭建


    一、Spring Boot环境搭建

    1、把项目分成多个模块,每个模块对应一部分(不一定是一个章节)的内容,代码将在文章的具体位置给出,每个模块都是在之前模块的基础上构建,每个模块都为Spring Boot项目。

    2、idea中新建一个Empty Project名为mymiaosha,在其下新建第一章对应的模块mymiaosha1,该模块代码包含到下文的二、集成Thymeleaf,Result结果封装为止,具体代码见下文。

    二、集成Thymeleaf,Result结果封装

    1、Result结果封装

    1、对返回的JSON数据进行统一处理,一般包含状态码(code),状态信息(msg),数据(data),新建结果类Result,其中声明这三个变量用来封装返回数据,就可以用类似 new Result(0, "success", {data} ); new Result(500100, "服务端异常", null); 这种形式返回

    2、为了进行更好的封装,可以在Result类中再做一次封装,封装成静态泛型方法使用类名直接调用,封装完后使用 Result.success( {data} ); Result.error(500100, "服务端异常");这种形式返回

    3、由于状态码和状态信息是一体的,可以新建CodeMsg类来封装,声明状态码(code)、状态信息(msg)变量,然后进一步封装一个CodeMsg类型的静态变量,封装完后使用 Result.error(CodeMsg.SERVER_ERROR);来返回

    4、由于具体数据的类型不确定,一般使用T类型,所以结果类也是一个泛型类,最后返回的类型就可以使用类似Result<String>这样

    2、集成Thymeleaf

    加入spring-boot-starter-thymeleaf依赖,默认的Thymeleaf模版文件放置位置如下,也可以自己更改。由于默认是这样,所以代码中省略没写

    spring.thymeleaf.prefix=classpath:/templates/
    spring.thymeleaf.suffix=.html

    Thymeleaf其实就是html文件,需要在头部进行声明,再使用

    <!DOCTYPE HTML>
    <html xmlns:th="http://www.thymeleaf.org">
    <head>
        <title>hello</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    </head>
    <body>
    <p th:text="'hello:'+${name}" ></p>
    </body>
    </html>

    最后新建控制类进行测试,具体见代码。如果上面文案不清楚的话,建议看我的代码提交,每一次提交依次对应构建的每一步。

    至此,mymiaosha1模块构建完毕,上述文章代码参见我的本项目仓库地址中的mymiaosha1模块。同时下文在mymiaosha2模块上构建,mymiaosha2模块由mymiaosha1模块复制而来。

    三、集成Mybatis+Druid

    从这里开始,将在mymiaosha2模块上开发。

    引入mybatis-spring-boot-starter依赖,它包含了mybatis依赖;引入druid依赖,mysql-connection-java依赖

    配置数据库连接信息,使用Mybatis注解方式,直接在dao层接口方法上使用mybatis依赖下的注解

    spring.datasource.url=jdbc:mysql://localhost:3306/miaosha?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
    spring.datasource.username=root
    spring.datasource.password=123
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver
    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

    spring-tx依赖下的@Transactional注解可以用在业务层的方法上进行事务管理

    四、集成Jedis+Redis安装+通用缓存Key封装

    Redis安装请参考我的文章Redis在Mac上的下载安装

    SpringBoot项目中通过Jedis操作Redis请参考我的文章Spring Boot通过Jedis来操作Redis

    通用缓存Key封装一般采用如下方式:接口->抽象类->实现类

  • 相关阅读:
    c#FileStream文件读写(转)
    mvc Razor 视图中找不到 ViewBag的定义
    JS正则表达式验证账号、手机号、电话和邮箱
    jquery each循环,
    $.grep(array, callback, [invert])过滤,常用
    arguments 对象
    有关Select option 元素
    MVC零基础学习整理(一)
    根据年月日算出当前日期是星期几
    C# winfrom 模拟ftp文件管理
  • 原文地址:https://www.cnblogs.com/yanguobin/p/11751623.html
Copyright © 2020-2023  润新知