酸爽!IDEA 中那么玩 MyBatis,让编号速率飞起!

阅读  ·  发布日期 2021-03-26 02:06  ·  admin
1. 构建 MyBatis Generator 软件自然环境a. 加上软件依靠 pom.xmlb. 配备文档 generatorConfig.xmlc. 数据信息库配备文档 jdbc.propertiesd. 配备软件起动项2.新项目实战演练a. 例如在一个新项目 大家要删掉某一工作组下某一客户的信息内容b. 依据工作组ID(非主键 升级工作组信息内容)c. 各种各样查寻

IDEA 反向 MyBatis 工程项目时,不象适用 Hibernate 那般有内置软件,必须集成化第三方的 MyBatis Generator。

MyBatis Generator的详尽详细介绍

这篇blog详解 MyBatis Generator 的应用全过程,并融合实战演练表明反向工程项目的应用方法。

1. 构建 MyBatis Generator 软件自然环境a. 加上软件依靠 pom.xml
 !--mybatis 反向转化成软件-- 
  plugin 
  .mybatis.generator /groupId 
  artifactId mybatis-generator-maven-plugin /artifactId 
  version 1.3.2 /version 
  configuration 
  configurationFile src/main/resources/generatorConfig.xml /configurationFile 
  verbose true /verbose 
  overwrite true /overwrite 
  /configuration 
  executions 
  execution 
  id Generate MyBatis Artifacts /id 
  /execution 
  /executions 
  dependencies 
  dependency 
  .mybatis.generator /groupId 
  artifactId mybatis-generator-core /artifactId 
  version 1.3.2 /version 
  /dependency 
  /dependencies 
  /plugin 
b. 配备文档 generatorConfig.xml
 ?xml version= 1.0  encoding= UTF-8 ? 
 !DOCTYPE generatorConfiguration
 PUBLIC  -////DTD MyBatis Generator Configuration 1.0//EN 
  dtd/mybatis-generator-config_1_0.dtd 
 generatorConfiguration 
  properties resource= jdbc.properties / 
  classPathEntry location= ${jdbc_driverLocation} /   !--特定特殊数据信息库的jdbc驱动器jar包的部位-- 
  context id= default  targetRuntime= MyBatis3 
  !-- optional,致力于建立class时,对注解开展操纵 -- 
  commentGenerator 
  property name= suppressDate  value= true / 
  property name= suppressAllComments  value= true / 
  /commentGenerator 
  !--jdbc的数据信息库联接 -- 
  jdbcConnection
 driver >

c. 数据信息库配备文档 jdbc.properties
jdbc_driverLocation=D:\\Program Files\\Repository\\mysql\\mysql-connector-java\\5.1.38\\mysql-connector-java-5.1.38.jar
jdbc_driver >d. 配备软件起动项

image.png

2.新项目实战演练

User类便是一般的实体线类,界定了数据信息库相匹配的字段名,及其set/get方式

Mybatis 引进了 Example 类,用于封裝数据信息库查寻标准。

a. 例如在一个新项目 大家要删掉某一工作组下某一客户的信息内容
 public int deleteUserApplyInfo(long user_id,long team_id){
 StudyTeamUserApplyInfoExample ue = new StudyTeamUserApplyInfoExample();
 ue.createCriteria().andUserIdEqualTo(new BigDecimal(user_id)).andTeamIdEqualTo(new BigDecimal(team_id));
 return studyTeamUserApplyInfoDAO.deleteByExample(ue);
 }
b. 依据工作组ID(非主键 升级工作组信息内容)
public int updateStudyTeamInfo(StudyTeamInfo st){
 StudyTeamInfoExample ste = new StudyTeamInfoExample();
 ste.createCriteria().andTeamIdEqualTo(st.getTeamId());
 return studyTeamInfoDAO.updateByExampleSelective(st,ste);
 }
c. 各种各样查寻

(1)模糊不清查寻而且排列

public List StudyTeamInfo  getStudyTeamInfoByName(String team_name){
 StudyTeamInfoExample se = new StudyTeamInfoExample();
 se.createCriteria().andTeamNameLike( % +team_name+ % ).andEnableEqualTo((short)1);
 se.setOrderByClause( team_score desc 
 List StudyTeamInfo  ls = studyTeamInfoDAO.selectByExample(se);
 if(ls!=null ls.size() 0){
 return ls;
 }
 return null;
 }

(2)超过相当于某一成绩 而且低于某一成绩的查寻

public StudyTeamLevel getStudyTeamLevel(long score){
 StudyTeamLevelExample le = new StudyTeamLevelExample();
 le.createCriteria().andNeedScoreLessThanOrEqualTo(score).andUpScoreGreaterThan(score);
 List StudyTeamLevel  ls = studyTeamLevelDAO.selectByExample(le);
 if(ls!=null ls.size() 0){
 return ls.get(0);


文中由网站站长原創或搜集,不意味着本网站观点,倘若转截,请标明出處: