jar包 applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="h…
实体类关联数据库字段,操作实体类,HQL语句对数据结构CRUD) 引入jar包 配置文件 hibernate.cfg.xml User.hbm.xml <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernat…
为什么要做batch处理        这个问题我就不解释了,因为我想你们肯定能比我解释的更好!如果你真的不知道,那就到Google上去搜索一下吧☻Oracle回滚段    这个问题偶也不很明白,只是大概有个了解,如果你是这方面的专家,或者对这方面有比较深的理解,别忘了跟偶分享哦☻在JDBC中如何做batch处理    JDBC提供了数据库batch处理的能力,在数据大批量操作(新增.删除等)的情况下可以大幅度提升系统的性能.我以前接触的一个项目,在没有采用batch处理时,删除5万条数据大概要…
一. spring+struts2+ibatis 框架 搭建教程 参考:http://biancheng.dnbcw.net/linux/394565.html 二.分层 1.dao: 数据访问层(增删改查):一个接口,一个实现类,实现类需要继承 SqlMapClientDaoSupport 2.service:业务逻辑层:一个接口,一个实现类 ,在实现类添加dao的注入3.action: 表示层 需要继承 ActionSupport ,添加service的注入 4.model :实体类5.co…
iBatis框架是Java持久层开发框架,说白了就是前人写了一部分代码(针对数据库操作),我们要做的就是再次开发,拿来框架直接使用. 我们自己开发时,dao层的sql语句都是写死在程序中的,如果查询条件改变什么的都需要修改sql语句,这样就得去修改原代码,违背了开发原则中的开闭原则.有没有一种实现让sql不再写死在程序里,iBatis框架就可以使sql文活起来. iBatis是一个开源的项目,有兴趣的可以去看看那些元老级的人物是怎么将封装的框架.本文旨在介绍它的使用. 第一步:搭建环境 所谓的搭…
一.为啥使用iBatis? 在 Hibernate.JPA 这样的一站式对象 / 关系映射(O/R Mapping)解决方案盛行之前,iBaits 基本是持久层框架的不二选择.即使在持久层框架层出不穷的今天,iBatis 凭借着易学易用.轻巧灵活等特点,也仍然拥有一席之地.尤其对于擅长 SQL 的开发人员来说,iBatis 对 SQL 和存储过程的直接支持能够让他们在获得 iBatis 封装优势的同时而不丧失 SQL 调优的手段,这是 Hibernate/JPA 所无法比拟的.具体而言,使用 i…
深入分析 iBATIS 框架之系统架构与映射原理 iBATIS 通过 SQL Map 将 Java 对象映射成 SQL 语句和将结果集再转化成 Java 对象,与其他 ORM 框架相比,既解决了 Java 对象与输入参数和结果集的映射,又能够让用户方便的手写使用 SQL 语句.本文主要介绍了 iBATIS 框架的体系结构和运行流程,以及 iBATIS 如何完成 SQL 语句的解析与 Java 对象与数据字段映射关系的建立,最后用一个实例说明了 iBATIS 是如何帮我们完成工作的. iBATIS…
http://www.ibm.com/developerworks/cn/java/j-lo-ibatis-principle/ iBATIS 通过 SQL Map 将 Java 对象映射成 SQL 语句和将结果集再转化成 Java 对象,与其他 ORM 框架相比,既解决了 Java 对象与输入参数和结果集的映射,又能够让用户方便的手写使用 SQL 语句.本文主要介绍了 iBATIS 框架的体系结构和运行流程,以及 iBATIS 如何完成 SQL 语句的解析与 Java 对象与数据字段映射关系的…
Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器拦截请求,创建代理Action对象,执行方法,返回结果,界面跳转. 拦截器解析请求路径,获取Action的名称,到配置文件中查找action的完整类名,利用反射创建对象. 每请求一次,就创建一个对象,所以action是多例的,也是线程安全的. 2,关系 请求的路径和配置文件的对应关系: 配置文件中包…
spring struts2 ibatis 框架结构图…
由于最近一段时间比较忙碌,<框架学习>系列的文章一直在搁浅着,最近开始继续这个系列的文章更新. 在上篇文章中我们说到了hibernate框架,它是一种基于JDBC的主流持久化框架,是一个优秀的orm实现:它对JDBC进行了轻量级的封装,大大简化了数据访问层繁杂的重复代码:而且它利用了java反射机制来实现程序的透明性:它的本意是从对象出发而非关系数据库出发,这一点也就是说明它是以面向对象思维解决数据库的操作问题. 我们今天要介绍另一种ORM框架---ibatis框架,这个框架是一种"…
如果用最简洁的话来总结 iBATIS 主要完成那些功能时,我想下面几个代码足够概括. Class.forName("oracle.jdbc.driver.OracleDriver"); Connection conn= DriverManager.getConnection(url,user,password); java.sql.PreparedStatement st = conn.prepareStatement(sql); st.setInt(0,1); st.execute(…
iBATIS 框架主要的类层次结构 总体来说 iBATIS 的系统结构还是比较简单的,它主要完成两件事情: 根据 JDBC 规范建立与数据库的连接: 通过反射打通 Java 对象与数据库参数交互之间相互转化关系. iBATIS 的框架结构也是按照这种思想来组织类层次结构的,其实它是一种典型的交互式框架.先期准备好交互的必要条件,然后构建一个交互的环境,交互环境中还划分成会话,每次的会话也有一个环境.当这些环境都准备好了以后,剩下的就是交换数据了.其实涉及到网络通信,一般都会是类似的处理方式. 图…
iBatis框架主要的类层次结构 iBatis框架的设计策略 iBatis框架的运行原理 iBatis框架对SQL语句的解析 数据库字段映射到Java对象 示例运行的结果 设计模式解析之简单工厂模式 设计模式解析之工厂模式…
iBATIS 框架主要的类层次结构 总体来说 iBATIS 的系统结构还是比较简单的,它主要完成两件事情: 根据 JDBC 规范建立与数据库的连接: 通过反射打通 Java 对象与数据库参数交互之间相互转化关系. iBATIS 的框架结构也是按照这种思想来组织类层次结构的,其实它是一种典型的交互式框架.先期准备好交互的必要条件,然后构建一个交互的环境,交互环境中还划分成会话,每次的会话也有一个环境.当这些环境都准备好了以后,剩下的就是交换数据了.其实涉及到网络通信,一般都会是类似的处理方式. 图…
iBatis是一款使用方便的数据訪问工具,也可作为数据持久层的框架.和ORM框架(如Hibernate)将数据库表直接映射为Java对象相比.iBatis是将SQL语句映射为Java对象. 相对于全自己主动SQL的Hibernate,iBatis同意你对SQL有全然控制权,能够视为半自己主动的数据訪问工具.         iBatis的最大长处是简便,轻量级,仅需iBatis的一个jar和数据库的驱动就可以执行,并且使用iBatis仅需掌握SQL和XML的使用方法就可以,而不像Hibernat…
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核心配置.动态方法调用.结果集的处理 传送门 JavaWeb_(Struts2框架)Log4j的配置以及解决中文乱码 传送门 JavaWeb_(Struts2框架)参数传递之接收参数与传递参数 传送门 JavaWeb_(Struts2框架)Ognl小案例查询帖子 传送门 JavaWeb_(Struts…
Servlet规范简介--web框架是如何注入到Servlet中的 引言 Web框架一般是通过一个Servlet提供统一的请求入口,将指定的资源映射到这个servlet,在这个servlet中进行框架的初始化配置,访问Web页面中的数据,进行逻辑处理后,将结果数据与的表现层相融合并展现给用户.WEB框架想要在符合Servlet规范的容器中运行,同样也要符合Servlet规范. 将一个WEB框架注入到一个servlet中,主要涉及到Servlet规范中以下部分: Ø         部署描述符 Ø…
一. 用Servlet + JSP演示Struts基本原理 struts是开源项目.它通过采用 Java Servlet/JSP 技术,实现了基于Java EE Web应用的MVC的应用框架.Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展. 如果没有Struts,我们怎么实现的? 1)View层--JSP <body> <a href="Servlet/Add.action">测试增加>>>>>>…
Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDispatcher <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFi…
Action访问Servlet API Struts2中的Action并没有和任何Servlet API耦合,这样框架更具灵活性,更易测试. 对于Web应用的控制器而言,不访问ServletAPI是几乎不可能的.Web应用中通常需要访问的ServletAPI就是HttpServletRequest.HttpSession和ServletContext,这三个接口分别代表JSP中内置对象中的request.session.application. Struts 2提供了一个ActionContex…
Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDispatcher 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <filter>       <filter-name>struts2</filter-name>       <filter-class>org.apache.struts…
单元测试在开发中是非常重要的一个环节程序员在写完代码时,相应的单元测试也应写完整,否则你的代码就是不能让人信服的Struts2将Action与Servlet的API进行解耦之后,就使得单元测试变得非常容易了比如HttpServletRequest对象,它是由Tomcat容器给我们提供的,我们自己产生不出来若Action中充斥者ServletAPI,哪怕仅一个,那么一般意义上的JUnit单元测试便无法进行若Action中耦合了ServletAPI,可以采用apache的Cactus对它进行测试,这…
学IT技术,就是要学习... 今天无聊看看struts2,发现struts2的action访问servlet API的三种方法: 1.Struts2提供的ActionContext类 Object get(Object key);可以获取request属性 Map getSession():可以得到session属性 Map getAppliction():可以得到ServletContext实例 2.action类实现 ServletContextAware,ServletRequestAwa…
一.为什么要访问Servlet API ? Struts2的Action并未与Servlet API进行耦合,这是Struts2 的一个改良,从而方便了单独对Action进行测试.但是对于Web控制器而言,不访问action是不行的,Struts提供了一种比较简单的方式来访问Servlet API . 二.通常我们需要访问的Servlet API 是 HttpSession.HttpservletRequest.ServletContext,分别对应了JSP内置对象 session,reques…
web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/we…
Action访问Servlet的API_,主要访问如下: 1.>获取request对象 2.>获取请求参数 3.>获取response对象,可用于传递cookie 3.>获取作用域对象,request,Session,application,并设置共享数据, 访问方式一: 通过实现感知接口中的setter方法,讲其setter方法中的request参数传递到本类中来: 即,在本类中定义一个成员变量,来接收setter方法中的request. 如果,还需要获取response,Ses…
上图提供了struts2的执行流程.如下: 1:从客户端发出请求(HTTPServletRequest). 2:请求经过各种过滤器(filter),注:一般情况下,如SiteMesh等其他过滤器要放在核心控制器FilterDispatcher之前,也就是web.xml中配置的filter-mapping在 StrutsPrepareAndExecuteFilter之前.  在执行完了所有的过滤器的doFilter方法之后,核心控制器FilterDispatcher会清空ActionContext…
web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:…
,升级版是mybatis,在配置文件里写sql语句对字段进行CURD) jar包 sqlMapConfig <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config…