springboot是由Pivotal团队提供的全新的javaweb框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,spring boot配合maven整合了所有的框架,为javaweb开始提供更多的便捷,也让作为新手的我耳目一新,从开始接触javaweb以来先后,从Servlet、Jsp、再到struts2,spring,最后学习到springboot,springboot无疑是最方便快捷的,减少前面需要步骤,不用再考虑过多框架接口的搭建,让javaweb更加便捷。
一.springboot 开发第一步
搭建springboot开发运行环境:
1.安装 IntelliJ IDEA
官网:http://www.jetbrains.com/idea/download/#section=windows
破解地址:http://idea.lanyus.com/
2.安装MySql
官网:https://www.mysql.com/
3.安装Navicat for MySQL(数据库编辑&查看)
官网:https://www.navicat.com/en/products/navicat-for-mysql
4.安装Postmain(测试)
官网:https://www.getpostman.com/
5.安装MindMaster(XMind也可以,思维导图工具)
6.安装Mockplus(页面原型图设计)
二.需求分析
电商类项目:
![](https://img.haomeiwen.com/i2353278/23a296fd8eb3d219.png)
三.建立数据库表
先使用Navicat新建数据库market
基础表:
1.商品信息表
2.用户信息表
3.商家信息表
4.订单信息表
- 对于开发人员来说,开发不能只是听从安排像个机器,还应该具有自己的一些思维,自己对于产品的考虑,当然这不止于工作中,在学习中也应该有所考虑,我们不能习惯了拾人麦穗,还应该想想怎么去收割。
四.开始编写项目
1.配置pom.xml文件,设置加载组件包
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.sunql</groupId>
<artifactId>market</artifactId>
<version>1</version>
<packaging>war</packaging>
<name>market</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</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>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-legacy</artifactId>
<version>1.1.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
<overwrite>true</overwrite>
<verbose>true</verbose>
</configuration>
</plugin>
</plugins>
</build>
</project>
- 配置这里直接使用了maven加载配置,简化了手动加包的繁琐,不过我们也不能忘记怎么手动加包这个技能,不能应该便利而丧失了我们本来该有的样子。
- build标签是打包配置
- packaging标签是选择打包类型比如war,jar,如果要使用打包到外部tomcat记得在这里设置为war
2.新建服务运行环境配置
-删除application.properties文件
-新建服务运行环境入口application.yml
spring:
profiles:
active: dev //选择环境
datasource:
driver-class-name: com.mysql.jdbc.Driver //mysql驱动
url: jdbc:mysql://localhost:3306/market?useUnicode=true&characterEncoding=UTF-8&useSSL=true
username: root
password: 123456
jpa:
hibernate:
ddl-auto: update //自动创建|更新|验证数据库表结构
show-sql: true
hibernate 解释
- create:
每次加载hibernate时都会删除上一次的生成的表,然后根据你的model类再重新来生成新表,哪怕两次没有任何改变也要这样执行,这就是导致数据库表数据丢失的一个重要原因。 - create-drop :
每次加载hibernate时根据model类生成表,但是sessionFactory一关闭,表就自动删除。 - update:
最常用的属性,第一次加载hibernate时根据model类会自动建立起表的结构(前提是先建立好数据库),以后加载hibernate时根据 model类自动更新表结构,即使表结构改变了但表中的行仍然存在不会删除以前的行。要注意的是当部署到服务器后,表结构是不会被马上建立起来的,是要等 应用第一次运行起来后才会。 - validate :
每次加载hibernate时,验证创建数据库表结构,只会和数据库中的表进行比较,不会创建新表,但是会插入新值。
-新建正式环境application-dev.yml
server:
port: 8181
-新建生产环境application-prod.yml
server:
port: 8182
思考
现在准备工作都准备好了,接下开始正式实战项目。不过在这之前还需要准备工作,比如到底springboot让web开发有了怎么样的便利?
题外话
下一篇,我将写实际业务的完成,希望能够通过这一波文章让自己养成写作的好习惯。
- 如果没有一点基础的朋友也可以看看我关于springboot的第一篇介绍
Springboot-我的web初学道路
网友评论