spring需要掌握的知识,spring基本知识
1.导入相关的jar包。
单元测试
junitjunit4.12
org.mybatismybatis3.5.2
mysqlmysql连接器java5.1.47
org . springframeworkspring-web MVC 5 . 1 . 10 . release org . springframeworkspring-JDBC 5 . 1 . 10 . release
org.aspectjaspectjweaver1.9.4
org.mybatismybatis-spring2.0.2
src/main/java/*。属性/*。xmltrue
3.代码实现。
回想一下MyBatis编写的pojo实体类
包com . Kuang . POJO;
公共类用户{ private int id//idprivate字符串名称;//命名私有字符串pwd//Password}实现mybatis的配置文件
公共接口user mapper { public List select user();}对应于接口的Mapper映射文件
从用户中选择*
测试类
@Testpublic void selectUser()抛出IOException {
string resource= mybatis-config . XML ;InputStream InputStream=resources . getresourceasstream(resource);SqlSessionFactory SqlSessionFactory=new SqlSessionFactory builder()。构建(inputStream);SQL session SQL session=sqlsessionfactory . open session();
user mapper mapper=SQL session . get mapper(user mapper . class);
list userList=mapper . select user();for (User用户:userList){System.out.println(用户);}
SQL session . close();}
mybatis-spring学习在介绍Spring之前需要了解MyBatis-Spring包中的一些重要类;
http://www.mybatis.org/spring/zh/index.html
画
什么是MyBatis-Spring?
MyBatis-Spring将帮助您将MyBatis代码无缝集成到Spring中。
知识库
在开始使用MyBatis-Spring之前,您需要熟悉Spring和MyBatis这两个框架以及它们的术语。这一点非常重要。
MyBatis-Spring需要以下版本:
MyBatis-Spring MyBatis Spring框架Spring批处理Java
2.0 3.5 5.0 4.0 Java 8
Java 6.0版
如果使用Maven作为构建工具,只需要在pom.xml中添加以下代码:
org.mybatis
迈巴蒂斯泉
2.0.2
在MyBatis-Spring中,可以使用SqlSessionFactoryBean来创建SqlSessionFactory。要配置这个工厂bean,只需将以下代码放入Spring的XML配置文件中:
在基本的MyBatis用法中,SqlSessionFactoryBuilder用于创建SqlSessionFactory。而在MyBatis-Spring中,它是使用SqlSessionFactoryBean创建的。
在MyBatis中,可以使用SqlSessionFactory创建SqlSession。一旦获得会话,就可以用它来执行映射语句、提交或回滚连接,最后,当不再需要会话时,可以关闭会话。
SqlSessionFactory只有一个必需的属性:JDBC的DataSource。这可以是任何DataSource对象,其配置方法与其他Spring数据库连接相同。
一个常用的属性是configLocation,用于指定MyBatis的XML配置文件路径。当MyBatis的基本配置需要修改时,它非常有用。通常,基本配置是指settings或typeAliases元素。
注意,这个配置文件不必是完整的MyBatis配置。具体来说,MyBatis的任何环境配置()、数据源()和事务管理器()都会被忽略。SqlSessionFactoryBean将创建自己的MyBatis环境,并根据需要设置自定义环境的值。
SqlSessionTemplate是MyBatis-Spring的核心。作为SqlSession的实现,这意味着它可以无缝地替换代码中已经使用的SqlSession。
模板可以参与Spring的事务管理,而且因为它们是线程安全的,可以被多个mapper类使用,所以应该总是用SqlSessionTemplate替换MyBatis的DefaultSqlSession的默认实现。同一应用程序中不同类之间的混合使用可能会导致数据一致性问题。
通过将SqlSessionFactory用作构造函数的参数,可以创建SqlSessionTemplate对象。
公共类UserDaoImpl实现UserDao {
私有SqlSession sqlSession
public void setsql session(SQL session SQL session){
this . SQL session=SQL session;
}
公共用户getUser(字符串userId) {
返回sqlSession.getMapper.
按如下方式注入SqlSessionTemplate:
实现一
1、引入春天配置文件beans.xml
2、配置数据源替换我的诱饵的数据源
公共类实现类实现用户映射程序{
//sqlSession不用我们自己创建了,春天来管理
私有sqlSession模板SQL session
公共void setsql会话(SqlSessionTemplate SQL会话){
这个。SQL会话=SQL会话;
}
公共分发名单selectUser() {
用户映射器映射器=SQL会话。获取映射器(用户映射器。类);
返回制图师。选择用户();
}
}
6、注册豆实现
@测试
public void test2(){
应用程序上下文context=new classpathmlaplicationcontext( bean。XML’);
用户映射器映射器=(用户映射器)上下文。获取bean( userDao );
列出用户=映射器。选择用户();
System.out.println(用户);
结果成功输出!现在我们的框架配置文件的状态!发现都可以被春天整合!
整合实现二
迈巴蒂斯泉版以上的才有这个。
官方文档截图:
大刀继承支持类,直接利用getSqlSession()获得,然后直接注入SqlSessionFactory .比起方式1 , 不需要管理SqlSessionTemplate,而且对事务的支持更加友好。可跟踪源码查看
测试:
1、将我们上面写的实现类修改一下
公共类实现类扩展SqlSessionDaoSupport实现用户映射程序{
公共分发名单selectUser() {
UserMapper mapper=getSqlSession().获取映射器(用户映射器。类);
返回制图师。选择用户();
2、修改豆的配置
@测试
public void test2(){
应用程序上下文context=new classpathmlaplicationcontext( bean。XML’);
用户映射器映射器=(用户映射器)上下文。获取bean( userDao );
列出用户=映射器。选择用户();
System.out.println(用户);
}
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。