-
mybatis实现接口查看全部
-
maven骨架查看全部
-
日志关系查看全部
-
官网地址查看全部
-
使用spring提供的junit的测试方法使得测试更加简单,因为SpringJunit4ClassRunner开始测试时会自动启动Ioc容器,同时使用@ContextCongiguration({”classpath:….xml”})注解告诉spring容器要加载的上下文信息在哪里。这样就可以正常启动IOC容器了。同时在测试DAO层操作数据库是,使用@Resource注解注入测试依赖,才能操作数据库。 spring mybatis junit 整合操作数据库使用到的四个注解 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration({"classpath:****.xml"}) @Resource @Param(“形参”) 在接口提供多个参数时,mybatis默认只能接受一个参数,或者对参数进行封装为一个参数,如果使用多个参数,注意使用mybatis提供的形参注解@Param()查看全部
-
java没有保留形参的名字,他是以agr0,agr1来表示,在mybatis中如果要表示多个参数的传进来,要用注解@Param来指定参数名,如果是一个参数,那不用指定。 java运行时不保存形参名称(arg1,arg2....), mybatis(多参数传入时,将参数封装成map) 通过@Param注解,定义映射时的键值,不进行注解映射时,通过#{0},#{1}取值 使用mybatis DAO接口给xml中的sql传参数的时候,当需要传送多个参数的时候需要使用mybatis的注解@Param标注这个参数的参数名,否则会出现参数名无法找到的错误,原因是,java在动态执行方法的时候,会将方法中的形参替换成arg0,arg1等,现在定义好的参数名被踢换,导致在mybatis的sqlxml配置文件中没有对应。 mybatis传递多个参数,使用@Param,告诉mybatis,传递的形参的名字是什么。如果不用该注解,mybatis会自动将这些参数命名为arg0,arg1,arg2,arg3.。。 java存在这样的问题 - 在DAO接口设计时不给明参数的话,(dao接口上没有该参数,在mapper.xml中的sql语句中有该参数的情况下)Java获取不到,因为参数在java中是arg0,arg1形式的存在 (也就是参数无法识别) 解决方案: offet 也就是arg0 通过@Parm("xxxxx"),告诉Mybatis实际上正确的形参叫做offset查看全部
-
java没有保留形参的名字,他是以agr0,agr1来表示,在mybatis中如果要表示多个参数的传进来,要用注解@Param来指定参数名,如果是一个参数,那不用指定。 java运行时不保存形参名称(arg1,arg2....), mybatis(多参数传入时,将参数封装成map) 通过@Param注解,定义映射时的键值,不进行注解映射时,通过#{0},#{1}取值 使用mybatis DAO接口给xml中的sql传参数的时候,当需要传送多个参数的时候需要使用mybatis的注解@Param标注这个参数的参数名,否则会出现参数名无法找到的错误,原因是,java在动态执行方法的时候,会将方法中的形参替换成arg0,arg1等,现在定义好的参数名被踢换,导致在mybatis的sqlxml配置文件中没有对应。 mybatis传递多个参数,使用@Param,告诉mybatis,传递的形参的名字是什么。如果不用该注解,mybatis会自动将这些参数命名为arg0,arg1,arg2,arg3.。。 java存在这样的问题 - 在DAO接口设计时不给明参数的话,(dao接口上没有该参数,在mapper.xml中的sql语句中有该参数的情况下)Java获取不到,因为参数在java中是arg0,arg1形式的存在 (也就是参数无法识别) 解决方案: offet 也就是arg0 通过@Parm("xxxxx"),告诉Mybatis实际上正确的形参叫做offset查看全部
-
<!-- 框架技巧:约定大于配置 --> <!-- 3.配置SqlSessionFactory对象 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 注入数据库连接池 --> <property name="dataSource" ref="dataSource"></property> <!-- 配置mybatis全局配置文件:mybatis-config.xml --> <property name="configLocation" value="classpath:mybatis-config.xml"></property> <!-- 扫描entity包 使用别名,多个包之间使用;隔开 --> <property name="typeAliasesPackage" value="org.seckill.entity"></property> <!-- 扫描sql配置文件:mapper需要的xml文件 --> <property name="mapperLocations" value="classpath:mapper/*.xml"></property> </bean> <!-- 4.配置扫描Dao接口包 动态实现Dao接口,注入到spring容器中 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 注入sqlSessionFactory --> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property> <!-- 给出需要扫描DAO接口包 --> <property name="basePackage" value="org.seckill.dao"></property> </bean>查看全部
-
<!-- 配置整合mybatis过程 --> <!-- 1.配置数据库相关参数 properties的属性: ${url}--> <context:property-placeholder location="classpath:jdbc.properties"></context:property> <!-- 2.数据库连接池 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <!-- 配置连接池属性 --> <property name="driverClass" value="${driver}"/> <property name="jdbcUrl" value="${url}"/> <property name="user" value="${username}"/> <property name="password" value="${password}"/> <!-- c3p0连接池的属性 --> <property name="maxPoolSize" value="30"/> <property name="minPoolSize" value="10"/> <!-- 关闭连接后不自动commit --> <property name="autoCommitOnClose" value="false"/> <!-- 获取连接超时时间 --> <property name="checkoutTimeout" value="1000"/> <!-- 获取连接失败次数--> <property name="acquireRetryAttempts" value="2"/> </bean>查看全部
-
spring和Mybatis整合四布: 1. 配置数据库相关参数 2. 配置数据库的连接池 3. 配置sqlSessionFactory对象 4. 配置扫描DAO接口包,动态实现DAO接口,并注入spring容器中查看全部
-
接口的作用查看全部
-
接口的作用查看全部
-
mybatis与Spring的整合目标: 1、更少的编码 1). 只需要接口,不需要实现(Mybatis 自动完成) 2、更少的配置 1). 别名(Mybatis可以扫描对应包,因此使用一些类的时候不需要使用包名+类名) 2). 配置扫描 3). dao的实现 3、足够的灵活性 1). 自己定制SQL语句 2). 自由传参查看全部
-
SuccessKilledDao.xml查看全部
-
mybatis特点及与其他ORM框架的区别 1)sql写在xml文件或者注解当中,推荐写在xml文件当中(便于维护) 2)如何实现DAO接口, Mapper自动实现DAO接口 API编程方式实现DAO接口,推荐使用Mapper查看全部
举报
0/150
提交
取消