java后端btt框架,idea整合restful风格的ssm框架(二)

1. 前言

在这里的就不多啰嗦什么了,先来大概介绍一下项目的体系结构等。还是上张图

a8079da022a0

项目结构.png

整体架构是ssm的前面已经说过了,下面来说一下代码的架构。因为目前项目的规划还比较小,所以在com.bgy.ssm包下面就直接建了controller、service等。如果项目情况较复杂的话,在此包应该根据功能模块来进行分包,然后再建立相应的三层,这样的话结构更清晰。

在这里有个争论:关于到底要不要repo层的问题

有人赞成的是直接controller中接收用户请求,调用service处理业务逻辑,然后所有的组装数据也是在service中完成,最后service直接调用dao接口。

另外有人赞成的是service中只处理业务逻辑;对于数据的组装,如操作多表时要调用dao层的多个接口时,应该在repo层中完成,这样不会使service层显得太过臃肿,并且能提高可复用性和符合设计原则中 “针对接口编程,不针对实现编程”的理念。

在这里我个人的话更倾向于后者,service层更注重的应该是处理业务逻辑,不能因为实现某个功能而在service中一个方法写一堆组装数据的代码。当然这是我个人的愚见,若有高见,欢迎指正。

在这里这个项目较小,也是从新手角度出发,所以我违心的使用了controller、service、dao的三层架构。这样思路较简单和清晰。

另外说明一点,下面的代码中都有相关引用,使用时自行引入相关引用

2. 数据库

这里为了演示功能和架构,我就只使用一张表来实现操作。在这里,我建议在项目下建立sql文件夹,里面放置建表的语句,方便以后查阅和修改。

a8079da022a0

sql.png

上面是建表语句文件、下面是有些表需要进行初始化的初始化语句文件。

db_ddl.sql

DROP TABLE IF EXISTS `tUser`;

CREATE TABLE `tUser` (

`ID` VARCHAR (45) NOT NULL ,

`UserName` VARCHAR (100) ,

`NickName` VARCHAR (100),

`PassWord` CHAR (32),

`Email` VARCHAR (50),

`Phone` VARCHAR (50),

`Sex` ENUM('S_MALE','S_FEMALE','S_BM'),

`Status` ENUM('S_OFF','S_NORMAL'),

`Avatar` VARCHAR (100),

`Remarks` VARCHAR (200),

`AddAt` BIGINT,

PRIMARY KEY (`ID`)

) DEFAULT CHARSET=utf8;

这里没有写备注和null这些的规范,需要的可自行添加。

(后续添加:在这里的表名和字段名在下一篇文章中进行了修改,原因可翻看下一篇文章)

3. 实体类

在这里为了简便、我就建表完成后直接建立实体类User。

User.java

public class User {

private String id;

private String userName;

private String nickName;

private String password;

private String email;

private String phone;

private String sex;

private String status;

private String avatar;

private String remarks;

private Long addAt;

public User(){

}

public User genarateID() {

if (this.id == null) {

this.id = UUID.randomUUID().toString();

}

return this;

}

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getUserName() {

return userName;

}

public void setUserName(String userName) {

this.userName = userName;

}

pub

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值