MyBatis-Spring开发记录贴(新手)
初学MyBatis-Spring,发个帖子记录一下自己的学习历程,先写个自己的编程步骤。
1.先进行数据库设计。
2.根据所设计的数据,写出相应的POJO,并写出setter和getter方法。
3.编写Mapper接口,并写出其相应的xml文件。
4.编写MyBatisConfig.xml文件,现在看来只需要编写其setting。
5.开始编写springbeans.xml文件。
(1)
记得先编写dataSource bean 该bean的class选择为:org.springframework.jdbc.datasource.SimpleDriverDataSource
dataSource bean的四个参数driverClass、url、username、password可以直接赋值,也可以从properties文件中引用。
那么先创建一个dataSource.properties文件,如下:
然后在springbeans.xml文件中引用这个properties文件,引用代码如下:
<context:property-placeholder ignore-resource-not-found="false" location="classpath:dataSource.properties"/>
当然,在使用context时要记得添加它的命名空间,否则将会报错,如下加粗的三行代码:
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd">
这样,就可以调用dataSource.properties文件中的数据了。
如下,用调用的方法给dataSource bean中的参数赋值:
<bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
<property name="driverClass" value="${jdbc.database.driver}" />
<property name="url" value="${jdbc.database.url}" />
<property name="username" value="${jdbc.database.username}" />
<property name="password" value="${jdbc.database.password}" />
</bean>
(2)
接下来应该配置SqlSessionFactory Bean,我们都明白SqlSessionFactory是产生SqlSession的基础,在MyBatis中是使用SqlSessionFactoryBuilder来创建SqlSessionFactory,而在MyBatis+Spring中,提供了SqlSessionFactoryBean去支持SqlSessionFactory的配置。配置方法如下:
<bean id="SqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="configLocation" value="classpath:MyBatisConfig.xml"/>
</bean>
其中 dataSource就是前面我们所创建的dataSource Bean,configLocation 是MyBatis配置文件的定位。
(3)
接下来配置MapperFactoryBean,如下所示:
<bean id="UserMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="mapper.UserMapper"/>
<property name="SqlSessionFactory" ref="SqlSessionFactory"/>
</bean>
其中,参数mapperInterface的value值为该映射器接口的路径,SqlSessionFactory就是上一步所配置的SqlSessionFactory Bean。
当然,这是引入一个Mapper的配制方法,当需要配置很多mapper时,一个一个的进行配置会耗费很多时间,这是可以使用MapperScannerConfigurer进行配置,但是暂时还没有学习配置的方法,这个内容就先不讲。应该很简单,不难。
6.接下来就可以编写一个Main进行测试了,如下所示:
package doing; import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; import mapper.CreateTableMapper;
import mapper.FileNameMapper;
import mapper.UserMapper;
import pojo.FileName;
import pojo.User;
public class Main {
public static void main(String[] args){
ApplicationContext ctx = new ClassPathXmlApplicationContext("SpringBeans.xml"); UserMapper userMapper = ctx.getBean(UserMapper.class);
User user = new User();
/*user = userMapper.getUserById(3L);
System.out.println(user.getFiles().get(1).getFile_name());
FileNameMapper fileNameMapper = ctx.getBean(FileNameMapper.class);
fileNameMapper.deleteFileNameByUser_Name(user.getUser_name());
userMapper.deleteUserById(3L);*/ user.setUser_name("zhouchunjie");
user.setPassword("12345");
user.setMobile("17721260015");
user.setNote("No Note");
userMapper.insertUser(user);
}
}
那么MyBatis+Spring的编程步骤大概就是这样,对于我这个菜鸟来说,有一个自己的编程步骤能让我敲代码时思维不那么混乱。
在进行MyBatis+Spring编程时,千万要记得导入mybatis-spring-1.3.0.jar!!!
在本次编程的过程中,还发现,MyBatis不仅仅可以对已经存在的表进行查询,删除,更新等等等等操作,而且还可以创建新的表单!具体方法懒得码字了。。。
MyBatis-Spring开发记录贴(新手)的更多相关文章
- 集成框架 javaweb开发平台ssmy_m(生成代码) java struts2 mybatis spring maven jquery
网页地址 http://blog.csdn.net/lpy3654321/article/details/31841573 项目设想,在项目开发中,我们的开发者大多数时间都在反复开发 相同的keywo ...
- 详解Spring Boot集成MyBatis的开发流程
MyBatis是支持定制化SQL.存储过程以及高级映射的优秀的持久层框架,避免了几乎所有的JDBC代码和手动设置参数以及获取结果集. spring Boot是能支持快速创建Spring应用的Java框 ...
- SpringMVC笔记——Spring+MyBatis组合开发简单实例
简介 SSH框架很强大,适合大型项目开发.但学无止境,多学会一门框架组合开发会让自己增值许多. SSM框架小巧精致,适合中小型项目快速开发,对于新手来说也是简单上手的.在SSM框架搭建之前,我们先学习 ...
- Maven+druid+MyBatis+Spring+Oracle+Dubbo开发环境搭建
1.开发工具使用: MyEclipse或Eclipse,数据库使用Oracle.需要用到的软件有Zookeeper(注册中心),Tomcat(Web容器)和Maven(包管理). 2.初始环境配置: ...
- 菜鸟级springmvc+spring+mybatis整合开发用户登录功能(上)
由于本人愚钝,整合ssm框架真是费劲了全身的力气,所以打算写下这篇文章,一来是对整个过程进行一个回顾,二来是方便有像我一样的笨鸟看过这篇文章后对其有所帮助,如果本文中有不对的地方,也请大神们指教. 一 ...
- MyBatis+Spring+Spring MVC整合开发
MyBatis+Spring+Spring MVC整合开发课程观看地址:http://www.xuetuwuyou.com/course/65课程出自学途无忧网:http://www.xuetuwuy ...
- SpringMVC,Spring,Hibernate,Mybatis架构开发搭建之SpringMVC部分
SpringMVC,Spring,Hibernate,Mybatis架构开发搭建之SpringMVC部分 辞职待业青年就是有很多时间来写博客,以前在传统行业技术强度相对不大,不处理大数据,也不弄高并发 ...
- 框架篇:Spring+SpringMVC+Mybatis整合开发
前言: 前面我已搭建过ssh框架(http://www.cnblogs.com/xrog/p/6359706.html),然而mybatis表示不服啊. Mybatis:"我抗议!" ...
- SSM 即所谓的 Spring MVC + Spring + MyBatis 整合开发。
SSM 即所谓的 Spring MVC + Spring + MyBatis 整合开发.是目前企业开发比较流行的架构.代替了之前的SSH(Struts + Spring + Hibernate) 计划 ...
随机推荐
- maven项目搭建步骤
maven项目搭建步骤 班级:软件151 姓名:黄于霞 一.准备以下压缩包 1.JDK1.7 文件:jdk1.7.rar 2. eclipse-jee-mars-2 文件:32位系 ...
- Android Studio中使用Git进行代码管理(分支、合并)
打开Android Studio选择,选择从Git检出代码 也可以从VCS如下点击 去远程仓库复制地址,这里以码云Gitee第三方代码托管为例,类似Github的界面,点击右边复制项目地址 填一下配置 ...
- day45-python实例练习
'''ABCD * 9 = DCBA 通过计算机的方法,给我们计算出 A= ? B = ? C = ? D =? A; 1-9 B: 1-9 C: 1-9 D; 1-9 A != B != C != ...
- FORTH 虚拟机内部结构
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- ImportError: No module named _tkinter, please install the python-tk package ubuntu运行tkinter错误
这是由于Python的版本没有包含tkinter的模块,只需要把tk的package安装就可以了. 一般在Linux才出现,windows版本一般已经包含了tkinter模块. apt-get ins ...
- SVN分支与合并【超详细的图文教程】(转载)
SVN分支与合并 一. 分支与合并的概念 二. SVN分支的意义 三. 如何创建分支与合并分支 一.分支与合并的概念: 分支:版本控制系统的一个特性是能够把各种修改分离出来放在开发品的一个分割线上.这 ...
- logging日志——Basic Logging Tutorial
在logging.basicConfig()函数中可通过具体参数来更改logging模块默认行为,可用参数有: filename,filemode,datefmt,format,level,strea ...
- git clone 带用户名密码
git使用用户名密码clone的方式: git clone http://username:password@remote eg: username: abc@qq.com, pwd: test, ...
- Linux文件打包与解压缩
一.文件打包和解压缩 常用的压缩包文件格式.在 Windows 上我们最常见的不外乎这三种*.zip,*.rar,*.7z后缀的压缩文件,而在 Linux 上面常见常用的除了以上这三种外,还有*.gz ...
- Python Day2 Learning record
一.python初始化模块 Python的强大之处在于他有非常丰富和强大的标准库和第三方库 ...