业务形容

需要形容

任何一家企业都会波及到员工的增删改查,在以后业务零碎设计中咱们须要对员工信息的治理进行设计和实现。

业务框架剖析

在员工(Staff)信息管理中就是要实现对员工信息的增加,批改,查问,删除等业务,如图所示:

我的项目技术架构剖析及设计

在员工治理模块实现过程,咱们采纳典型的C/S架构进行实现,客户端咱们基于浏览器进行实现,服务器采纳tomcat,数据库应用MySQL,具体应用层基于MVC分层架构进行实现。

我的项目技术栈利用剖析及选型

客户端技术:html,css,javascript,bootstrap
服务端技术:hikaricp,mybatis,spring,springboot,thymeleaf
数据库技术:mysql,sql

数据库及表的剖析与设计

数据库初始化

关上mysql控制台,而后按如下步骤执行staff.sql文件。
第一步:登录mysql(注:服务器明码要用设置的明码)

mysql –uroot –p*****

第二步:设置控制台编码方式

set names utf8;

第三步:执行staff.sql文件(切记不要关上文件复制到mysql客户端运行,不然会呈现乱码问题)。

source d:/staff.sql

第四步:脚本执行胜利当前,在客户端查问数据之前,先执行如下语句:

set names gbk;

其中staff.sql文件内容如下:

设计并创立数据库

如果数据库已存在,则先删除数据库,代码如下:

drop database if exists dbstaff;

创立新的数据库,代码如下:

create database dbstaff default character set utf8;

设计并创立员工(Staff)表

关上数据库,语句如下:

use dbstaff;

在dbstaff数据库中创立员工表:

create table tb_staff(     id bigint primary key auto_increment,     name varchar(100) not null,     gender varchar(10) not null,     workingTime datetime not null)engine=InnoDB;insert into tb_staff values (null,'A','man',now());insert into tb_staff values (null,'B','woman',now());insert into tb_staff values (null,'C','woman',now());insert into tb_staff values (null,'D','woman',now());insert into tb_staff values (null,'E','man',now());insert into tb_staff values (null,'F','man',now());insert into tb_staff values (null,'G','woman',now()); 

我的项目环境初始化

筹备操作

1)JDK 1.8
2)Maven 3.6.3
3)IDEA 2020.2
4)MySQL 5.7+

创立我的项目Module

关上idea,而后基于设计,创立我的项目module,如图所示:

创立我的项目module时指定我的项目外围依赖

增加我的项目Module依赖

MySQL 驱动

<dependency>   <groupId>mysql</groupId>   <artifactId>mysql-connector-java</artifactId>   <scope>runtime</scope></dependency>

Srping Jdbc 提供了HikariCP连接池

<dependency>   <groupId>org.springframework.boot</groupId>   <artifactId>spring-boot-starter-data-jdbc</artifactId></dependency>

MyBatis 资源

<dependency>   <groupId>org.mybatis.spring.boot</groupId>   <artifactId>mybatis-spring-boot-starter</artifactId>   <version>2.1.3</version></dependency>

Spring Web 依赖 (内置一个tomcat服务)

<dependency>   <groupId>org.springframework.boot</groupId>   <artifactId>spring-boot-starter-web</artifactId></dependency>

Thymeleaf 依赖 (html模板引擎)

<dependency>   <groupId>org.springframework.boot</groupId>   <artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>

我的项目Module根底配置

关上我的项目Module配置文件application.properties,并增加如下内容(注:服务器明码password要用设置的明码):

#spring serverserver.port=80# spring datasourcespring.datasource.url=jdbc:mysql:///dbstaff?serverTimezone=GMT%2B8&characterEncoding=utf8spring.datasource.username=rootspring.datasource.password=*****# spring mybatismybatis.mapper-locations=classpath:/mapper/*/*.xml# spring loglogging.level.com.cy=debug#spring thymeleafspring.thymeleaf.cache=falsespring.thymeleaf.prefix=classpath:/templates/spring.thymeleaf.suffix=.html

员工数据的查问及出现

业务形容

将数据库中的员工信息查问进去,而后在客户端基于html技术进行出现。

畛域对象(POJO)设计及实现

设置Staff对象,基于此对象封装从数据库查问到的员工信息,代码如下: