ibatis框架学习之搭建框架
2015-04-27 14:14
211 查看
之前学习过SSH框架,但是在工作之中没有实际用过,参加工作后用的是SringMVC。我是一个比较懒的家伙,刚刚进入公司时同事已经在用SpringMvc框架开发了,正所谓前人栽树后人乘凉,我没有仔细的研究整个框架的核心,只是略知皮毛;我知道这是很要命的。
因为有过以前ssh框架的学习经验,所以我是将struts spring和ibatis结合起来进行学习
一、框架的搭建
1、所需要的jar包以及相关的作用简介
a、struts 版本2.2.1
struts2-core-2.2.1.jar
struts2-spring-plugin-2.2.1.jar
xwork-core-2.2.1.jar
b、spring 版本 3.0.5
org.springframework.aop-3.0.5.RELEASE.jar Spring的面向切面编程,提供AOP(面向切面编程)实现
org.springframework.asm-3.0.5.RELEASE.jar Spring独立的asm程序,Sp
ring2.5.6的时候需要asmJar包3.0.7开始提供他自己独立的asmJar
org.springframework.aspects-3.0.5.RELEASE.jar Spring提供对AspectJ框架的整合
org.springframework.beans-3.0.5.RELEASE.jar SpringIoC(依赖注入)的基础实现
org.springframework.context-3.0.5.RELEASE.jar
org.springframework.context.support-3.0.5.RELEASE.jar Spring-context的扩展支持,用于MVC方面
org.springframework.core-3.0.5.RELEASE.jar Spring3.0.5的核心工具包
org.springframework.expression-3.0.5.RELEASE.jar Spring表达式语言
org.springframework.instrument-3.0.5.RELEASE.jar Spring3.0.5对服务器的代理接口
org.springframework.instrument.tomcat-3.0.5.RELEASE.jar Spring3.0.5对Tomcat的连接池的集成
org.springframework.jdbc-3.0.5.RELEASE.jar 对JDBC的封装
org.springframework.jms-3.0.5.RELEASE.jar 为简化JMS API的使用而作的简单封装
org.springframework.oxm-3.0.5.RELEASE.jar Spring 对Object/XMl的映射支持,可以让Java与XML之间来回切换
org.springframework.test-3.0.5.RELEASE.jar 对Junit等测试框架的简单封装
org.springframework.transaction-3.0.5.RELEASE.jar 为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理
org.springframework.web-3.0.5.RELEASE.jar SpringWeb下的工具包
org.springframework.web.portlet-3.0.5.RELEASE.jar 基于protlet的MVC实现
org.springframework.web.servlet-3.0.5.RELEASE.jar 基于servlet的MVC实现
org.springframework.web.struts-3.0.5.RELEASE.jar 整合Struts的时候的支持
以上是相关jar包的作用简介,参考http://blog.csdn.net/w_wind/article/details/18370715
c、ibatis
ibatis-2.3.4.726.jar
mybatis-spring-1.2.1.jar
二、配置文件
a、创建实体类
b、配置实体类映射文件
c、配置ibatis映射文件
因为有过以前ssh框架的学习经验,所以我是将struts spring和ibatis结合起来进行学习
一、框架的搭建
1、所需要的jar包以及相关的作用简介
a、struts 版本2.2.1
struts2-core-2.2.1.jar
struts2-spring-plugin-2.2.1.jar
xwork-core-2.2.1.jar
b、spring 版本 3.0.5
org.springframework.aop-3.0.5.RELEASE.jar Spring的面向切面编程,提供AOP(面向切面编程)实现
org.springframework.asm-3.0.5.RELEASE.jar Spring独立的asm程序,Sp
ring2.5.6的时候需要asmJar包3.0.7开始提供他自己独立的asmJar
org.springframework.aspects-3.0.5.RELEASE.jar Spring提供对AspectJ框架的整合
org.springframework.beans-3.0.5.RELEASE.jar SpringIoC(依赖注入)的基础实现
org.springframework.context-3.0.5.RELEASE.jar
org.springframework.context.support-3.0.5.RELEASE.jar Spring-context的扩展支持,用于MVC方面
org.springframework.core-3.0.5.RELEASE.jar Spring3.0.5的核心工具包
org.springframework.expression-3.0.5.RELEASE.jar Spring表达式语言
org.springframework.instrument-3.0.5.RELEASE.jar Spring3.0.5对服务器的代理接口
org.springframework.instrument.tomcat-3.0.5.RELEASE.jar Spring3.0.5对Tomcat的连接池的集成
org.springframework.jdbc-3.0.5.RELEASE.jar 对JDBC的封装
org.springframework.jms-3.0.5.RELEASE.jar 为简化JMS API的使用而作的简单封装
org.springframework.oxm-3.0.5.RELEASE.jar Spring 对Object/XMl的映射支持,可以让Java与XML之间来回切换
org.springframework.test-3.0.5.RELEASE.jar 对Junit等测试框架的简单封装
org.springframework.transaction-3.0.5.RELEASE.jar 为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理
org.springframework.web-3.0.5.RELEASE.jar SpringWeb下的工具包
org.springframework.web.portlet-3.0.5.RELEASE.jar 基于protlet的MVC实现
org.springframework.web.servlet-3.0.5.RELEASE.jar 基于servlet的MVC实现
org.springframework.web.struts-3.0.5.RELEASE.jar 整合Struts的时候的支持
以上是相关jar包的作用简介,参考http://blog.csdn.net/w_wind/article/details/18370715
c、ibatis
ibatis-2.3.4.726.jar
mybatis-spring-1.2.1.jar
二、配置文件
a、创建实体类
package com.northking.entity; import java.util.Date; public class Student { private int id; private String name; private Date birth; private String tel; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getBirth() { return birth; } public void setBirth(Date birth) { this.birth = birth; } public String getTel() { return tel; } public void setTel(String tel) { this.tel = tel; } public String toString(){ return name;} }
b、配置实体类映射文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd"> <sqlMap namespace="com.northking.dao/studentDao"> <!-- 设置本映射中的别名: 方便使用 --> <typeAlias alias="student" type="com.northking.entity.Student" /> <typeAlias alias="string" type="java.lang.String" /> <!-- 增删查改的Statement配置 --> <select id="getAllStudent" resultClass="student"><![CDATA[ SELECT * FROM tb1_student ]]></select> <select id="getStudent" resultClass="student"><![CDATA[ select name,birth,tel from tb1_student where name like '%$name$%' ]]></select> <select id="findById" resultClass="student" parameterClass="integer"><![CDATA[ SELECT birth, name FROM tb1_student WHERE id=#id# ]]></select> <update id="updateStudent" parameterClass="student"><![CDATA[ UPDATE tb1_student SET name=#name#,birth=#birth#,tel=#tel# WHERE id=#id# ]]></update> <insert id="addStudent" parameterClass="student"><![CDATA[ INSERT INTO tb1_student (id,name,birth,tel) VALUES (#id#,#name#,#birth#,#tel#) ]]></insert> <delete id="deleteStudent" parameterClass="integer"><![CDATA[ DELETE FROM tb1_student WHERE id=#id# ]]></delete> </sqlMap>
c、配置ibatis映射文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"> <sqlMapConfig> <settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" errorTracingEnabled="true" maxRequests="32" maxSessions="10" maxTransactions="5" useStatementNamespaces="true" /> <transactionManager type="JDBC"> <dataSource type="SIMPLE"> <!-- JDBC连接需要的配置 --> <property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver" /> <property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@localhost:1521:orcl" /> <property name="JDBC.Username" value="scott" /> <property name="JDBC.Password" value="scott" /> <!-- 连接池配置 --> <property name="Pool.MaximumActiveConnections" value="10" /> <property name="Pool.MaximumIdleConnections" value="5" /> <property name="Pool.MaximumCheckoutTime" value="120000" /> <property name="Pool.TimeToWait" value="500" /> <property name="Pool.PingQuery" value="select 1 from sample" /> <property name="Pool.PingEnabled" value="false" /> <property name="Pool.PingConnectionsOlderThan" value="1" /> <property name="Pool.PingConnectionsNotUsedFor" value="1" /> </dataSource> </transactionManager> <!-- 映射文件 --> <sqlMap resource="com/northking/entity/Student.xml"/> <sqlMap resource="com/northking/entity/User.xml"/> </sqlMapConfig>
相关文章推荐
- Android学习之——自己搭建Http框架(2)——框架扩展
- ABP架构学习系列三:手工搭建ABP框架
- Hibernate框架学习(搭建)
- 关于搭建spring struts ibatis框架
- 学习Hibernate框架--框架搭建及简单实用
- 深度学习框架搭建 之 Udacity DeepLearning 课程学习
- Python-Django框架学习笔记——第二课:Django的搭建
- Spring学习之SpringMVC框架快速搭建实现用户登录功能
- Struts2+Spring2.5+ibatis+ExtJS3.1 基于注解框架搭建
- 电力系统项目学习(2)--框架搭建1-数据持久化
- 淘宝SOA框架dubbo学习(2)--搭建Zookeeper注册中心服务
- ibatis 学习之一 环境搭建,简单小demo练习
- Android学习之——自己搭建Http框架(2)——框架扩展
- Spring2.5、Struts2、Ibatis开发框架搭建
- Hibernate学习:手动搭建Hibernate框架
- Spring2.5、Struts2、Ibatis开发框架搭建之二
- 深度学习框架搭建之最新版Python及最新版numpy安装
- ubuntu16.0.4环境下搭建DeepNet深度学习框架
- 框架基础学习之--搭建mySSMTest框架总结
- 新浪微博Android客户端学习记录二:系统主框架搭建