SpringBootはMybatisを統合して追加削除・変更機能を完了
9203 ワード
1.私が使っている開発ツールはSpring-tool-suiteです.このツールはSptingタイプのプロジェクトを作成するのに適しています.(この文章の冒頭に使用紹介があります.http://blog.csdn.net/baidu_36216018/article/details/79461016;IDEAツールを使用しても、)
2.プロジェクトを作成します.
① new--->Spring Stater project
②
③:必要な依存パッケージの検索
④: pomで前の選択の依存性を発見しました.xmlファイルは自動的に私たちのファイルに追加されました.
2.コードの作成といくつかの構成の開始
まず、私のプロジェクトの最後のディレクトリ構造を見てみましょう.
①:自分で作成したデータテーブルフィールドはid,name,password,numberの4つのフィールドidはintタイプで、その他はStringタイプです.
src/main/javaディレクトリの下にcontrollerレイヤ、entityレイヤ、mapperレイヤ、serviceレイヤを追加
EntityレイヤのエンティティークラスUser:
mapperレイヤのUserMapperクラス:
サービス層の実装クラスUservice:
次に、
UserMapperのマッピングファイルxmlをsrc/main/resourcesの下に書きます.
UserMapper.xml
最後にアプリケーションを構成します.propertiesプロファイル:
起動プログラムのエントリクラスjava
postmainというツールでテストしました.
クエリーのすべての情報をテストします.http://localhost:8080/CRUD/ListUser
テストはnameに基づいてデータをクエリーします.
http://localhost:8080/CRUD/ListUserByname?name=王さん
Idに基づいてデータを削除するテスト:
http://localhost:8080/CRUD/delete?id=40
テストは、挿入データに基づいて行われます.http://localhost:8080/CRUD/insert?name=波&password=123456&number=123
修正データのテスト:http://localhost:8080/CRUD/update?id=46&name=zyb&password=9999999&number=5555
終わりだ!ソースアドレス-->コードクラウド:ソースアドレス
2.プロジェクトを作成します.
① new--->Spring Stater project
②
③:必要な依存パッケージの検索
④: pomで前の選択の依存性を発見しました.xmlファイルは自動的に私たちのファイルに追加されました.
2.コードの作成といくつかの構成の開始
まず、私のプロジェクトの最後のディレクトリ構造を見てみましょう.
①:自分で作成したデータテーブルフィールドはid,name,password,numberの4つのフィールドidはintタイプで、その他はStringタイプです.
src/main/javaディレクトリの下にcontrollerレイヤ、entityレイヤ、mapperレイヤ、serviceレイヤを追加
EntityレイヤのエンティティークラスUser:
package com.example.demo.entity;
public class User {
private int id;
private String name;
private String password;
private String number;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", password=" + password + ", number=" + number + "]";
}
}
mapperレイヤのUserMapperクラス:
package com.example.demo.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import com.example.demo.entity.User;
@Mapper
public interface UserMapper {
List findUserByName(String name);
public List ListUser();
public int insertUser(User user);
public int delete(int id);
public int Update(User user);
}
サービス層の実装クラスUservice:
package com.example.demo.service;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public List findByName(String name) {
return userMapper.findUserByName(name);
}
public User insertUser(User user) {
userMapper.insertUser(user);
return user;
}
public List ListUser(){
return userMapper.ListUser();
}
public int Update(User user){
return userMapper.Update(user);
}
public int delete(int id){
return userMapper.delete(id);
}
}
controller層のアクセスクラスCRUD:package com.example.demo.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import com.example.demo.entity.User;
import com.example.demo.service.UserService;
@RestController
@RequestMapping(value = "/CRUD", method = { RequestMethod.GET, RequestMethod.POST })
public class CRUD {
@Autowired
private UserService userservice;
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public String delete(int id) {
int result = userservice.delete(id);
if (result >= 1) {
return " ";
} else {
return " ";
}
}
@RequestMapping(value = "/update", method = RequestMethod.POST)
public String update(User user) {
int result = userservice.Update(user);
if (result >= 1) {
return " ";
} else {
return " ";
}
}
@RequestMapping(value = "/insert", method = RequestMethod.POST)
public User insert(User user) {
return userservice.insertUser(user);
}
@RequestMapping("/ListUser")
@ResponseBody
public List ListUser(){
return userservice.ListUser();
}
@RequestMapping("/ListUserByname")
@ResponseBody
public List ListUserByname(String name){
return userservice.findByName(name);
}
}
次に、
UserMapperのマッピングファイルxmlをsrc/main/resourcesの下に書きます.
UserMapper.xml
INSERT INTO user
(
id,name,password,number
)
VALUES (
#{id},
#{name, jdbcType=VARCHAR},
#{password, jdbcType=VARCHAR},
#{number}
)
delete from user where id=#{id}
update user set user.name=#{name},user.password=#{password},user.number=#{number} where user.id=#{id}
最後にアプリケーションを構成します.propertiesプロファイル:
spring.datasource.url = jdbc:mysql://localhost:3306/test
spring.datasource.username = root
spring.datasource.password = 11111111
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.max-active=20
spring.datasource.max-idle=8
spring.datasource.min-idle=8
spring.datasource.initial-size=10
mybatis.mapper-locations= classpath:mapper/*.xml
起動プログラムのエントリクラスjava
postmainというツールでテストしました.
クエリーのすべての情報をテストします.http://localhost:8080/CRUD/ListUser
テストはnameに基づいてデータをクエリーします.
http://localhost:8080/CRUD/ListUserByname?name=王さん
Idに基づいてデータを削除するテスト:
http://localhost:8080/CRUD/delete?id=40
テストは、挿入データに基づいて行われます.http://localhost:8080/CRUD/insert?name=波&password=123456&number=123
修正データのテスト:http://localhost:8080/CRUD/update?id=46&name=zyb&password=9999999&number=5555
終わりだ!ソースアドレス-->コードクラウド:ソースアドレス