intellij IDEA配置springboot
1.创建一个springboot项目:
![](//img-blog.csdn.net/20180315104359190?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
2.创建项目的文件结构以及jdk的版本
![](//img-blog.csdn.net/20180315104413392?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
3. 选择项目所需要的依赖
![](//img-blog.csdn.net/20180315104428426?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
![](//img-blog.csdn.net/20180315104455585?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
4、文件结构
![](//img-blog.csdn.net/20180315104513517?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
5、项目不使用application.properties文件 而使用更加简洁的application.yml文件:
将原有的resource文件夹下的application.properties文件删除,创建一个新的application.yml配置文件,
文件的内容如下:
server: port: 8080
spring: datasource: name: test url: jdbc:mysql://127.0.0.1:3306/depot username: root password: root # 使用druid数据源 type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver filters: stat maxActive: 20 initialSize: 1 maxWait: 60000 minIdle: 1 timeBetweenEvictionRunsMillis: 60000 minEvictableIdleTimeMillis: 300000 validationQuery: select 'x' testWhileIdle: true testOnBorrow: false testOnReturn: false poolPreparedStatements: true maxOpenPreparedStatements: 20 mybatis: mapper-locations: classpath:mapping/*.xml type-aliases-package: com.winter.model
#pagehelper分页插件 pagehelper: helperDialect: mysql reasonable: true supportMethodsArguments: true params: count=countSql |
6、使用mybatis generator 自动生成代码
generatorConfig.xml配置文件内容如下:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包--> <classPathEntry location="E:\1记\java\jar文件\mysql-connector-java-5.1.7-bin (1).jar"/> <context id="DB2Tables" targetRuntime="MyBatis3"> <commentGenerator> <property name="suppressDate" value="true"/> <!-- 是否去除自动生成的注释 true:是 : false:否 --> <property name="suppressAllComments" value="true"/> </commentGenerator> <!--数据库链接URL,用户名、密码 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/mytest" userId="root" password="123456"> </jdbcConnection> <javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> <!-- 生成模型的包名和位置--> <javaModelGenerator targetPackage="com.chen.model" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- 生成映射文件的包名和位置--> <sqlMapGenerator targetPackage="mapping" targetProject="src/main/resources"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <!-- 生成DAO的包名和位置--> <javaClientGenerator type="XMLMAPPER" targetPackage="com.chen.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名--> <table tableName="t_user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> </context> </generatorConfiguration> |
![](//img-blog.csdn.net/20180315104617316?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
点击
![](//img-blog.csdn.net/20180315104633207?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
spring-boot-devtools是一个为开发者服务的一个模块,其中最重要的功能就是自动应用代码更改到最新的App上面去。
原理是在发现代码有更改之后,重新启动应用,但是速度比手动停止后再启动更快。
其深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader
,这样在有代码更改的时候,原来的restart ClassLoader被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间。
即devtools会监听classpath下的文件变动,并且会立即重启应用(发生在保存时机)
一、开启idea自动make功能
1、CTRL + SHIFT + A --> 查找make project automatically --> 选中
![](//img-blog.csdn.net/20180315104649973?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
2、CTRL + SHIFT + A --> 查找Registry --> 找到并勾选compiler.automake.allow.when.app.running
![](//img-blog.csdn.net/20180315104709739?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L2NoZW5fTmV2ZXJSZXRyZWF0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
最后重启idea
一、使用spring-boot-1.3开始有的热部署功能
1、加maven依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional></dependency>
2、开启热部署
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <fork>true</fork>//该配置必须 </configuration> </plugin> </plugins> </build> |