本文整理汇总了Java中play.db.jpa.JPAApi.withTransaction方法的典型用法代码示例。如果您正苦于以下问题:Java JPAApi.withTransaction方法的具体用法?Java JPAApi.withTransaction怎么用?Java JPAApi.withTransaction使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类play.db.jpa.JPAApi
的用法示例。
在下文中一共展示了JPAApi.withTransaction方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: populaCidadaos
import play.db.jpa.JPAApi; //导入方法依赖的package包/类
private void populaCidadaos(JPAApi jpaAPI, CidadaoDAO dao, String adminEmail, Integer numeroDeCidadaos) {
Logger.info("Populando cidadãos.");
jpaAPI.withTransaction(() -> {
Cidadao admin = dao.findByLogin(adminEmail);
if (admin == null) {
Cidadao cidadao = new Cidadao("Governo Federal", adminEmail);
cidadao.setFuncionario(true);
cidadao.setMinisterioDeAfiliacao("Governo Federal");
admin = dao.saveAndUpdate(cidadao);
// Usuários para demonstração
for(int i = 0; i < numeroDeCidadaos; i++ ){
Cidadao cidadaoParaDemonstracao = new Cidadao("Anônimo", String.format("cidadao_%[email protected]", i));
cidadaoParaDemonstracao.setUrlDaFoto("http://www.gravatar.com/avatar/" + cidadaoParaDemonstracao.getLogin().hashCode()
+ "?f=y&d=retro");
cidadaos.add(dao.saveAndUpdate(cidadaoParaDemonstracao).getId());
}
Logger.info(numeroDeCidadaos + " cidadãos mais o admin cadastrados.");
} else {
Logger.info("Admin já cadastrado, assumimos que já temos usuários");
}
});
}
示例2: limpaBancoParaTestes
import play.db.jpa.JPAApi; //导入方法依赖的package包/类
@Before
public void limpaBancoParaTestes() {
CidadaoDAO cidadaoDAO = app.injector().instanceOf(CidadaoDAO.class);
Configuration configuration = app.injector().instanceOf(Configuration.class);
JPAApi jpaAPI = app.injector().instanceOf(JPAApi.class);
jpaAPI.withTransaction(() -> {
String adminEmail = configuration.getString(Cidadao.ADMIN_EMAIL);
Cidadao cidadao = cidadaoDAO.findByLogin(adminEmail);
cidadao.setIniciativasAcompanhadas(new HashSet<>());
});
Cidade cidadeTeste = new Cidade(CIDADE_TESTE, "Pasárgada", "PB", 1f, 1f, 1f, 1f, 1000L, 1f, 1f, 0f);
Iniciativa iniciativaTeste = new Iniciativa(INICIATIVA_TESTE, 2015, "iniciativa para melhorar condições da cidade", "programa do governo federal", "area de atuação", "fonte", "concedente", "status", false, 1000f, 1000f, new Date(), new Date(), new Date());
cidadeTeste.addIniciativa(iniciativaTeste, new Date(), false);
CidadeDAO cidadeDAO = app.injector().instanceOf(CidadeDAO.class);
jpaAPI.withTransaction(() ->{
if(cidadeDAO.find(-1L) == null){
cidadeDAO.save(cidadeTeste);
}
});
}
示例3: limpaBancoDepoisDeTestes
import play.db.jpa.JPAApi; //导入方法依赖的package包/类
@After
public void limpaBancoDepoisDeTestes() {
JPAApi jpaAPI = app.injector().instanceOf(JPAApi.class);
CidadeDAO cidadeDAO = app.injector().instanceOf(CidadeDAO.class);
IniciativaDAO iniciativaDAO = app.injector().instanceOf(IniciativaDAO.class);
jpaAPI.withTransaction(() ->{
if(cidadeDAO.find(-1L) != null){
cidadeDAO.remove(cidadeDAO.find(-1L));
}
if(iniciativaDAO.find(-1L) != null){
iniciativaDAO.remove(iniciativaDAO.find(-1L));
}
});
}
示例4: limpaBancoParaTestes
import play.db.jpa.JPAApi; //导入方法依赖的package包/类
@Before
public void limpaBancoParaTestes() {
JPAApi jpaAPI = app.injector().instanceOf(JPAApi.class);
Cidade cidadeTeste = new Cidade(CIDADE_TESTE, "Pasárgada", "PB", 1f, 1f, 1f, 1f, 1000L, 1f, 1f, 0f);
Iniciativa iniciativaTeste = new Iniciativa(INICIATIVA_TESTE, 2015, "iniciativa para melhorar condições da cidade", "programa do governo federal", "area de atuação", "fonte", "concedente", "status", false, 1000f, 1000f, new Date(), new Date(), new Date());
cidadeTeste.addIniciativa(iniciativaTeste, new Date(), false);
CidadeDAO cidadeDAO = app.injector().instanceOf(CidadeDAO.class);
jpaAPI.withTransaction(() ->{
if(cidadeDAO.find(-1L) == null){
cidadeDAO.save(cidadeTeste);
}
});
}
示例5: limpaBancoAposTeste
import play.db.jpa.JPAApi; //导入方法依赖的package包/类
@After
public void limpaBancoAposTeste() {
IniciativaDAO daoIniciativa = app.injector().instanceOf(IniciativaDAO.class);
OpiniaoDAO daoOpiniao = app.injector().instanceOf(OpiniaoDAO.class);
JPAApi jpaAPI = app.injector().instanceOf(JPAApi.class);
jpaAPI.withTransaction(() -> {
Iniciativa i = daoIniciativa.find(iniciativaUsada);
for (UUID uuid : uuidDeOpinioesPraRemover) {
Opiniao paraRemover = new Opiniao();
paraRemover.setId(uuid);
i.removeOpiniao(paraRemover);
daoOpiniao.delete(daoOpiniao.find(uuid));
}
daoIniciativa.save(i);
});
desautenticaAdmin();
CidadeDAO cidadeDAO = app.injector().instanceOf(CidadeDAO.class);
IniciativaDAO iniciativaDAO = app.injector().instanceOf(IniciativaDAO.class);
jpaAPI.withTransaction(() ->{
if(cidadeDAO.find(-1L) != null){
cidadeDAO.remove(cidadeDAO.find(-1L));
}
if(iniciativaDAO.find(-1L) != null){
iniciativaDAO.remove(iniciativaDAO.find(-1L));
}
});
}
示例6: tearDown
import play.db.jpa.JPAApi; //导入方法依赖的package包/类
@After
public void tearDown() {
IniciativaDAO daoIniciativa = app.injector().instanceOf(IniciativaDAO.class);
JPAApi jpaAPI = app.injector().instanceOf(JPAApi.class);
jpaAPI.withTransaction(() -> {
Iniciativa i = daoIniciativa.find(iniciativaExemplo);
for (UUID uuid : uuidDeOpinioesPraRemover) {
Opiniao paraRemover = new Opiniao();
paraRemover.setId(uuid);
i.removeOpiniao(paraRemover);
}
daoIniciativa.save(i);
});
uuidDeOpinioesPraRemover.clear();
desautenticaAdmin();
CidadeDAO cidadeDAO = app.injector().instanceOf(CidadeDAO.class);
IniciativaDAO iniciativaDAO = app.injector().instanceOf(IniciativaDAO.class);
jpaAPI.withTransaction(() ->{
if(cidadeDAO.find(-1L) != null){
cidadeDAO.remove(cidadeDAO.find(-1L));
}
if(iniciativaDAO.find(-1L) != null){
iniciativaDAO.remove(iniciativaDAO.find(-1L));
}
});
}
示例7: populaCidades
import play.db.jpa.JPAApi; //导入方法依赖的package包/类
private void populaCidades(JPAApi jpaAPI) {
List<Cidade> cidades = jpaAPI.withTransaction(entityManager -> {
return entityManager.createQuery("FROM Cidade", Cidade.class).setMaxResults(2).getResultList();
});
if (!cidades.isEmpty()) {
Logger.info("BD já populado com cidades, vizinhos e diferentices");
return;
}
Logger.info("Populando BD com cidades, vizinhos e diferentices");
jpaAPI.withTransaction(() -> {
try {
String dataPath = dataDir + "/dados2010.csv";
Logger.info("Cidades vêm de " + dataPath);
ResultSet resultSet = new Csv().read(dataPath, null, "utf-8");
int count = 0;
while (resultSet.next()) {
Cidade cidade = new Cidade(
resultSet.getLong(2),
resultSet.getString(3),
resultSet.getString(4),
resultSet.getFloat(5),
resultSet.getFloat(6),
resultSet.getFloat(7),
resultSet.getFloat(8),
resultSet.getLong(9),
resultSet.getFloat(10),
resultSet.getFloat(11),
resultSet.getFloat(12));
jpaAPI.em().persist(cidade);
count++;
if (count % 1000 == 0) {
Logger.info("Inseri " + count + " cidades.");
}
}
populaVizinhos(jpaAPI);
} catch (SQLException e) {
Logger.error(e.getMessage(), e);
}
});
Logger.info("Populou BD com cidades, vizinhos e diferentices.");
}