Springboot項目搭建以及整合mybatis——eclipse

第一步:點左上角 File-New-Maven Project 

然後在pom文件中添加相關依賴,

 <properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.8</java.version>
	</properties>
 
	<dependencies>
	
		<!-- 添加支持web的模塊 -->
		<dependency>
	        <groupId>org.springframework.boot</groupId>
	        <artifactId>spring-boot-starter-web</artifactId>
	        <version>2.0.5.RELEASE</version>
	    </dependency>
	    
		<!-- 核心模塊,包括自動配置支持,日誌 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter</artifactId>
			<version>2.0.5.RELEASE</version>
		</dependency>
		
		<!-- 測試模塊, 包括 Junit -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<version>2.0.5.RELEASE</version>
			<scope>test</scope>
		</dependency>
		
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
			<version>1.1.1</version>
		</dependency>
		
	     <dependency>
	        <groupId>mysql</groupId>
	        <artifactId>mysql-connector-java</artifactId>
	    	 <version>5.1.39</version> 
	    </dependency>
		
	</dependencies>
	
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
	                <fork>true</fork>
	            </configuration>
			</plugin>
			
			<!-- 解決沒有web.xml導致報錯的  web.xml is missing and <failOnMissingWebXml> is set to true -->
			<plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
        
		</plugins>
	</build>
  

 

第二步:新建Application類

package com.baidu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;

//括號裏的是解決現在沒有連接數據庫啓動報錯,等會整合完mybatis就要把括號刪掉,只需保留@SpringBootApplication
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class Application {
	
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
		System.out.println("web Spring Boot start!");
	}
}

新建目錄,以及測試controller

第三步:在Application類啓動main方法;在瀏覽器訪問地址localhost:8080/test,訪問成功!

 

下面整合mybatis,新建所需的類;

(1)在application.properties添加配置;

mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.baidu.entity
 
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.url = jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8
spring.datasource.username = root
spring.datasource.password = root

(2)實體類UserEntity

package com.baidu.entity;

public class UserEntity {
	
	private String name;
	
	private int age;
	
	private String gender;

	public String getName() {
		return name;
	}

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

	public int getAge() {
		return age;
	}

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

	public String getGender() {
		return gender;
	}

	public void setGender(String gender) {
		this.gender = gender;
	}

	@Override
	public String toString() {
		return "UserEntity [name=" + name + ", age=" + age + ", gender=" + gender + "]";
	}
	
}

(3)mapper

package com.baidu.mapper;

import org.apache.ibatis.annotations.Mapper;

import com.baidu.entity.UserEntity;

@Mapper
public interface TestMapper {

	void insertUser(UserEntity user);

	UserEntity findUserByName(String name);
}

(3)Service

package com.baidu.service;

import com.baidu.entity.UserEntity;

public interface TestService {
	
	void insertUser(UserEntity user);
	
	UserEntity findUserByName(String name);
}
package com.baidu.service.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.baidu.entity.UserEntity;
import com.baidu.mapper.TestMapper;
import com.baidu.service.TestService;

@Service
public class TestServiceImpl implements TestService {
	
	@Autowired
	private TestMapper testMapper;

	public void insertUser(UserEntity user) {
		testMapper.insertUser(user);
	}

	public UserEntity findUserByName(String name) {
		return testMapper.findUserByName(name);
	}

}

(4)mapper.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.baidu.mapper.TestMapper">
	<select id="findUserByName" parameterType="String" resultType="com.baidu.entity.UserEntity">
		select * from test where name=#{name}
	</select>
	
	<insert id="insertUser" parameterType="com.baidu.entity.UserEntity">
		INSERT INTO test VALUES (#{name}, ${age}, #{gender});
	</insert>
</mapper>

(5)新建測試類 Junit

package com.baidu.test;

import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.junit.Test;

import com.baidu.entity.UserEntity;
import com.baidu.service.TestService;

@RunWith(SpringRunner.class)
@SpringBootTest
public class MysqlTest {

	@Autowired
	private TestService testService;
	
	@Test
	public void insertUser() {
		UserEntity user = new UserEntity();
		user.setAge(44);
		user.setGender("女");
		user.setName("菜虛鯤");
		testService.insertUser(user);
	}
	
	@Test
	public void findUserByName() {
		System.out.println(testService.findUserByName("菜虛鯤"));
	}
}

大功告成!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章