注解是用于描述代码的代码
例如我们直接使用的@Test
使用注解需要先导包
注解的主要作用 用于简化配置文件
Mybstis框架中也提供了注解开发,但是不太好用,实际开发中用的不多
1. MyBatis中也提供了注解进行简化配置, 但是做的不好
2. 因此实际中如果不专门说明, 开发要用配置形式来实现
3. 较为好用的几个注解:
> @Select
> @Insert
> @Update
> @Delete
> @Param
> @Results -> <resultMap>
> @Result -> <resultMap>中的子标签
> @One -> 类似于<association>
> @Many -> 类似于<collection>
关于注解的属性
属性的设定方式是: 属性名=属性值
关于属性值的类型
@Select: 类似于 <select>
@Insert: 类似于 <insert>
@Update: 类似于 <update>
@Delete: 类似于 <delete>
public interface StudentMapper { @Select("select * from t_student") List<Student> selAll(); @Insert("insert into t_student values (default, #{name}, #{age}, #{gender}, #{cid})") int insStu(Student student); @Update("update t_student set age=#{1} where id=#{0}") int updStu(int id, int age); @Delete("delete from t_student where id=#{0}") int delStu(int id)
@Results:类似于<resul tMap>
@Result:类似于<resultMap>的子标签
@One:类似于<association>
@Many:类似于<collection>
public interface StudentMapper { @Select("select * from t_student") @Results(value = { @Result(column="id", property="id", id=true), @Result(column="name", property="name"), @Result(column="age", property="age"), @Result(column="gender", property="gender"), @Result(column="cid", property="cid"), @Result(property="clazz", one=@One(select="com.bjsxt.mapper.ClazzMapper.selById"), column="cid") }) List<Student> sel(); }
public interface ClazzMapper { @Select("select * from t_class where id=#{0}") Clazz selById(int id); }
网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。
序言:使用mybatis3提供的注解可以逐步取代XML,例如使用@Select注解直接编写SQL完成数据查询,使用@SelectProvider高级注解还可以编写动态SQL,以应对复杂的业务需求。一.基础注解mybatis主要提供了以下CRUD注解:@Select@Insert@Update@Delete增删改查占据了绝大部分的业务操作,掌握这些基础注解的使用还是很有必要的,例如下面这段代码无需X
1.简介我在使用spring完成项目的时候需要完成记录日志,我开始以为Spring的AOP功能,就可以轻松解决,半个小时都不用,可是经过一番了解过后,发现一般的日志记录,只能记录一些简单的操作,例如表名、表名称等记录不到。这个时侯就用到了自定义注解,把想要记录的内容放在注解中,通过切入点来获取到注解参数,然后将参数插入数据库记录2.SpringAOP对于SpringAop的基本介绍大家可以看看:h
我们平时的jsp文件都是放到web目录下,现在我们如果把jsp文件放到WEB-INF下,就发现没有办法访问,这样的设计的目的就是为了提高项目访问的安全性所以我们就访问不了了..................................................................................................................
因为之前介绍了maven项目,然后就不在采用导jar包的方式整合SSM(Spring+SpringMVC+mybatis)直接用maven步骤走吧~一用模版创建项目填写好自己的信息没问题就下一步就好二在pom文件中添加依赖并且整合一次推荐直接复制就好,不要手敲~如果有版本要求,修改版本就好
坑点1.script是需要后面的部分的,不能/>来结尾,否则导入不了2.静态资源放行applicationContext-mvc.xml3.添加转换json依赖4.注意Controller写法,不需要跳转页面5.常规方式使用ajax的话页面ajax回调函数后面这样写----------Spring方式不用1.传统方式spring中更推荐使用jackson♥2SSM中使用ajax--超级推荐使用A、
近日,项目中有一个耗时较长的Job存在CPU占用过高的问题,经排查发现,主要时间消耗在往mybatis中批量插入数据。mapperconfiguration是用foreach循环做的,差不多是这样。(由于项目保密,以下代码均为自己手写的demo代码)insertintoUSER(id,nam
一般我们使用@RequestMapping("***")的时候,后面的括号里的***是不能重复的在实际开发过程中,因为不是一个人开发,所以难免会有凑巧的时候,那怎么弄呢?因为上篇用了ajax1的路径,并且两个类都在一个包下,所以就拿来做例子请求转发重定向从上面的例子我们可以看出转发和重定向在SSM中还是非常简单的,主要原因是走了视图解析器--下面内容了解就好第一种第二种ModelAndView:既
思路整理一下之前一直做的都是多对一的查询多:学生一:班级通过查到学生后在去查询班级现在倒过来,做1对多的查询,一个班级多个学生那怎么处理这个多呢,实际上就是吧所有的学生封装进一个集合里表现出来,最直观的就是在class的实体类中添加一个学生类型的集合思路:在pojo里的Class类的属性中加入Student的集合,将查到的Student信息封装进Class类里面pojo层Clazz.classpu
本文讲述@Async注解,在Spring体系中的应用。本文仅说明@Async注解的应用规则,对于原理,调用逻辑,源码分析,暂不介绍。对于异步方法调用,从Spring3开始提供了@Async注解,该注解可以被标注在方法上,以便异步地调用该方法。调用者将在调用时立即返回,方法的实际执行将提交给SpringTaskExecutor的任务中,由指定的线程池中的线程执行。在项目应用中,@Async调用线程池
0、简介mybatis-mate为mp企业级模块,支持分库分表,数据审计、数据敏感词过滤(AC算法),字段加密,字典回写(数据绑定),数据权限,表结构自动生成SQL维护等,旨在更敏捷优雅处理数据。1、主要功能字典绑定字段加密数据脱敏表结构动态维护数据审计记录数据范围(数据权限)数据库分库分表、动态据源、读写分离、数据库健康检查自动切换。2、使用2.1依赖导入SpringBoot引入自动依赖注解包<
扫一扫关注公众号
添加我为好友,拉您入交流群!
请使用微信扫一扫!