Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Стартап Помощь в изучении языка Java

Так мало? Я думал, что бы въехать в яву нужен 1-2 месяца.

Если есть много свободного времени и еще больше желания - вполне можно справиться за половину месяца.
Этого хватит, чтобы написать простенький плагин или приложение.
А вот такие тонкости, как отличия между HashSet, TreeSet LinkedHashSet, работа с ClassLoader и рефлексиями, Оптимальные варианты чтения потока (stream), многопоточные методы и синхронизация - это все, конечно, важно и приходит с опытом. На усвоение таких моментов в java придется потратить год (минимум).
Кстати, больше всего информации дают JavaDoc для необходимых классов и гугление по форумам типа stackoverflow.com. Намного больше, чем представленная в этой теме литература.
 
Если есть много свободного времени и еще больше желания - вполне можно справиться за половину месяца.
Этого хватит, чтобы написать простенький плагин или приложение.
А вот такие тонкости, как отличия между HashSet, TreeSet LinkedHashSet, работа с ClassLoader и рефлексиями, Оптимальные варианты чтения потока (stream), многопоточные методы и синхронизация - это все, конечно, важно и приходит с опытом. На усвоение таких моментов в java придется потратить год (минимум).
Кстати, больше всего информации дают JavaDoc для необходимых классов и гугление по форумам типа stackoverflow.com. Намного больше, чем представленная в этой теме литература.
Ну вроде как и желание имеется уже давно, да и время появилось. 4 дня в неделю свободен полностью и 3 только вечером пару часов. Ну что же, спасибо будем пробовать :)
Начал Шилдта читать, чуть не уснул :D
 
Ну вроде как и желание имеется уже давно, да и время появилось. 4 дня в неделю свободен полностью и 3 только вечером пару часов. Ну что же, спасибо будем пробовать :)
Начал Шилдта читать, чуть не уснул :D

Ты думал, что это как сказку читать? :D. Я вот, к примеру, Шилдта не читал, а читал Философию Java, т.к. c++ знал к тому моменту. Только в книге есть некоторые моменты-плюшки, которые без прочтения не сразу найдешь.
 
Взялся за чтение книги "Герберт Шилдт - Полный справочник по Java SE 6" сто страниц прошёл уже. Вроде могу уже написать простенькие программы, как в примере в книжке выводящие всякий текст.:) До этого момента всё казалось простым и понятным. Но, дошёл до побитовых операций, и они для меня стали, как .. всякие синусы в школе.. вроде понятны, но какие то ужаснооооо неудобные, и на данном этапе я вообще не понимаю для чего такие могут пригодится.:) Вопрос: это нормально?) Вопрос #2: часто ли они используются в написании плагинов и какие преимущества дают?
 
Взялся за чтение книги "Герберт Шилдт - Полный справочник по Java SE 6" сто страниц прошёл уже. Вроде могу уже написать простенькие программы, как в примере в книжке выводящие всякий текст.:) До этого момента всё казалось простым и понятным. Но, дошёл до побитовых операций, и они для меня стали, как .. всякие синусы в школе.. вроде понятны, но какие то ужаснооооо неудобные, и на данном этапе я вообще не понимаю для чего такие могут пригодится.:) Вопрос: это нормально?) Вопрос #2: часто ли они используются в написании плагинов и какие преимущества дают?

Побитовые операции ( & | << >> ~ ) используются очень редко.
В основном для поиска и формирования бинарной информации, например в криптографии.
Я не встречал их ни в одном плагине.
Пропускай.
 
У меня получится рисовать елементы посредством Java библиотек?
Мне нужно нарисовать свой графический елемент который будет открываться по даблклику на книгу.

З.Ы. благодарен за любую помощь!
 
Побитовые операции ( & | << >> ~ ) используются очень редко.
В основном для поиска и формирования бинарной информации, например в криптографии.
Я не встречал их ни в одном плагине.
Пропускай.

Ты что! (getBlockX()>>4) - это же один из способов получения координаты чанка
 
Ты что! (getBlockX()>>4) - это же один из способов получения координаты чанка

Я бы использовал getBlockX()/16
Хотя если подумать, то битами действительно проще высчитать позицию блока в чанке:
cx - позиция чанка, bx - позиция блока в чанке
x = cx<<4|bx
x = cx*16+bx

У меня получится рисовать елементы посредством Java библиотек?
Мне нужно нарисовать свой графический елемент который будет открываться по даблклику на книгу.

З.Ы. благодарен за любую помощь!

