Spring与Mybatis的整合过程中遇到的一些问题
来源:互联网 发布:ubuntu查看硬盘大小 编辑:程序博客网 时间:2024/06/06 09:23
Spring与mybatis整合
2.实际项目中,通常会用 spring 这个沾合剂来管理 datasource 等。充分利用spring 基于接口的编程,以及aop ,ioc 带来的方便。用spring 来管理 mybatis 与管理hibernate
有很多类似的地方。今天的重点就是数据源管理以及 bean的配置。
3.上午学习mybatis的时候,需要建立一个java文件,里面的内容都是写在static静态框中,重要用来建立SqlSession
后面的测试程序中,想要操作数据库的第一句必然是SqlSession session = Util.getSqlSessionFactory().openSession();
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
public class Util {
public static SqlSessionFactory sqlmapper = null;
static {
//一般命名是config.xml文件
String rs = "com/jf/mybatis/user/Config.xml";// 为第二步中的配置文件名,主要是datasource的配置,链接数据库的配置文件,一般命名为Configuration.xml
Reader reader = null;
try {
reader = Resources.getResourceAsReader(rs);
} catch (IOException e) {
e.printStackTrace();
}
sqlmapper = new SqlSessionFactoryBuilder().build(reader);
sqlmapper.getConfiguration().addMapper(userOperation.class);
}
public static SqlSessionFactory getSqlSessionFactory() {
return sqlmapper;
}
}
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
4.个人感觉使用spring整合的一个非常大的好处就是把上述的操作写入到xml文件中,但是要具体说出好处有哪些。。。。。。
xml文件在最近学习的过程中突出了它非常重要的位置,几乎接触到所有东西都要用到xml文件。
5.整合spring和mybatis需要导入相关的包---------------------------->C:\Users\liuquanyi\Desktop\spirng与mybatis\lib
5_1.最重要的一个文件applicationContent.xml文件
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
<!--本示例采用DBCP连接池,应预先把DBCP的jar包复制到工程的lib目录下。 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
<property name="username" value="studymybatis"/>
<property name="password" value="123456"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--dataSource属性指定要用到的连接池-->
<property name="dataSource" ref="dataSource"/>
<!--configLocation属性指定mybatis的核心配置文件-->
<property name="configLocation" value="com/jf/mybatis/user/Config/Config.xml"/>
</bean>
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<!--sqlSessionFactory属性指定要用到的SqlSessionFactory实例-->
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
<!--mapperInterface属性指定映射器接口,用于实现此接口并生成映射器对象-->
<property name="mapperInterface" value="com.jf.mybatis.user.userOperation" />
</bean>
</beans>
---------------------------------------------------------<!程序解释和编写过程中遇到的错误总结>------------------------------------------------------------------------
上述内容就是applicationContent.xml中最重要的部分了,
1.其中<property name="configLocation" value="Config/Config.xml">中,value的值是mybatis核心的配置文件,路径不能用com.jf.mybatis.,
必须写成com/jf/mybatis/user/Config/Config.xml。
2.<property name="mapperInterface" value="com.jf.mybatis.user.userOperation" /> 就是早上建立的接口,早上刚刚学习过已接口的方式来操作(对数据库的操作)。
6.在程序中调用相关的操作方法:
//应该是读取xml文件的
private static ClassPathXmlApplicationContext ctx;
static {
//读取spring和mybatis整合中的关键文件,把sqlSessionFactory,userMapper写入xml文件,而不是写到程序中。
ctx = new ClassPathXmlApplicationContext("com/jf/mybatis/user/Config/applicationContext.xml");
}
public static void main(String[] args) {
//通过接口来操作
userOperation uOperation = (userOperation)ctx.getBean("userMapper");
//userOperation接口中已经定义了相关额方法,调用即可。
User user = uOperation.selectById(1);
System.out.println(user.getId());
System.out.println(user.getName());
System.out.println(user.getSex());
System.out.println(user.getAddress());
}
7. 通过这两天的学习发现从刚开始接触mybatis开始,感觉各种烦,到现在的调用只是简单的两句话,虽然配置文件多了很多,但是整个程序写出来非常的简洁,
通过各种整合最终肯定能代替jdbc链接数据库的方法。而且简单很多。值得学习
************DBPC数据库链接池,一听就很高大上。。。。。************************
2.实际项目中,通常会用 spring 这个沾合剂来管理 datasource 等。充分利用spring 基于接口的编程,以及aop ,ioc 带来的方便。用spring 来管理 mybatis 与管理hibernate
有很多类似的地方。今天的重点就是数据源管理以及 bean的配置。
3.上午学习mybatis的时候,需要建立一个java文件,里面的内容都是写在static静态框中,重要用来建立SqlSession
后面的测试程序中,想要操作数据库的第一句必然是SqlSession session = Util.getSqlSessionFactory().openSession();
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
public class Util {
public static SqlSessionFactory sqlmapper = null;
static {
//一般命名是config.xml文件
String rs = "com/jf/mybatis/user/Config.xml";// 为第二步中的配置文件名,主要是datasource的配置,链接数据库的配置文件,一般命名为Configuration.xml
Reader reader = null;
try {
reader = Resources.getResourceAsReader(rs);
} catch (IOException e) {
e.printStackTrace();
}
sqlmapper = new SqlSessionFactoryBuilder().build(reader);
sqlmapper.getConfiguration().addMapper(userOperation.class);
}
public static SqlSessionFactory getSqlSessionFactory() {
return sqlmapper;
}
}
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
4.个人感觉使用spring整合的一个非常大的好处就是把上述的操作写入到xml文件中,但是要具体说出好处有哪些。。。。。。
xml文件在最近学习的过程中突出了它非常重要的位置,几乎接触到所有东西都要用到xml文件。
5.整合spring和mybatis需要导入相关的包---------------------------->C:\Users\liuquanyi\Desktop\spirng与mybatis\lib
5_1.最重要的一个文件applicationContent.xml文件
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
<!--本示例采用DBCP连接池,应预先把DBCP的jar包复制到工程的lib目录下。 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
<property name="username" value="studymybatis"/>
<property name="password" value="123456"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--dataSource属性指定要用到的连接池-->
<property name="dataSource" ref="dataSource"/>
<!--configLocation属性指定mybatis的核心配置文件-->
<property name="configLocation" value="com/jf/mybatis/user/Config/Config.xml"/>
</bean>
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<!--sqlSessionFactory属性指定要用到的SqlSessionFactory实例-->
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
<!--mapperInterface属性指定映射器接口,用于实现此接口并生成映射器对象-->
<property name="mapperInterface" value="com.jf.mybatis.user.userOperation" />
</bean>
</beans>
---------------------------------------------------------<!程序解释和编写过程中遇到的错误总结>------------------------------------------------------------------------
上述内容就是applicationContent.xml中最重要的部分了,
1.其中<property name="configLocation" value="Config/Config.xml">中,value的值是mybatis核心的配置文件,路径不能用com.jf.mybatis.,
必须写成com/jf/mybatis/user/Config/Config.xml。
2.<property name="mapperInterface" value="com.jf.mybatis.user.userOperation" /> 就是早上建立的接口,早上刚刚学习过已接口的方式来操作(对数据库的操作)。
6.在程序中调用相关的操作方法:
//应该是读取xml文件的
private static ClassPathXmlApplicationContext ctx;
static {
//读取spring和mybatis整合中的关键文件,把sqlSessionFactory,userMapper写入xml文件,而不是写到程序中。
ctx = new ClassPathXmlApplicationContext("com/jf/mybatis/user/Config/applicationContext.xml");
}
public static void main(String[] args) {
//通过接口来操作
userOperation uOperation = (userOperation)ctx.getBean("userMapper");
//userOperation接口中已经定义了相关额方法,调用即可。
User user = uOperation.selectById(1);
System.out.println(user.getId());
System.out.println(user.getName());
System.out.println(user.getSex());
System.out.println(user.getAddress());
}
7. 通过这两天的学习发现从刚开始接触mybatis开始,感觉各种烦,到现在的调用只是简单的两句话,虽然配置文件多了很多,但是整个程序写出来非常的简洁,
通过各种整合最终肯定能代替jdbc链接数据库的方法。而且简单很多。值得学习
************DBPC数据库链接池,一听就很高大上。。。。。************************
0 0
- Spring与Mybatis的整合过程中遇到的一些问题
- Spring 与hibernate整合过程中出现的一些问题
- Spring 整合mybatis时遇到的问题
- Spring、SpringMVC、Mybatis整合遇到的问题
- spring整合mybatis遇到的问题
- struts2+hibernate+spring整合过程中遇到的问题
- spring+springmvc+mybatis三大框架整合过程遇到最多的问题异常:AbstractMethodError
- Spring 与 hibernate 整合遇到的问题
- axis2与spring整合遇到的问题
- Redis与spring的整合遇到问题
- Struts2+Spring 整合成功测试案例--整合过程中遇到的问题及解决方法(一)
- MyBatis中遇到的一些问题
- MyBatis中遇到的一些问题
- mybatis开发过程中遇到的问题
- 使用MyBatis过程中遇到的问题
- spring整合ibatis中遇到的问题
- spring 和struts整合过程遇到的一些错误
- python与c++混编过程中遇到的一些问题
- IO口的作用
- 一段文字中的几个关键字显示高亮
- 黑马程序员——JAVA——多线程
- linux 查看端口情况
- js为字符串编码
- Spring与Mybatis的整合过程中遇到的一些问题
- 上拉电阻和下拉电阻
- CF_476C_DreamoonAndSums
- scala学习之模式匹配
- spring security 多登陆入口实现方式 以及对spring security认证流程的理解
- 端口和引脚的区别
- Lowest Common Ancestor of a Binary Search Tree
- svn常用概念总结
- 外部中断的使用