Spring Boot (1)--建立项目

本文介绍了如何在Windows环境中使用IntelliJ IDEA创建Spring Boot项目。从新建项目、配置属性、建立Controller到使用JPA操作数据库,详细阐述了每个步骤,并展示了如何启动项目和通过RESTful API获取数据。

转载请注明出处:https://blog.youkuaiyun.com/qq_30186661/article/details/80223302

一、平台及工具

平台:Window7

工具:IntelliJ Idea 2017.2.2 | JDK8 | mysql

框架:SpringBoot

二、项目建立步骤

1.File->New->Project->Spring Initialize

    Name:firstSpringBoot

    Java Version:7

    Dependencies:Web->Web

    建立完成后,

        1)java.com.example.demo目录下会出现FirstSpringBootApplication.java文件,里面的main函数是web应用启动的入口;

        2)项目目录下出现pom.xml文件,里面包含了如下图的依赖描述.

	<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-test</artifactId>
			<scope>test</scope>
		</dependency>

	</dependencies>

2.设置属性

2.1配置属性(也可以不手工配置,使用默认配置)

在类路径下的application.properties文件添加属性如下:

server.port=8080
server.servlet.context-path=/springboot

这些属性用于配置项目的启动环境。

2.2注入属性

在类路径下的application.properties文件添加属性如下:

girl.name=B
girl.age=18
girl.content=content: ${girl.name},age:${girl.age}

这些属性可以在controller中直接使用。

3.建立Controller

在FirstSpringBootApplication.java目录下建一个测试用的HelloController.java,内容如下:

@ConfigurationProperties(prefix = "girl")
@RestController
public class HelloController {
//    @Value("${girl.name}")
    private String name;
//    @Value("${girl.content}")
    private String content;
    @RequestMapping(value={"/hello","/hi"},method= RequestMethod.GET)
    public String say(){
        return content;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }
}

上面用到的各种注解都是SpringMVC中的注解。其中@RestController用于告诉Spring,由Spring管理该对象的生命周期;

 

@ConfigurationProperties用于告诉Spring,由Spring进行属性的setter注入,所以这种方式需要setter函数;@Value用于告诉Spring,由Spring进行属性的构造函数注入,因此这种方式不需要setter函数;@RequestMapping用于告诉Spring,由Spring将请求url映射到对应的servlet方法。

4.启动项目

启动项目,然后在浏览器输入localhost:8080/springboot/hi,即可在页面看到hello, you!!。

三、用jpa操作数据库

1.添加依赖描述

在pom.xml中添加如下依赖描述:

	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-data-jpa</artifactId>
	</dependency>

	<dependency>
		<groupId>mysql</groupId>
		<artifactId>mysql-connector-java</artifactId>
	</dependency>

2.配置数据库信息

在application.properties中添加如下数据库配置信息和hibernate管理数据库表的信息:

spring.datasource.driver-class-name = com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/pro_sale?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8
spring.datasource.username=root
spring.datasource.password=root

spring.jpa.hibernate.ddl-auto=create
spring.jpa.show-sql=true

这里ddl-auto配置的意义是让hibernate第一次操作数据库时,建立对应的表。

3.建立dao

在dao文件夹下建立dao接口:

@Service@Transactional
public interface GirlRep extends JpaRepository<Girl, Integer> {
}

dao接口不需要添加任何接口,只需要继承JpaRespository,该接口中有数据库的增删查改操作。

4.建立entity

在model文件夹下建立Entity实例:

@Entity
public class Girl {
    @Id
    @GeneratedValue
    private Integer  id;
    private String name;
    private Integer age;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}

5.建立Controller

@RestController
public class GirlController {
    @Autowired
    private GirlRep girlRep;

    @RequestMapping(value="/girls", method= RequestMethod.GET)
    public List<Girl> getGirlList(){
        return girlRep.findAll();
    }

    @RequestMapping(value="/girls",method = RequestMethod.POST)
    public Girl addGirl(@RequestParam("name") String name, @RequestParam("age") Integer age){
        Girl girl=new Girl();
        girl.setAge(age);
        girl.setName(name);
        return  girlRep.save(girl);
    }
}

6.启动

1)启动项目

2)在数据库插入一条girl的信息

3)在页面输入localhost:8080/springboot/girls,即可看到刚刚插入的girl的json格式数据。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值