![]() |
ɽ¶«ÊÖ»ú±¨
º£±¨ÐÂÎÅ
¹«¹²Íø¹Ù·½Î¢ÐÅ
¹«¹²Íø¹Ù·½Î¢²©
¶¶Òô
ÈËÃñºÅ
È«¹úµ³Ã½Æ½Ì¨
ÑëÊÓƵ
°Ù¼ÒºÅ
¿ìÊÖ
Í·ÌõºÅ
ßÙÁ¨ßÙÁ¨
ÉîÛÚÐÂÎÅÍø
¸êçâÃ÷
ÊÖ»ú¼ì²ì
appearance²å¼þÊÇÒ»¸öÓÃÓÚMybatisµÄ¹¤¾ß¿â£¬Ö¼ÔÚÌáÉý¿ª·¢ÕßµÄÊÂÇéЧÂʺʹúÂë¿Éά»¤ÐÔ¡£Ëüͨ¹ýÌṩһϵÁÐÔöÇ¿¹¦Ð§£¬¼ò»¯ÁËCRUD²Ù×÷£¬¼õÉÙÁËÖظ´´úÂ룬ʹµÃʹÓÃMybatis±äµÃÔ½·¢¸ßЧºÍÓä¿ì¡£
Òª¿ªÊ¼Ê¹ÓÃappearance²å¼þ£¬Ê×ÏÈÐèÒª½«ÆäÌí¼Óµ½ÏîÄ¿µÄÒÀÀµÖС£¹ØÓÚMavenÏîÄ¿£¬ÔÚpom.xmlÖÐÌí¼ÓÒÔÏÂÒÀÀµ£º
<dependency>
<groupId>com.github.jayee</groupId>
<artifactId>mybatis-appearance</artifactId>
<version>${appearance.version}</version>
</dependency>
ÅäÖÃMybatisµÄXMLConfigBuilder»òAnnotationSqlSessionFactoryBuilder£¬×¢²áappearance²å¼þ£º
plugins {
add(new AppearancePlugin());
}
appearance²å¼þµÄ¹¦Ð§Ö÷ÒªÌåÏÖÔÚÒÔϼ¸¸ö·½Ã棺
¸Ã²å¼þÄܹ»Æ¾¾ÝʵÌåÀàµÄ×Ö¶Î×Ô¶¯Éú³É»ù´¡µÄCRUD SQLÓï¾ä¡£ÀýÈ磬¹ØÓÚÒ»¸öUserʵÌåÀ࣬¿ÉÒÔͨ¹ýÒÔÏ·½·¨¿ìËÙÉú³É²åÈëÓï¾ä£º
@InsertProvider(type = UserDao.class, method = "insertUser")
public interface UserDao extends BaseMapper<User> {
String INSERT_USER = "insert into t_user ...";
}
ͨ¹ýappearance£¬INSERT_USERÓï¾ä¿ÉÒÔ×Ô¶¯Éú³É£¬¼õÉÙÊÖ¶¯±àдSQLµÄÊÂÇéÁ¿¡£
appearance²å¼þ»¹Ìṩ¶ÔCRUD²Ù×÷µÄÔöÇ¿Ö§³Ö£¬°üÀ¨·ÖÒ³ÅÌÎÊ¡¢Ìõ¼þ½á¹¹Æ÷µÈ¡£ÀýÈ磬ÔÚÅÌÎÊÓû§Ê±£¬¿ÉÒÔͨ¹ý¶¯Ì¬Ìõ¼þ¹¹½¨Æ÷À´Áé»îµØÌí¼ÓÅÌÎÊÌõ¼þ£º
UserQuery query = new UserQuery().setUsername("test")
.setAgeGreaterThan(18);
List<User> users = userDao.selectByQuery(query);
ÕâÖÖ·½·¨±È¹Å°åµÄ@Where×¢½âÔ½·¢Áé»îºÍÇ¿´ó¡£
appearance²å¼þÄÚÖÃÁËÐí¶àÓÐÓõÄÀ¹½ØÆ÷£¬ÓÃÓÚ´¦ÀíÊÂÎñ¡¢ÈÕÖ¾¼Í¼¡¢ÐÔÄܼà¿ØµÈ¹¦Ð§¡£ÀýÈ磬ÆôÓÃÐÔÄܼà¿ØÀ¹½ØÆ÷£º
interceptors.add(new PerformanceInterceptor());
Õâ¿ÉÒÔ×ÊÖú¿ª·¢Õß¼à¿ØSQLÖ´ÐÐʱ¼ä£¬ÓÅ»¯Êý¾Ý¿âÐÔÄÜ¡£
appearance²å¼þµÄÉè¼ÆºÜÊÇÁé»î£¬ÔÊÐí¿ª·¢Õßƾ¾ÝÐèÒª×Ô½ç˵²å¼þÐÐΪ¡£Í¨¹ýÀ©Õ¹AbstractPluginÀ࣬¿ÉÒÔʵÏÖ×Ô½ç˵²å¼þ£¬Âú×ãÌض¨ÒµÎñÐèÇó¡£
ÒÔÏÂÊÇÒ»¸öʹÓÃappearance²å¼þµÄÍêÕûʾÀý£º
@TableName("t_user")
public class User {
@TableId
private Long id;
private String username;
private Integer age;
// getters and setters
}
@Mapper
public interface UserDao extends BaseMapper<User> {
}
<mappers>
<mapper resource="UserDao.xml"/>
</mappers>
<plugins>
<plugin type="com.github.jayee.mybatis.appearance.plugin.AppearancePlugin"/>
</plugins>
@Autowired
private UserDao userDao;
public void test() {
User user = new User();
user.setUsername("test");
user.setAge(20);
userDao.insert(user);
}
appearance²å¼þͨ¹ýÌṩ×Ô¶¯»¯µÄSQLÉú³É¡¢ÔöÇ¿µÄCRUD²Ù×÷ºÍÁé»îµÄ²å¼þ»úÖÆ£¬ÏÔÖøÌáÉýÁËMybatisµÄʹÓÃÌåÑé¡£Ëü¼õÉÙÁËÖظ´´úÂ룬Ìá¸ßÁË¿ª·¢Ð§ÂÊ£¬Í¬Ê±ÌṩÁ˸»ºñµÄ¹¦Ð§À©Õ¹ÄÜÁ¦¡£Èç¹ûÄúÕýÔÚÑ°ÕÒÒ»¸öÄܹ»¼ò»¯Mybatis¿ª·¢µÄ¹¤¾ß£¬appearanceÎÞÒÉÊÇÒ»¸öÖµµÃʵÑéµÄÓÅÐãÑ¡Ôñ¡£
Copyright (C) 2001- dzwww.com. All Rights Reserved
ÐÂÎÅÐÅϢЧÀÍÐí¿ÉÖ¤ - ÒôÏñÖÆÆ·³öÊéÐí¿ÉÖ¤ - ¹ã²¥µçÊÓ½ÚÄ¿ÖÆ×÷¾ÓªÐí¿ÉÖ¤ - ÍøÂçÊÓÌýÐí¿ÉÖ¤ - ÍøÂçÎÄ»¯¾ÓªÐí¿ÉÖ¤
ɽ¶«Ê¡»¥ÁªÍø´«Ã½¼¯ÍÅÖ÷°ì ÁªÏµµç»°£º**2 Î¥·¨²»Á¼ÐÅÏ¢¾Ù±¨µç»°£º**0
Copyright (C) 2001- Dzwww ³ICP±¸09023866ºÅ-1