Java中mybatis example類の使用について詳しく説明します。
この数日間、exampleに接触したばかりです。多くの内容は壊れています。ブログを書いて理解を深めます。
一、何がexample類ですか?
mybatis-generatorは、フィールドごとに上述のCriterionを生成します。テーブルのフィールドが多いと、Exampleクラスは非常に巨大になります。理論的にはexampleクラスを通して、あなたが考えているフィルタ条件を任意に構築できます。mybatis-generatorに配置すると、データテーブルの生成操作が自動的にexampleを生成することができます。具体的な構成はMBG関連の構成を参照することができる。
以下はmybatis自動生成exampleの使用です。
二、exampleメンバー変数を理解する
例えば、私のexampleはuserによって生成され、UserMapperはdao層に属し、UserMapper.xmlは対応するマッピングファイルです。
UserMapperインターフェース:
五、where条件の照会または複数の条件の照会
六、あいまい検索
一、何がexample類ですか?
mybatis-generatorは、フィールドごとに上述のCriterionを生成します。テーブルのフィールドが多いと、Exampleクラスは非常に巨大になります。理論的にはexampleクラスを通して、あなたが考えているフィルタ条件を任意に構築できます。mybatis-generatorに配置すると、データテーブルの生成操作が自動的にexampleを生成することができます。具体的な構成はMBG関連の構成を参照することができる。
以下はmybatis自動生成exampleの使用です。
二、exampleメンバー変数を理解する
//
// : + +asc(desc)
protected String orderByClause;
//
//true
protected boolean distinct;
//
//Criteria , or
protected List<Criteria> oredCriteria;
// Criteria Cretiron ,
// Criteria Cretiron
// AND
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
// mybatis
protected abstract static class GeneratedCriteria
{…..}
// , Where ,
public static class Criterion {……}
三、example使用前の準備例えば、私のexampleはuserによって生成され、UserMapperはdao層に属し、UserMapper.xmlは対応するマッピングファイルです。
UserMapperインターフェース:
long countByExample(CompetingStoreExample example);
List<CompetingStore> selectByExample(CompetingStoreExample example);
私たちのテストクラスで:
UserExample example = new UserExample();
UserExample.Criteria criteria = example.createCriteria();
四、ユーザー数を問い合わせる
long count = UserMapper.countByExample(example);
類似:select count(*)from user五、where条件の照会または複数の条件の照会
example.setOrderByClause("age asc");//
example.setDistinct(false);//
if(!StringUtils.isNotBlank(user.getName())){
Criteria.andNameEqualTo(user.getName());
}
if(!StringUtils.isNotBlank(user.getSex())){
Criteria.andSexEqualTo(user.getSex());
}
List<User> userList=userMapper.selectByExample(example);
似ています。select*from user where name={芰user.name}and sex={啳user.sex}order by age asc;
UserExample.Criteria criteria1 = example.createCriteria();
UserExample.Criteria criteria2 = example.createCriteria();
if(!StringUtils.isNotBlank(user.getName())){
Criteria1.andNameEqualTo(user.getName());
}
if(!StringUtils.isNotBlank(user.getSex())){
Criteria2.andSexEqualTo(user.getSex());
}
Example.or(criteria2);
List<User> userList=userMapper.selectByExample(example);
似ています:select*from user where name={璖user.name}or sex={啖user.sex}六、あいまい検索
if(!StringUtils.isNotBlank(user.getName())){
criteria.andNameLIke(‘%'+name+'%');
}
List<User> userList=userMapper.selectByExample(example);
類似点:
select * from user where name like %{#user.name}%
七、別紙で照会する
int start = (currentPage - 1) * rows;
//
example.setPageSize(rows);
//
example.setStartRow(start);
List<User> userList=userMapper.selectByExample(example);
類似点:
select * from user limit start to rows
以上、Javaのmybatisの中でexample類の使用について詳しく解説した文章を紹介しました。Java mybatisのexample類の内容については、以前の文章を検索したり、下記の関連記事を見たりしてください。これからもよろしくお願いします。