当我直接在我的数据库(SQL Server)中进行更改时,例如向表中添加新行,更改不会反映在我的 Web 应用程序(尝试刷新浏览器)中,直到我再次运行我的应用程序(在 intellij 中使用 tomcat 插件)。
如果我从我的应用程序中添加一行,我可以在我的数据库管理员上立即看到它,但反之则行不通。
这是我的 persitence.xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="Frutemu" transaction-type="RESOURCE_LOCAL">
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
<jta-data-source>openjpa</jta-data-source>
<class>model2.AnalisisProcesosEntity</class>
<class>model2.AnalisisProcesosDetalleEntity</class>
<class>model2.AnalisisProcesosPesosEntity</class>
<class>model2.AnalisisRecepcionesEntity</class>
<class>model2.AnalisisRecepcionesDetallesEntity</class>
<class>model2.CalibresEntity</class>
<class>model2.CalidadDefectosEntity</class>
<class>model2.CalidadesEntity</class>
<class>model2.CamarasEntity</class>
<class>model2.DespachosEntity</class>
<class>model2.DespachosDetalleEntity</class>
<class>model2.EspeciesEntity</class>
<class>model2.ExportadorasEntity</class>
<class>model2.InspeccionesEntity</class>
<class>model2.InspeccionesDespachosEntity</class>
<class>model2.InspeccionesDespachosDetalleEntity</class>
<class>model2.InspeccionesDetalleEntity</class>
<class>model2.InspeccionesPalletsEntity</class>
<class>model2.InspeccionesPalletsDetalleEntity</class>
<class>model2.InspeccionesResultadoEntity</class>
<class>model2.PalletsEntity</class>
<class>model2.PalletsDetalleEntity</class>
<class>model2.PlantasEntity</class>
<class>model2.PlantasEmbalajeEntity</class>
<class>model2.ProcesosEntity</class>
<class>model2.ProcesosDetalleEntity</class>
<class>model2.ProductoresEntity</class>
<class>model2.ProductoresExportadorasEntity</class>
<class>model2.RecepcionesEntity</class>
<class>model2.RecepcionesDetalleEntity</class>
<class>model2.SysdiagramsEntity</class>
<class>model2.TemporadasEntity</class>
<class>model2.TiposEmbalajeEntity</class>
<class>model2.TiposProductoEntity</class>
<class>model2.UsuariosEntity</class>
<class>model2.VariedadesEntity</class>
<class>model2.VistaProcesosEntity</class>
<class>model2.VistaRecepcionesEntity</class>
<properties>
<property name="openjpa.ConnectionDriverName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
<property name="openjpa.ConnectionURL" value="jdbc:sqlserver://localhost:55334;databaseName=Frutemu;integratedSecurity=true"/>
<property name="openjpa.ConnectionUserName" value=""/>
<property name="openjpa.ConnectionPassword" value=""/>
<property name="openjpa.jdbc.SynchronizeMappings"
value="buildSchema(SchemaAction='add,OpenJPATables=true',ForeignKeys=true)"/>
<!--property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema(SchemaAction='add,OpenJPATables=true',ForeignKeys=true)"/-->
<property name="openjpa.DynamicEnhancementAgent" value="true"/>
<property name="openjpa.Log" value="DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=ERROR"/>
<property name="openjpa.ConnectionFactoryProperties" value="PrettyPrint=true, PrettyPrintLineLength=72, PrintParameters=true, MaxActive=10, MaxIdle=5, MinIdle=2, MaxWait=60000"/>
<property name="openjpa.jdbc.DBDictionary" value="org.apache.openjpa.jdbc.sql.MySQLDictionary"/>
<property name="openjpa.DataCache" value="true"/>
<property name="openjpa.QueryCache" value="true"/>
</properties>
</persistence-unit>
</persistence>
这是我从中获取数据以显示在视图中的 bean:
@ManagedBean(name = "recepciones")
@ViewScoped
public class RecepcionesBean {
private List<VistaRecepcionesEntity> recepciones;
@PostConstruct
public void init(){
recepciones=new ArrayList<VistaRecepcionesEntity>();
recepciones= RecepcionesDAO.getALL();
}
public List<VistaRecepcionesEntity> getRecepciones() {
return recepciones;
}
public void setRecepciones(List<VistaRecepcionesEntity> recepciones) {
this.recepciones = recepciones;
}
}
}