1. 程式人生 > >idea工具用springboot整合ssm工程(maven)

idea工具用springboot整合ssm工程(maven)


  這兩天在研究springboot整合ssm工程,下面小編簡單總結一下。 

        專案結構:

      

      

      首先,idea開發工具已經集成了springboot,所以我們利用這點優勢能夠迅速的搭建一個springboot的ssm工程。

一、先搭建一個springboot工程。

  1、在idea中新建一個工程,要選擇Spring Initializer,這時候選擇jdk版本,springboot要求jdk在1.7以上(包括1.7),tomcat在7以上(包括7),點選“next”。

    




    此時,目錄結構是這樣的,SsmspringbootdemoApplication就是我們的入口檔案。


    2、此時,最簡單的一個springboot的demo已經搭建完成了,我們可以簡單測試一下,新建一個類取名為TestController。裡面寫一個簡單的helloWorld。

@RestController    
public class TestController {
    @RequestMapping("helloWorld")
    public String testspringboot(){
        return "HelloWorld";
    }
}

    @RestController註解:標明這是一個控制器,並自動返回json資料。Spring4之後新加入的註解,原來返回json資料需要@Responsebody和@Controller的配合,相當於@Responsebody和@Controller的組合註解。

    @RequestMapping註解:作用在處理器方法上時應用到控制器的所有處理器方法上(對映)。

    3、啟動專案,測試一下,在瀏覽器中輸入http://127.0.0.1:8080/helloWorld。

    

    4、接下來,我們先給idea配上maven,開啟setting(快捷鍵Ctrl+Alt+S)

    

    setting.xml檔案中的有用資訊如下:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>D:\MavenRepository</localRepository>
     <mirrors>
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>
          http://maven.aliyun.com/nexus/content/groups/public/
      </url>
      <mirrorOf>central</mirrorOf>        
    </mirror>
  </mirrors>

    5、新增熱部署配置,在pom.xml檔案中新增依賴:

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-devtools</artifactId>
			<optional>true</optional>
			<scope>true</scope>
		</dependency>
	<build>
		<plugins>
			<!-- 這是spring boot devtool plugin -->
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<!--fork :  如果沒有該項配置,肯呢個devtools不會起作用,即應用不會restart -->
					<fork>true</fork>
				</configuration>
			</plugin>
		</plugins>
	</build>

    我們還需要設定一下,調出setting,勾選上編譯裡的自動編譯選項。

    

    然後 Shift+Ctrl+Alt+/,選擇Registry:

    

    ok了,重啟一下專案,然後改一下類裡面的內容,IDEA就會自動去make了。

二、整合mybatis。

    1、將以下依賴項新增到您的pom.xml中,小編這裡不是用的springboot自帶的mybatis的依賴,而是引入的外部依賴。(Tips:區分是否是springboot自帶的依賴,看看spring-boot的位置是在前面還是後面,這裡的mybatis在前面,所以不是。不是的時候需要加入版本號)

<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>1.2.1</version>
</dependency>

    2、配置資料來源,在springboot指定的配置檔案applicaionProperties中新增資料來源的配置。注意,所有的外部配置都是在這個檔案中進行配置的。另外,我們還需要配置mybatis的mapper的位置以及別名的配置,如下:

########################################################
###datasource資料來源
########################################################
spring.datasource.url = jdbc:mysql:///mysql
spring.datasource.username = root
spring.datasource.password = 123456
spring.datasource.driverClassName = com.mysql.jdbc.Driver
###載入mybatis對應的mapper位置
mybatis.mapper-locations=classpath:mybatis/*.xml
###載入mybatis別名設定
mybatis.type-aliases-package=com.nancy.ssmspringbootdemo.pojo 

    3、建立資料庫,在idea中可自行建立,我們新建資料庫mysql,然後建立dog表,如下:

    4、建立POJO類Dog:

public class Dog implements Serializable{
    private Integer id;
    private String name;
    private String 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 String getAge() {
        return age;
    }

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

    5、建立pojo對應的Mapper,DogMapper.xml,如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.nancy.ssmspringbootdemo.mapper.DogMapper">
    <resultMap id="getDog" type="Dog">
        <result property="name" column="name"/>
        <result property="age" column="age"/>
    </resultMap>
    <select id="getAllDog" resultType="Dog" resultMap="getDog" >
        SELECT * FROM dog
    </select>
</mapper>

    6、建立DogMapper介面:

@Mapper
public interface DogMapper {
    public List<Dog> getAllDog();
}

    7、建立service層:

@Service
public class DogServiceImpl implements DogService{
    @Resource
    private DogMapper dogMapper;
    public List<Dog> getAllDog(){
        dogMapper.getAllDog();
    }
}

    8、建立controller層:

@RestController
public class DogController {
    @Resource
    private DogService dogService;
    @RequestMapping("/getAllDog")
    public List<Dog> getAllDog(){

        List<Dog> dogs = dogService.getAllDog();
        return dogs;
    }
}

    9、這時候,我們已經編寫完了,直接在瀏覽器中輸入地址,如果報錯,再重啟一下專案即可(目前不知道什麼原因),輸入地址,可以得到資料庫中的資訊,如下:

    

    10、啦啦啦,完成了CSDN第一篇部落格。