springboot快速创建项目框架
一、项目框架准备
1.1 新建maven空项目,并在pom中引入依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.12.RELEASE</version>
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<!-- web启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--jdbc连接及其启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.48</version>
</dependency>
<!--tk.mybatis及mybatis启动器 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.1.5</version>
</dependency>
<!--thymeleaf启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
1.2 准备mysql数据表
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`birthday` date DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4;
INSERT INTO `user` VALUES ('', '张三', '', '2020-01-16', '许昌市');
INSERT INTO `user` VALUES ('', '李四', '', '2020-01-01', '河南省许昌市');
二、实现数据的展示
2.1 新建启动入口并测试
在java文件夹中新建 MyApplication.java 文件,作为程序的启动入口。
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
}
在resources文件夹中新建application.yml文件,配置端口和数据库连接
server:
port: 7001
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/mydb
username: root
password: fanbao0713
新建controller --> UserController.java 文件,并启动测试:http://localhost:7001/user/hello
@Controller
@RequestMapping("user")
public class UserController {
@GetMapping("hello")
public String hello(){
return "Hello World!";
}
}
2.2 数据库连接配置
新建 pojo --> User.java 文件:
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String username;
private String password;
private Date birthday;
private String address; public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public Date getBirthday() {
return birthday;
} public void setBirthday(Date birthday) {
this.birthday = birthday;
} public String getAddress() {
return address;
} public void setAddress(String address) {
this.address = address;
}
}
在 application.yml 文件中,新增mybatis关联
mybatis:
type-aliases-package: com.springbootdemo.pojo
在 mapper --> UserMapper.java 文件:
@Mapper
public interface UserMapper extends tk.mybatis.mapper.common.Mapper<User> {
}
在 service --> UserService.java 文件,由于tk.mybati不是spring官方插件,“userMapper”会报错,可以忽略:
@Service
public class UserService {
@Autowired
private UserMapper userMapper; public User selectById(Long id){
return this.userMapper.selectByPrimaryKey(id);
} public List<User> selectAll(){
return userMapper.selectAll();
}
}
在 controller --> UserController.java 文件中,展示接口,并进行测试:http://localhost:7001/user/findAll
@RestController
@RequestMapping("user")
public class UserController {
@Autowired
private UserService userService; @GetMapping("{id}")
public User selectById(@PathVariable("id") Long id){
return this.userService.selectById(id);
} @GetMapping("findAll")
public Map<String, Object> findAll(){
Map<String, Object> map = new HashMap<>();
map.put("用户列表", userService.selectAll());
return map;
}
}
三、静态资源访问及拦截器
3.1 访问静态资源
在 resources 文件夹中新增static中,并加入目录中,static中的各类资源可以直接访问:http://localhost:7001/js/common.js
3.2 拦截器设置
在 interceptors --> UserInterceptor中,首先我们定义一个拦截器:
@Component
public class UserInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
System.out.println("preHandle/前置拦截器 method is running!");
return true;
} @Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
System.out.println("postHandle/运行拦截器 method is running!");
} @Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
System.out.println("postHandle/后置拦截器 method is running!");
}
}
新建 config --> MvcConfig.java 中,定义配置类,注册拦截器:
@Configuration
public class MvcConfig implements WebMvcConfigurer {
@Autowired
private HandlerInterceptor handlerInterceptor; @Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(handlerInterceptor).addPathPatterns("/**");
}
}
springboot快速创建项目框架的更多相关文章
- springBoot(2)---快速创建项目,初解jackson
快速创建项目,初解jackson 一.快速创建项目 springboot官网提供了工具类自动创建web应用:网址:http://start.spring.io/ 官网页面 1.快速创建一个 选择web ...
- SpringBoot系列之快速创建项目教程
本博客简介一下SpringBoot快速创建工程的方法,主要介绍一下Spring Initializer,Spring Initializer是IntelliJ IDEA才集成的一种快速创建Spring ...
- SpringBoot——IDEA使用 Spring Initializer快速创建项目【四】
前言 使用Spring Initializer快速创建项目 步骤 首先肯定是打开我们的IDEA的编辑器呀~ 创建项目 File -> New -> Project Spring Initi ...
- 使用Springboot快速搭建SSM框架
Spring Boot设计目的是用来简化Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. 一.环境准备 Idea 2017 或 201 ...
- JavaScript 项目构建工具 Grunt 实践:安装和创建项目框架
Grunt 是一个基于任务的 JavaScript 项目命令行构建工具,运行于 Node.js 平台.Grunt 能够从模板快速创建项目,合并.压缩和校验 CSS & JS 文件,运行单元测 ...
- vue-cli3.X快速创建项目
1.安装 Vue CLI 的包名称由 vue-cli 改成了 @vue/cli. 如果你已经全局安装了旧版本的 vue-cli (1.x 或 2.x),你需要先通过以下方式先卸载它: npm unin ...
- Laragon修改配置快速创建其他框架的项目
配置方式 依葫芦画瓢,如添加thinkPHP: # Thinkphp Thinkphp 3.2=composer create-project topthink/thinkphp %s Thinkph ...
- Spring-boot:快速搭建微框架服务
前言: Spring Boot是为了简化Spring应用的创建.运行.调试.部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置. 简单来说,它提供了一堆依赖打包,并 ...
- 【HttpRunner v3.x】笔记 ——2. 用脚手架快速创建项目
环境装好了,相信很多童鞋已经迫不及待的想run起来了,但是面对一个陌生的框架又无从下手.没关系,我们可以用脚手架来快速生成一个httprunner项目. 一.快速生成项目 我们不妨先输入httprun ...
随机推荐
- 从头开始,如何配置一部纯净好用的Windows
emmm,原因是酱紫的, 鉴于许许多多的人问过我怎么重装系统,装出来的系统干净没有广告什么的, 还有问为什么我的电脑这么卡,是不是要重装系统or更换设备的, 啊,更换设备的土豪请随意
- 02--java--环境搭建
第一步,下载JDK 去ORACLE官网http://www.oracle.com下载 有安装版和绿色版,安装版一路下一步,绿色版解压缩压缩包就行了 安装版直接自动配置环境变量,绿色版需要自己配置环境变 ...
- Object-c的字符串处理常用方法
Object-c的字符串处理常用方法 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { ...
- 【WPF学习】第二十七章 Application类的任务
上一章介绍了有关WPF应用程序中使用Application对象的方式,接下来看一下如何使用Application对象来处理一些更普通的情况,接下俩介绍如何初始化界面.如何处理命名行参数.如何处理支付窗 ...
- linux 移动复制删除
linux下文件的复制.移动与删除命令为:cp,mv,rm一.文件复制命令cp 命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination) ...
- mysql建立高效索引分析
一.如何建立理想的索引? 查询频繁度 区分度 索引长度 覆盖字段 1.1区分度 假设100万用户,性别基本上男/女各为50W, 区分度就低. 1.2长度小 索引长度直接影响索引文件的大小,影响增删改的 ...
- 3、IP地址划分
划分子网方法:1.你所选择的子网掩码将会产生多少个子网?:2 的x 次方(x 代表被借走的主机位数)2.每个子网能有多少主机?: 2 的y 次方-2(y 代表被借走之后剩余的主机位数)3.块大小:bl ...
- C陷阱与缺陷学习笔记
导读 程序是由符号(token)序列所组成的,将程序分解成符号的过程,成为"词法分析". 符号构成更大的单元--语句和声明,语法细节最终决定了语义. 词法陷阱 符号(token)指 ...
- iomanip、cstring、string、sstream
#include<iomanip> 控 制 符 作 用 ...
- 面试官:你连RESTful都不知道我怎么敢要你? 文章解析
面试官:你连RESTful都不知道我怎么敢要你?文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接口4.一致的数据格式4.系统分层5.可缓 ...