余談
私は心のプロフィールを見るために多くの時間が崩壊する、我々はSSMの時代から来ていると信じています。時には間違った場所に設定ファイル、プロジェクト全体は、おそらく実行されません、または単にエラーを見つけることができない、「怒っているMoは」必須の本プログラムの猿になっています。。。不可解幸せ、その後春ブーツが現れなり、最終的には、設定ファイルの毎日に直面する必要はありません!春のブートフレームは、世界で最高です!ハハ。
輸入依存度
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
設定ファイルを変更します。
application.properties:
spring.profiles.active: dev
application-dev.properties:
server.port = 8080
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.url = jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
spring.datasource.driver-class-name = com.mysql.jdbc.Driver
mybatis.mapper-locations = classpath:mapping/*Mapper.xml
mybatis.type-aliases-package = edu.szu.test.entity
logging.level.com.example.mapper = debug
ここで私は2つの設定ファイル、application.propertiesとapplication-dev.propertiesを使用しています。なぜ我々は、設定ファイルには、それを書かれていないことができますか?
私たちは上の環境プロジェクト、開発環境、テスト環境、本番環境、およびさまざまながありますが、一般的に言えば、プロジェクト環境で複数のセットを設定する必要があるためです。環境で使用される各パラメータが異なっているので、我々は書くためにのみメイン設定ファイルの設定ファイルで使用する場合の環境でこれを使用したいマスター設定ファイルにそれぞれの環境の構成パラメータを置くことができますライン上。
スプリングブートマルチ環境設定ファイル名に用途向け{プロファイルは}フォーマットの.properties満たす必要がある、ということに注意してください、自分の環境に対応する、請求{プロファイル}識別、など。
- application-dev.properties:開発環境
- application-test.properties:テスト環境
- application-prod.properties:本番環境
これは、特定のコンフィギュレーションファイルがロードされたように、その値が値{プロファイル}に対応spring.profiles.active application.propertiesファイル属性で設定する必要があります。
データテーブルを作成します。
次のようにSQLコードは次のようになります。
CREATE TABLE `book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(10) NOT NULL,
`price` float NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
データテーブル構造は、
私は2つのデータを挿入した見ることができます
作成POJO
エンティティのパッケージを作成し、POJO内のパッケージを作成します
public class Book {
private Integer id;
private Float price;
private String name;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Float getPrice() {
return price;
}
public void setPrice(Float price) {
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Book{" +
"id=" + id +
", name='" + name + '\'' +
", price='" + price + '\'' +
'}';
}
}
マッパーを作成します。
マッパーパッケージを作成し、内部のパッケージにマッパーを作成
public interface BookMapper {
Book selectById(int id);
}
ファイルmapper.xmlを作成します。
src / main / resourcesディレクトリには、フォルダのマッピングを作成し、新しいファイルBookMapper.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="edu.szu.test.mapper.BookMapper">
<resultMap id="BaseResultMap" type="edu.szu.test.entity.Book">
<result column="id" jdbcType="INTEGER" property="id" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="price" jdbcType="REAL" property="price" />
</resultMap>
<select id="selectById" resultType="edu.szu.test.entity.Book">
select * from book where id = #{id}
</select>
</mapper>
サービスを作成します。
サービスパッケージを作成し、パッケージ内のサービス・インターフェースを作成します
public interface BookService {
public Book select(int id);
}
作成serviceImpl
パッケージを作成し、内部のパッケージにサービス実装クラスを作成しますServiceImpl
@Service
public class BookServiceImpl implements BookService{
@Autowired
BookMapper bookMapper;
public Book select(int id) {
return bookMapper.selectById(id);
}
}
コントローラの作成
コントローラパッケージを作成し、内部のパッケージに、コントローラの実装クラスを作成します
@RestController
@RequestMapping("/test")
public class BookController {
@Autowired
private BookService bookService;
@RequestMapping("getBook/{id}")
public String GetUser(@PathVariable int id){
return bookService.select(id).toString();
}
}
起動クラスを変更します。
@SpringBootApplication
@MapperScan("edu.szu.test.mapper")
public class TestApplication {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
}
起動クラス上行コメント@MapperScan(「edu.szu.test.mapper」)を追加し、ショー・マッパー・ファイルのパスをスキャンする必要があります。
最後に、我々はそれをテスト!
ブラウザにhttpで入力します:// localhostを:8080 /テスト / getBook / 1、 以下の結果は
、ブラウザでhttpを入力してください:// localhostを:8080 /テスト/ getBook / 2、 結果がされている
、我々が以前に作成したデータテーブルと組み合わせて
証拠を春ブーツとMyBatisのが正常に統合されています。
最後に私のフレーム構造を送ります