业务形容
需要形容
任何一家企业都会波及到员工的增删改查,在以后业务零碎设计中咱们须要对员工信息的治理进行设计和实现。
业务框架剖析
在员工(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 server
server.port=80
# spring datasource
spring.datasource.url=jdbc:mysql:///dbstaff?serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=*****
# spring mybatis
mybatis.mapper-locations=classpath:/mapper/*/*.xml
# spring log
logging.level.com.cy=debug
#spring thymeleaf
spring.thymeleaf.cache=false
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
员工数据的查问及出现
业务形容
将数据库中的员工信息查问进去, 而后在客户端基于 html 技术进行出现。
畛域对象 (POJO) 设计及实现
设置 Staff 对象, 基于此对象封装从数据库查问到的员工信息, 代码如下: