- 浏览: 528540 次
- 性别:
- 来自: 广州
博客专栏
-
Mybatis实现原理深入...
浏览量:141068
最新评论
-
qq32933432:
那么问题来了,楼主现在怎样了?目标都达成了吗
2012年年度目标 -
leeahuamsg:
特别好,条理很清晰
原理分析之一:从JDBC到Mybatis -
lgh1992314:
<?xml version="1.0" ...
原理分析之三:初始化(配置文件读取和解析) -
guduyishuai:
context = tomcat.createContext( ...
基于内嵌Tomcat的应用开发 -
showlives:
原理分析之四:一次SQL查询的源码分析
文章列表
原理分析之一:从JDBC到Mybatis
原理分析之二:框架整体设计
原理分析之三:初始化(配置文件读取和解析)
1.引言
本文主要讲解Mybatis的整体程序设计,理清楚框架的主要脉络。后面文章我们再详细讲解各个组件。
2.整体设计
2.1 总体流程
(1)加载配置并初始化
触发条件:加载配置文件
配置来源于两个地方,一处是配置文件,一处是Java代码的注解,将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中。
(2)接收调用请求
触发条件:调用Mybatis提供的API
传入参数:为SQL的ID和传入参数对象
...
1.引言
本文主要讲解JDBC怎么演变到Mybatis的渐变过程,重点讲解了为什么要将JDBC封装成Mybaits这样一个持久层框架。再而论述Mybatis作为一个数据持久层框架本身有待改进之处。
2.JDBC实现查询分析
我们先看看我们最熟悉也是最基础的通过JDBC查询数据库数据,一般需要以下七个步骤:
(1) 加载JDBC驱动
(2) 建立并获取数据库连接
(3) 创建 JDBC Statements 对象
(4) 设置SQL语句的传入参数
(5) 执行SQL语句并获得查询结果
(6) 对查询结果进行转换处理并将处理结果返回
1. 准备工作
编写测试代码(具体请参考《Mybatis入门示例》),设置断点,以Debug模式运行,具体代码如下:
String resource = "mybatis.cfg.xml";
Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(reader);
SqlSession session = ssf.openSession();
2.源码分析
...
问题描述:无法启动microsoft ooffice utlook
提示:打开时出现对话框:“无法启动Microsoft Office Outlook 。无法打开窗口。无效的XML,无法加载此视图”。
解决方法:
运行命令:"开始"-->"运行",输入"Outlook.exe /resetnavpane",-->"确定",就可以了。
1、添加全局数据源
在$TOMCAT_HOME$/conf/server.xml文件中添加以下JNDI数据源配置:
<Resource name="jdbc/test" auth="Container"
type="javax.sql.DataSource"
username="test"
password="test"
driverClassName="orac ...
Spring提供编程式的事务管理(Programmatic transaction manage- ment)与声明式的事务管理(Declarative transaction management)两种方式。
从JDBC的事务控制谈起:
try {
.....
connection.setAutoCommit(false);
.....
// 一连串SQL操作
connection.commit();
} catch(SQLException) {
// 发生错误,回滚所有数据库数据操作
connection.rollback(); ...
问题描述:
进入linux机器后,发现是命令行模式,想马上切换到桌面的图形化,怎么办?
问题解决:
请敲入startx命令,系统自动进入桌面图形化。
如果想切换回命令行模式,请通过界面将用户注销掉。自动会回到命令行模式。
一般情况下,非root用户是没有权限通过startx命令切换回桌面模式的。必须要做一些设置,具体设置请参考linux的startx问题
问题描述:
今天突然发现除了root之外的用户都启动不起来startx,报:
Fatal server error:
PAM authentication failed, cannot start X server.
Perhaps you do not have console ownership?
When reporting a problem related to a server crash, please send
the full server output, not just the last messages.
Please report p ...
AWR介绍
Oracle 10g之前对数据库做性能检测使用statspack工具。
Oracle Database 10g 提供了一个新的工具:(AWR:Automatic Workload Repository)。
Oracle 建议用户用这个取代 Statspack。AWR 实质上是一个 Oracle 的内置工具,它采集与性能相关的统计数据,并从那些统计数据中导出性能量度,以跟踪潜在的问题。
与 Statspack 不同,快照由一个称为 MMON 的新的后台进程及其从进程自动地每小时采集一次。为了节省空间,采集的数据在 7 天后自动清除。快照频率和保留时间都可以由用户修改。它产生两种 ...
1、简要介绍
jhat(Java Head Analyse Tool ):是用来分析java堆的命令,可以将堆中的对象以html的形式显示出来,包括对象的数量,大小等等。
2、使用指南
(1)导出堆文件
(2)分析堆文件
(3)查看堆的HTML文件(http://localhost:7000/)
注意:时你dump出来的堆很大,在启动时会报堆空间不足的错误,可以使用如下参数:
jhat -J-Xmx512m <heap dump file>
1、简要介绍
jmap:可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本。
2、命令格式
jmap [ option ] pid
jmap [ option ] executable core
jmap [ option ] [server-id@]remote-hostname-or-IP
3、参数说明
1)、options:
executable Java executable from which the core dump was produced.
(可能是产生core dump的j ...
Weblogic的heapdump
- 博客分类:
- Weblogic
1.Weblogic的JVM启动参数添加以下参数:
-XX:+HeapDumpOnCtrlBreak -XX:+HeapDumpOnOutOfMemoryError
2.利用ps -ef | grep java 找到运行程序的进程号。
3.输入命令kill -3 <pid>,就可以得到heapdump文件(在该进程对应的domain目录下)。
4.使用MAT内存分析工具分析heapdump。
为了实时了解Weblogic的JRocket JVM情况,需要使用Mission Control工具进行监控。下面是修改weblogic启动参数配置
修改startWebLogic.sh 文件,增加如下内容:
JROCKIT="-Xmanagement -Djrockit.quiet=false -Djrockit.managementserver.debug=true -Dcom.sun.management.jmxremote.port=7092 -Dcom.sun.management.jmxremote.authenticate=false -Dcom. ...
1:pageCheckSeconds
<jsp-descriptor>
<param-name>pageCheckSeconds</param-name>
<param-value>-1</param-value>
</jsp-descriptor>
说明:pageCheckSecond的默认值是1,表示每隔1秒对JSP页面进行检查,检查JSP页面是否被修改、是否需要重新编译。系统上线后,需要对该默认值修改为-1,表示永不检查。修改为-1的一个缺点是:对于页面的修改需要重新部署整个WEB应用 ...