使用springboot创建工程
工具:
IntelliJ IDEA Community Edition
jdk 1.8
1、创建Maven工程
注:不勾选Create from archetype,jdk 1.8以上
2、填写GroupId(组织名称) 和 ArtifactId(工程名称)
3、选择路径,Finish
配置springboot工程
1、修改pom.xml
添加以下代码到pom.xml
<!-- 依赖starter-parent-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
</parent>
<dependencies>
<!-- 这是一个web项目-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--数据库支持-->
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
<!-- 添加jpa -->
<!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-jpa -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
<version>1.5.1.RELEASE</version>
</dependency>
<!-- 只需引入spring-boot-devtools 即可实现热部署 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<!-- Json包 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.16</version>
</dependency>
<!-- 为了监控数据库 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.25</version>
</dependency>
<!-- excel -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.14</version>
</dependency>
<!-- 热部署 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<!-- maven repackage插件 创建一个自动可执行的jar或war文件 -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<!-- 指定compiler版本为1.8(默认为1.5),否则提示不支持Lambda表达式-->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
2、修改application.properties
在resources下新建application.properties文件,并添加以下内容:
#server的端口和编码
server.port=8888
server.tomcat.uri-encoding=utf-8
#指定MySQL数据库及地址、编码、用户名、密码
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=utf8
spring.datasource.username=user
spring.datasource.password=pwd
#配置Spring Data JPA
#spring.jpa.show-sql配置使运行时输出SQL语句
#hibernate.hbm2ddl.auto节点的值有几个create、create-drop、update、validate、none
#create:每次加载hibernate会自动创建表,以后启动会覆盖之前的表,所以这个值基本不用,严重会导致的数据的丢失。
#create-drop:每次加载hibernate时根据model类生成表,但是sessionFactory一关闭,表就自动删除,下一次启动会重新创建。
#update:加载hibernate时根据实体类model创建数据库表,这时表名的依据是@Entity注解的值或者@Table注解的值,sessionFactory关闭表不会删除,且下一次启动会根据实体model更新结构或者有新的实体类会创建新的表。
#validate:启动时验证表的结构,不会创建表
#none:启动时不做任何操作
spring.jpa.database=MYSQL
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
# 使用ImprovedNamingStrategy命名策略
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy
# 数据库方言
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
#视图层控制,指定模板和静态资源位置
spring.mvc.view.prefix=classpath:/templates/
spring.mvc.view.suffix=.html
spring.mvc.static-path-pattern=/static/**
接下来就是编写代码了:
1、在com.xxx包下添加入口类
Application.java
@SpringBootApplication
@ComponentScan(basePackages = "com.xxx")//指定spring扫描bean的目录
public class Application {
//入口
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
//打印装载的bean
@Bean
public CommandLineRunner commandLineRunner(ApplicationContext ctx) {
return args -> {
System.out.println("Let's inspect the beans provided by Spring Boot:");
String[] beanNames = ctx.getBeanDefinitionNames();
Arrays.sort(beanNames);
for (String beanName : beanNames) {
System.out.println(beanName);
}
};
}
}