我的问题如下.我需要一个类作为Web系统中数据库连接的单点,因此避免让一个用户有两个打开的连接.我需要尽可能优化它,它应该管理系统中的每个事务.换句话说,只有该类应该能够实例化DAO.为了使它更好,它还应该使用连接池!我该怎么办?
快问.在使用SelectOneMenu之前,我没有想到这一点.这是我的代码.
<h:outputLabel for="listaRegiones" value="Región: " />
<p:selectOneMenu id="listaRegiones" value="#{nuevaProvincia.regionSelect}" required="true">
<f:selectItems value="#{nuevaProvincia.regiones}" />
</p:selectOneMenu>
<p:message for="listaRegiones" />
Run Code Online (Sandbox Code Playgroud)
这是我的支持豆.
@ManagedBean(name="nuevaProvincia")
@ViewScoped
public class nuevaProvincia implements Serializable {
public static final long serialVersionUID = 1L;
public nuevaProvincia() throws DAOException {
this.provincia = new Provincia();
this.regiones = new ArrayList<SelectItem>();
ArrayList<Region> regs = new ArrayList<Region>();
try
{
regs = Region.obtenerRegiones();
}
catch(DAOException e)
{
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, "Hubo un error: "+e.getMessage(), "Hubo un error: "+e.getMessage()));
}
if(regs.size()>0)
{
for(Region r : regs)
{
SelectItem …Run Code Online (Sandbox Code Playgroud) 每当我使用带有Doctrine ORM(2.3,PHP> 5.4)的ArrayCollection,并将对象值与集合中的键相关联时(例如使用该set方法时),值就会正确存储在数据库中.但是当我想从实体中检索集合时,不会检索密钥,而是使用数字索引.
例如,如果我有以下类:
/** @Entity */
class MyEntity
{
/** @OneToMany(targetEntity="MyOtherEntity", mappedBy="mainEntity") */
private $myArray;
public function __construct()
{
$this->myArray = new ArrayCollection();
}
public function addOtherEntity($key, $value)
{
$this->myArray->set($key, $value);
}
...
}
/** @Entity */
class MyOtherEntity
{
/** @ManyToOne(targetEntity="MyEntity", inversedBy="myArray") */
private $mainEntity;
...
}
Run Code Online (Sandbox Code Playgroud)
该set方法可以正常工作,但是当我检索信息时,密钥$myArray就消失了.
如何让ORM正确记住密钥?先谢谢你了.
在SSIS ETL转换中,我正在尝试加载某个.xls文件.我有几个相同的模式具有相似的模式,并且它们都正常工作.但是,这一个文件抛出"外部表不是预期的格式"错误.这是我尝试过的:
但更奇怪的是,如果我在Excel中加载SSIS时将文件保持打开状态,文件会正确加载.作为附加信息:
还有什么可以使这个错误触发?
编辑:现在我尝试设置ADO.NET源和OLEDB源来打开.xls文件.ADO.NET无法"从列中检索信息",OLEDB将其连接关闭.也许有办法知道excel文件的读取何时失败?
我也尝试过一些非常棘手的事情:我查看了活动遮阳板并注意到有一些错误,所以我做了一个快速的谷歌搜索并修复了它.它与SSIS相关联,但修复它并没有解决错误.
我必须构建一个允许输入非常简单的工资单的模块.表示这个的类是PayStub和Detail,它们是POPO和持久性的.而且,Details必须与s进行平衡,Fees又是属于Tariff类的类.因此,Detail有关于该Fee付款的信息.
为了使事情稍微复杂一点,Fee用户必须支付的费用直接取决于EducationLevel所Enrolment拥有的,属于a的Student,也属于a Person.
该PayStub有:
并且Detail:
该Fee有:
属于一个Tariff类:
当我构建表单时,整个问题就出现了.
PayStubType:
class PayStubType extends AbstractType
{
//I need to pass the years and the DAOs because I need to use them later
public function …Run Code Online (Sandbox Code Playgroud) 我目前正在使用 Symfony2 for PHP 和 SpraedPDFGeneratorBundle,它使用 Flying Saucer 生成 PDF。
我需要让用户输入起始页码来打印带有页码的表单。如果我做一些简单的事情
@page {
counter-increment: page 5;
...
@top-right {
content: counter(page);
};
}
Run Code Online (Sandbox Code Playgroud)
生成的 PDF 不会将每页增加 5。我这样做是为了测试功能,因为预期的代码是
@page {
...
@top-right {
content: counter(page);
};
}
@page:first {
counter-increment: page {{ startingPage-1 }}; /* The last part is Twig code for printing the starting page dynamically */
}
Run Code Online (Sandbox Code Playgroud)
为什么会发生这种情况?
我是一个使用JIRA的新手,我不知道为什么会这样.最近,每当我将问题标记为"完成"时,系统将不会因为"已关闭"而更新,而是将其保持为"未解决".为什么会这样?我不知道我必须提供什么信息来解决这个问题,除了我正在使用JIRA 6.1.3,自托管,没有额外的插件.
我正在使用JSF和RichFaces 4.我有一个巨大的形式,我必须分成几个面板.但是当我这样做时,我会收到警告.
例如,这使它显示警告:
<h:form>
<rich:tabPanel>
<rich:tab>
//Form elements go here
</rich:tab>
</rich:tabPanel>
</h:form>
Run Code Online (Sandbox Code Playgroud)
我该如何避免呢?
我正在尝试创建一个基本的fieldset模板.我有的是这个:
fieldset.html.twig
{% form_theme form _self %}
{% block form_row %}
<fieldset>
<legend></legend>
{{ form_row(form) }}
</fieldset>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
FieldsetType.php
class FieldsetType extends AbstractType
{
public function __construct($tituloFieldset="")
{
$this->titulo = $tituloFieldset;
}
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'attr' => array(
'title'=>$this->titulo
),
'mapped'=>false
));
}
public function getParent()
{
return 'form';
}
public function getName()
{
return 'fieldset';
}
private $titulo;
}
Run Code Online (Sandbox Code Playgroud)
目前的用法
$builder->add('nestedform', new FieldsetType('legend'));
Run Code Online (Sandbox Code Playgroud)
我已经尝试了所有方法:将标题添加为标签(没有字段渲染的额外标签),模板化整个表单(在这种情况下我不能添加额外的字段集),等等.
我该怎么办?
这是最重要的最佳实践问题。
假设我有一个表格:
<form action="self.php" method="POST">
<input type="text" name="aA" />
<input type="text" name="aB" />
<input type="text" name="aC" />
</form>
Run Code Online (Sandbox Code Playgroud)
以及PHP中的相应类:
class A
{
public function getA(){
return $this->a;
}
public function setA($a){
$this->a = $a;
}
public function getB(){
return $this->b;
}
public function setB($b){
$this->b = $b;
}
public function getC(){
return $this->c;
}
public function setC($c){
$this->c = $c;
}
private $a;
private $b;
private $c;
}
Run Code Online (Sandbox Code Playgroud)
而且我设法以某种方式从表单发送数据。现在,我需要将表单数据转换为A的实例。
我当前正在执行以下操作:
abstract class AStrategy {
public function doMapping(){
$a = new …Run Code Online (Sandbox Code Playgroud) php ×5
symfony ×3
forms ×2
jsf ×2
oop ×2
css ×1
dao ×1
doctrine-orm ×1
etl ×1
excel ×1
fieldset ×1
genericdao ×1
java ×1
jdbc ×1
jira ×1
oledb ×1
orm ×1
primefaces ×1
richfaces ×1
ssis ×1
symfony-2.3 ×1
updatemodel ×1