org.unlaxer.jaddress.JyuusyoJPDomaConfig Maven / Gradle / Ivy
package org.unlaxer.jaddress;
import java.nio.file.Path;
import javax.sql.DataSource;
import org.seasar.doma.jdbc.Config;
import org.seasar.doma.jdbc.SimpleDataSource;
import org.seasar.doma.jdbc.dialect.Dialect;
import org.seasar.doma.jdbc.dialect.SqliteDialect;
import org.seasar.doma.jdbc.tx.LocalTransactionDataSource;
import org.seasar.doma.jdbc.tx.LocalTransactionManager;
import org.seasar.doma.jdbc.tx.TransactionManager;
public class JyuusyoJPDomaConfig implements Config{
private Dialect dialect;
private LocalTransactionDataSource dataSource;
private TransactionManager transactionManager;
public JyuusyoJPDomaConfig() {
this(UserHomeContext.getPathWithFolderAndFile("jyuusyojp","zenkoku.sqlite3"));
}
public JyuusyoJPDomaConfig(Path pathToSqlite) {
super();
dialect = new SqliteDialect();
String dbUrl= "jdbc:sqlite:" + pathToSqlite.toString();
SimpleDataSource simpleDataSource = new SimpleDataSource();
simpleDataSource.setUrl(dbUrl);
dataSource = new LocalTransactionDataSource(simpleDataSource);
transactionManager = new LocalTransactionManager(
dataSource.getLocalTransaction(getJdbcLogger()));
}
@Override
public Dialect getDialect() {
return dialect;
}
public void setDialect(Dialect dialect) {
this.dialect = dialect;
}
@Override
public DataSource getDataSource() {
return dataSource;
}
public void setDataSource(DataSource dataSource) {
this.dataSource = new LocalTransactionDataSource(dataSource);
}
@Override
public TransactionManager getTransactionManager() {
return transactionManager;
}
} © 2015 - 2025 Weber Informatics LLC | Privacy Policy