文章列表
在设计一对一时,有两种方法,(1)共享主键(2)唯一外键;
对于这两种方式的区别,我的理解是共享主键的两个类其实是一个类的两个部分,为了数据库查询或其他操作的优化,有时候要把一个类分成两个部分分别存放,就是按查询频率来分,比如登录用户,登录基本信息一个类,详细信息一个类,大部分需要反应快的都只用基本信息,所以有必要分开存放.
而第二种情况,两个实体类,确实是两种截然不同的类,有一一对应关系
在我们的项目中遇到这样一个问题:我们的项目需要连接多个数据库,而且不同的客户在每次访问中根据需要会去访问不同的数据库。我们以往在spring和hibernate框架中总是配置一个数据源,因而sessionFactory的dataSource属性总是指向这个数据源并且恒定不变,所有DAO在使用sessionFactory的时候都是通过这个数据源访问数据库。但是现在,由于项目的需要,我们的DAO在访问sessionFactory的时候都不得不在多个数据源中不断切换,问题就出现了:如何让sessionFactory在执行数据持久化的时候,根据客户的需求能够动态切换不同的数据源?我们能不能在spring ...
如果访问http://localhost:8080/jbpm-console时出现登录失败,需要在发布后重新加载用户信息,进入jbpm- 4.2\install,运行ant load.example.identities命令。出现这个问题的原因是因为在jbpm.hibernate.cfg.xml这个文件中配置问题,可以把 <mapping resource="jbpm.identity.hbm.xml" /> 这一句删除或注释掉,就不会出现发布时清空用户的问题。
登录时 用户名 alex 密码 password
分别是pageContext, request, session, application四个作用域
1.
如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。
从把变量放到pageContext开始,到jsp页面结束,你都可以使用 ...
模块是页面扩展轻量级方式,相对组件更为灵活。模块通常用来做页面中不太复杂的一小块,并且能够跨越不同的组件。有时候模块可以跟组件密切联系,比如说最新新闻模块,这个模块显示来自com_content组件的最新的条目,由于它是一个模块,所以它甚至可以在com_content组件没有激活的情况下使用。站点的菜单是模块,而这些模块作为Joomla和核心应用,并没有和任何组件相关联。模块不必和任何特定的事情相关联,并且可以是你想在一些页面上显示的静态html,text。
怎样编写模块
Hello World Module - Basic Module
模块是页面扩展轻量级方式,相对组件更为灵活。模块通 ...
本文依照 Joomla! 1.5 Stable 版本的安装程序写作,文中所引用代码均来自实际程序文件。
我们从安装程序入口文件 /installation/index.php 开始。
1. 常量定义
index.php 文件起始处定义了若干常量:
define( '_JEXEC', 1 );define( 'JPATH_BASE', dirname( __FILE__ ) );define( 'DS', DIRECTORY_SEPARATOR );
_JEXEC 是一个标志量,表示程序正常启动(通过合法入口 /index.php 访问)。Joomla! 在其他所有的 .php 程序起始处, ...
文档类,提供一个容易的接口解析和显示文件
Method Description
__construct 构造函数
addScript 增加一个连接到页
addScriptDeclaration 增加脚本到页
addStyleDeclaration 增加一个 ...
概述
Joomla! 1.5 新增 JSimpleXML 类,可以更为简单的读取xml文件,但是现在还不能修改CDATA或或者属性,也不支持XPath.
JSimpleXML需要PHP 4.2以上版本,以及 Expat扩展。
2. 实现
JSimpleXML 类代码:
class JSimpleXML extends JObject
{
/**
* Document element
*
* @var object
*/
var $document = null;
/**
* Interprets a st ...
概述:JPlugin Joomla 1.5的新功能
为了更好使Joomla符合面向对象的框架,引入了JPlugin。Plugins 是依附于全局事件分派系统的观察者类。这就意味无论是Joomla核心,还是第三方组件,模块都能触发一个或多个JPlugins来执行一些功能。这与 mambot并不完全相同。虽然mambot与plugin都是事件触发并执行代码,但是mammot需要全局范围的声明,而JPlugin是一个类,事件处理函数能有自己的变量和私有的helper方法,这是整个事件处理系统更加清晰。
2. 实现
JPlugin 系统的实现是一个观察者模式。有两部分,一部分是观察者(JPlug ...
我曾经在几篇文章中涉及到JHTML的方法使用,这里不再说了,请看相关的文章。
Joomla!中如何使用switcher.js实现一个位置上div层的切换显示
Joomla!用caption.js自动显示图片的简短描述
如何在Joomla! 1.5 管理后台中实现滑动分页效果
在Joomla!中怎样使用日历部分behavior.calendar
在Joomla!中使用弹出提示 (Tooltip)教程
这里主要说一下几个没提到的函数:
script($filename, $path = 'media/system/js/', $mootools = true)
在页面中加上''元素,默认 ...
JDate类与JString类一样是Joomla!中的基础类,Joomla! core中的大部分日期都用到了相关的函数。JDate的构造函数有两个参数,一个是$date,一个是$tzOffset,前者是时间,默认是当前值,$date可以有三种形式,RFC 822, ISO 8601,unix time stamps,而$tzOffset是时区偏移,比如中国应该是8,默认值是全局配置中你设置的参数.创建一个JDate对象很方便:
$mdate = new JDate();
$mdate =new JDate($row->created, $tzoffset);
JDate 的常用函数:
...
我们在form表单生成的过程中,经常需要有select 标签或者radio标签,这点上 Joomla!也给我们提供了方便的接口JHTMLSelect 。
JHTMLSelect的函数可以分为两类:
第一类是选项设置,包括:option,optgroup,我们来看看option,
option( $value, $text='', $value_name='value', $text_name='text', $disable=false )
函数返回一个包含待选项必要信息的示例,必要的信息包括:
$value:返回值
$text:显示文本
$value_name:值名称
$text_name ...
JTable类是Active Record设计模式(web应用中应用最为广泛,最为简单的数据库相关的设计模式,笔者)的实现。JTable在joomla与数据库交互过程中广泛的使用。要使用JTable,首先要创建一个JTable的子类。下面是我们的一个例子:
defined('_JEXEC') or die();
class TableRecipes extends JTable
{
var $id = null;
var $ingredients = null;
var $instructions = null;
var $serves = null;
var $difficulty = ...
以下的方法可以在管理后台中添加一个Parameters设置的按钮,点击按钮可以设置这个组件的相关参数,当修改这些参数后,参数保存在 component表中。
首先要创建一个XML配置文件,文件中包含了相关参数,这个参数文件保存在后台管理界面相应组件中的 config.xml中。比如文章/administrator/components/com_content/config.xml.
假设我们的评论组件的xml安装文件如下:
m>
Hide
Show
配置文件定义了一个参数show_name。
接下来采用下面的代码就可以定义一个相应组件的按钮:
J ...
每一个访问Joomla网站的用户都对应这一个JUser对象,通过$user =& JFactory::getUser() 就可以获得这个对象引用并访问对象的成员函数和属性。
下面的代码就是显示用户的名称,邮件的一段代码:
echo "
Your name is {$user->name}, your email is {$user->email}, and your username is {$user->username}
";
echo "
Your usertype is {$user->usertype} which ...