将ORMLite直接连接到Android上的MYSQL

时间:2018-08-11 13:23:26

标签: java android mysql jdbc ormlite

我正尝试直接连接到db4free上的MYSQL数据库,在这里安全/可靠性无关紧要,它对于一个最低限度可行的产品应该足够好,以后可以从头开始完全重建它,这就是为什么我试图以此方式进行连接。这只是某种概念应用。

对于其中一项要求,我们需要一个服务器数据库。

我正在使用与ORMLite-jdbc配对的ORMLite-core,并在Android Studio中尝试以下代码:

public class DatabaseHelper {

private ConnectionSource connectionSource;
private Dao<User, Integer> userDao;
private Dao<Settings, Integer> settingsDao;
private Dao<Prize, Integer> itemDao;
private Dao<CulturalCenter, Integer> localDao;
private Dao<Event, Integer> eventDao;

private static final DatabaseHelper dbHelper = new DatabaseHelper();

public static DatabaseHelper getInstance() {
    return dbHelper;
}


private DatabaseHelper() {
    try {
        this.connectionSource = new JdbcConnectionSource("jdbc:mysql://85.10.205.173/mydb", "myacc", "mypass");

        Log.d("Connection", "Do we reach here?" + connectionSource.getDatabaseType().getDatabaseName());

        /**
         * DAOS
         */
        this.userDao = DaoManager.createDao(connectionSource, User.class);
        TableUtils.createTable(connectionSource, User.class);
   } catch (SQLException e) {
        e.printStackTrace();
    }
}

public Dao<User, Integer> getUserDao() {
    return userDao;
}

这在TableUtils上崩溃,并显示以下错误:

  

D /连接:我们到达这里了吗?MySQL   W / art:暂停所有线程花费:8.202ms   I / art:后台局部并发标记扫描GC已释放5335(349KB)AllocSpace对象,4(110KB)LOS对象,40%空闲,3MB / 5MB,已暂停9.637ms,总计33.576ms   I / TableUtils:创建表“用户”   W / System.err:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链接失败   W / System.err:发送到服务器的最后一个数据包是在0毫秒前。

我无法像这样进行连接,但是我可以使用代码中提供的凭据在Windows pc上的MySQL工作台中正常连接。我已经在Google上搜索了很多,但是我在Android上使用数据库的工作仍然非常缺乏经验,并且到目前为止找不到任何可行的解决方案,我将不胜感激!

谢谢!

0 个答案:

没有答案