советую попробовать GUI API mod
В любом случае, без модов не обойтись
 
Есть ли такие умники которые пытались перекомпилить библиотеки Bukkit?
 
Скачал исходники с гитхаба, изменил, откомпилировал
Чудно, круто, класс!
По мускулу вопрос, можно ли прогнать ResultSet через какой форИч что-бы получить все столбцы?

и

Код:
private String connmsql(String query, Boolean execut){
              String res="";
              Connection connection;
                try {
                    // Название драйвера
                    String driverName = "com.mysql.jdbc.Driver";
 
                    Class.forName(driverName);
 
                    // Create a connection to the database
                    String serverName = "localhost";
                    String mydatabase = "donateshop";
                    String url = "jdbc:mysql://" + serverName + "/" + mydatabase;
                    String username = "root";
                    String password = "root";
 
                    connection = DriverManager.getConnection(url, username, password);
               
                    Statement stmt = connection.createStatement();
                    if(execut){
                        ResultSet rs = stmt.executeQuery(query);
                        String dbtime;
                        while (rs.next()) {
                            res = rs.getString(1);
                            System.out.println(res);
                        }
                    }
                    else
                        stmt.executeUpdate(query);
 
                    connection.close();
                } // end try
                catch (ClassNotFoundException e) {
                    e.printStackTrace();
                    // Could not find the database driver
                } catch (SQLException e) {
                    e.printStackTrace();
                    // Could not connect to the database
                }
              return res;
private List<Integer> getBItems(String server){
              List<Integer> items=new ArrayList<Integer>();
              Connection connection;
              try {
                    // Название драйвера
                    String driverName = "com.mysql.jdbc.Driver";
 
                    Class.forName(driverName);
 
                    // Create a connection to the database
                    String serverName = "localhost";
                    String mydatabase = "donateshop";
                    String url = "jdbc:mysql://" + serverName + "/" + mydatabase;
                    String username = "root";
                    String password = "root";
 
                    connection = DriverManager.getConnection(url, username, password);
                 
                    Statement stmt = connection.createStatement();
                    ResultSet rs = stmt.executeQuery("SELECT * from `donateshopitem` where `server` = '"+server+"';");
                    String res;
                    while (rs.next()) {
                        items.add(rs.getInt(1));
                    }
 
                    connection.close();
                } // end try
                catch (ClassNotFoundException e) {
                    e.printStackTrace();
                    // Could not find the database driver
                } catch (SQLException e) {
                    e.printStackTrace();
                    // Could not connect to the database
                }
              return items;
          }
          }
помогите составить этот метод так что-бы получился 1, а не 2
 
Делай rs.getInt("Название колонки")
Не решает проблему.
А почему бы для начала не ознакомиться с документацией по данному классу, посмотреть примеры в интернете?
Ничего полезного не нашёл, в документации тоже.

У меня нарисовался 3й такой метод :(.
Мне нужен универсальный метод который будет обращаться к базе "и отвечать на все вопросы" =)

@Den_Abr, если добавить свич и работать в зависимости от входных параметров то пойдёт, но это не решает проблему с возвращаемого типа.
 
Не решает проблему.

Ничего полезного не нашёл, в документации тоже.

У меня нарисовался 3й такой метод :(.
Мне нужен универсальный метод который будет обращаться к базе "и отвечать на все вопросы" =)

@Den_Abr, если добавить свич и работать в зависимости от входных параметров то пойдёт, но это не решает проблему с возвращаемого типа.

Код:
            ResultSet result = ps2.executeQuery();
            while (result.next()) {
                String itemname = result.getString(config.itemname);
                String item = result.getString(config.item);
                String enchantments = result.getString(config.enchantments);
                String lore = result.getString(config.Lore);
                int amount = result.getInt(config.amount);
                int id = result.getInt("id");
            }
Вот например мой код для плагина выдачи вещей из бд. Что тебе нужно, я не пойму
 
Код:
            ResultSet result = ps2.executeQuery();
            while (result.next()) {
                String itemname = result.getString(config.itemname);
                String item = result.getString(config.item);
                String enchantments = result.getString(config.enchantments);
                String lore = result.getString(config.Lore);
                int amount = result.getInt(config.amount);
                int id = result.getInt("id");
            }
Вот например мой код для плагина выдачи вещей из бд. Что тебе нужно, я не пойму
У меня такой есть)
Я хочу создать один для всех запросов к БД, два потолок.
Метода.
 

Поделиться этой страницей

Назад
Верх